Aktion bei bestimmter Ausgabelautstärke

s3rvus

Grünschnabel
Servus,
ich bin auf der suche nach nem recht außergewöhnlichen Tool:

Es soll einen bestimmten Befehl ausführen, sobald die Ausgabelautstärke unter ein bestimmtes Level sinkt / keine Ausgabe vorhanden ist.
Also wenn z.B. MTV läuft, dann soll jeweils zwischen den Clips was passieren.

Vielleicht hat jemand einen Tipp, ob es sowas gibt.
Wenn nicht, vielleicht eine Idee, wie man an sowas rangehen würde, wenn man es selber programmiert.

Vielen Dank!
s3rvus
 

chmee

verstaubtes inventar
Premium-User
Als Programm wäre es doch sehr speziell..

In jeder "üblichen" Programmiersprache sollte sich so etwas realisieren lassen. Du musst den Audioeingang auslesen, und Stille müsste man irgendwie definieren, zB über eine Zeit von 3 Sekunden darf die Summe alle Bytewerte einen bestimmten Betrag nicht überschreiten, simpel gesagt darf sich der Levelmeter über eine bestimmte Dauer nicht bewegen. Wenn dieser Fall eintritt, soll dann eben etwas Anderes passieren :) Zu überlegen ist, ob Deine Aktion dann auch direkt in Deinem Programm realisiert wird oder ein Aufruf einer anderen Software sinnvoller ist.

Links:
http://groups.google.com/group/micr...4275737?lnk=gst&q=peak+meter#edd6a68054275737
http://www.codeproject.com/KB/audio-video/PeakMeterCS.aspx

mfg chmee
 

s3rvus

Grünschnabel
hm ok danke, auch für die links!
nur habe ich keine ahnung, wie ich den audiokanal auslese. ich kann mir vorstellen, dass dies speziell in windows sehr schwierig ist, oder?
mal angenommen ich machs in visual c++ oder codegear c++, gibts da dann ein steuerelement, das ich einbauen kann, oder wie würde man da am besten vorgehen?
thx,
s3rvus
 

chmee

verstaubtes inventar
Premium-User
Für C++ kann ich es Dir nicht sagen, aber in C# und VB.Net gibt es mit Sicherheit (wie oben im Codeproject-Link) Snippets und auch Vereinfachungen, um an den Stream heranzukommen und ihn auszulesen.

Ich verschiebe den Beitrag mal in den Codingbereich Allgemein, da ist er besser aufgehoben

mfg chmee

*Nachtrag : Siehe Codeproject-Link. Auslesen, was im Levelmeter passiert, wenn der eine gewisse Zeit unter zB -50dB bleibt, ist es wohl Stille :)
 

s3rvus

Grünschnabel
hm, der peakreader funktioniert bei mir irgendwie nicht.
er zeigt ständig regelmäßige ausschläge an, auch wenn ich alles auf stumm stelle.
bei der wiedergabe von musik sind keine veränderten ausschläge festzustellen...
edit:
hat wer von euch mal den peakreader erfolgreich getestet oder sonst noch irgendeine idee?
wär echt super, wenn das irgendwie gehen würde.


edit: ok, hab jetzt was gefunden: http://www.audiosoundrecorder.com/
hier konnte ich vb-code einfügen und mein vorhaben verwirklichen.
 
Zuletzt bearbeitet: