Forum: PC-Programmierung Sound Programmierung


von Holger (Gast)


Lesenswert?

Hallo liebe Gemeinde,

ich benötige für eine in C geschriebene Applikation kurze "beeps" mit 
einer Frequenz zwischen 1 und 2KHz, einer Beepdauer von etwa 30ms und 
einstellbarer Lautstärke. Die Beeps müssen einzeln triggerbar sein und 
im worst case folgt Beep auf Beep ohne Pause. Das Ganze soll über die 
Soundkarte ausgegeben werden.
Die Beschäftigung mit "direct sound" möchte ich nach Möglichkeit 
umgehen. Kennt jemand von euch eine DLL mit der man das Problem ohne 
jeglichen Aufwand erschlagen kann.
Danke für eure Hilfe

Holger

von Thomas E. (thomase)


Lesenswert?

Holger schrieb:
> Kennt jemand von euch eine DLL mit der man das Problem ohne
> jeglichen Aufwand erschlagen kann.
Ja.
kernel32.dll

mfg.

von Holger (Gast)


Lesenswert?

Hallo Thomas,

du meinst Beep(freq, duration)???
Läuft der nicht über die Systemspeaker? Wie kann man da die Lautstärke 
ändern? Ist der Beep denn auch quasi "echtzeitfähig"? Die App läuft 
derzeit unter XP?

Holger

von Thomas E. (thomase)


Lesenswert?

Holger schrieb:
> Systemspeaker?

Holger schrieb:
> Die App läuft derzeit unter XP?
Standardmässig über die Soundkarte geht das erst ab Windows7.

http://msdn.microsoft.com/en-us/library/windows/desktop/ms679277(v=vs.85).aspx

mfg.

von Holger (Gast)


Lesenswert?

So hatte ich es auch in Erinnerung und deshalb ist diese sicherlich 
einfachste Variante leider keine Lösung.


Holger

von Vlad T. (vlad_tepesch)


Lesenswert?

in oben verlinkten Beitrag wird eine MessageBeep Funktion erwähnt.
Warum nicht einfach die nehmen. Dann bekommt der Benutzer auch die Töne 
zuhören, die er selbst für die unterschiedlichen Fälle definiert hat.

http://msdn.microsoft.com/en-us/library/windows/desktop/ms680356%28v=vs.85%29.aspx

von Vlad T. (vlad_tepesch)


Lesenswert?

Holger schrieb:
> Ist der Beep denn auch quasi "echtzeitfähig"?

definiere Echtzeit.

Windows XP ist auch kein Echtzeitbetriebssystem

von Holger (Gast)


Lesenswert?

MessageBeep habe ich mal kurz getestet. Es ist einfach zu langsam. Es 
wird offensichtlich der .wav File jedes mal neu geladen. Das kostet zu 
viel Zeit. Da muss dann doch eine andere Lösung her...

mfg Holger

von Sven B. (scummos)


Lesenswert?

Hier: http://doc.qt.digia.com/qt/qaudiooutput.html
Eine Minimallösung ist das zugegebenermaßen nicht gerade. ;)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.