Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Beep? (https://www.delphipraxis.net/209551-beep.html)

himitsu 20. Dez 2021 14:31

Beep?
 
Moin,

eigentlich kein großes Ding, aber dennoch bissl nervig.

Wie bringt man einen Piep aus dem PC raus?


Mein Problem sind wohl die Energiesparmodi der Geräte, oder irgendwie sowas.

* Bei kurzen Audiofiles (weniger als 2 Sekunden, geht der Anfang verloren.
* Je nachdem, wie lange vorher kein Ton war, fehlen eine halbe bis mehrere Sekunden, am Anfang.
* und oft gibt es ein hässliches Knacksen zu Beginn
* und öfters stockt es auch, innerhalb der ersten sekunden (kurze Aussätzer/Hänger) ... auch z.B. wenn über VLC die WAV abgespielt

* Letzteres merkt man nur bei längeren Audioausgaben ... Kurze Pieps fehlen halb oder gar komplett

Delphi-Quellcode:
// geht meistens (wenn Ton lang genug), aber ist hässlich
Windows.Beep(8000, 300);

// naja
Beep

// das Selbe
MessageBeep(MB_OK); // oder MB_ICONINFORMATION

// wenn noch nicht offen, dann geht ohne Sleep dei erste Ausgabe immer ganz verloren
if not geladen then MediaPlayer1.Open;
Sleep(750);
MediaPlayer1.Play;

// ..
PlaySound('C:\irgendwo\beep-07a.wav', 0, SND_FILENAME or SND_ASYNC {or SND_NODEFAULT} or SND_NOWAIT);

for var i := 0 to 10 do begin Winapi.Windows.Beep(8000, 3); Sleep(30); end;
PlaySound('beep_07a', 0, SND_RESOURCE or SND_ASYNC or SND_NODEFAULT or SND_NOWAIT);
Mein Problem ist ... wir haben einen RFID-Reader, der macht Piep beim Scan, bzw. man kann ihn auch softwareseitig Piepsen und Blinken lassen.
Ich hab aber auch Scanner, die geben nur über eine winzige blaue LED eine Rückmeldung ... die aber unpraktisch öfters durch die Hand verdeckt wird ... nun hätte ich gern den PC piepsen lassen, aber bringt nicht viel, wenn der Ton nicht aus dem Monitor raus kommt. (HDMI)

Rollo62 20. Dez 2021 17:31

AW: Beep?
 
Get es damit besser ?
Ist aber wahrscheinlich intern das Gleiche.

johndoe049 20. Dez 2021 17:45

AW: Beep?
 
sysutils.beep

Ist asynchron und sollte eigentlich Bios/UEFI für einen beep verwenden. Geht über den internen PC Lautsprecher. Ggf. nachrüsten, wenn nichts zu hören ist. Ist nicht schön der irgendwie so 80er Jahre mässig.

Kurze Töne über HDMI ist regelmässig schlecht zu implementieren. Da hängt zuviel Zeitverzögerung über die einzelnen Verbindungsstellen und der Signalextraktion von HDMI mit drinnen.

Der interne Lautsprecher knackt bei eingen PCs auch nur noch sehr kurz.

Kannst aber auch eine blind audio stream erzeugen und dann zur gewünschten Zeit das Audiosignal anpassen. Ist aber etwas aufwändiger.

Rollo62 20. Dez 2021 17:50

AW: Beep?
 
Eine Möglichkeit wäre vielleicht noch, mit Grijjy TextToSpeech
https://blog.grijjy.com/2017/01/09/c...ext-to-speech/
Delphi-Quellcode:
procedure TFormMain.FormCreate(Sender: TObject);
begin
  FTextToSpeech := TgoTextToSpeech.Create;
  FTextToSpeech.OnAvailable := TextToSpeechAvailable;
  FTextToSpeech.OnSpeechStarted := TextToSpeechStarted;
  FTextToSpeech.OnSpeechFinished := TextToSpeechFinished;
end;

...

procedure NeedABeep;
begin
  FTextToSpeech.Speak( 'Piep' ); // :-D
end;

himitsu 20. Dez 2021 19:13

AW: Beep?
 
Wenn ich schnell genug mehrmals Piepse, dann kommen die letzten Piepse schon halbwegs ordentlich raus, aber der/die ersten und zwischendurch fehlt oft einfach Alles/Vieles.

Und wieviel vom ersten hörbaren Pieps fehlt das ist auch unterschiedlich.


Eine Verzögerung wäre nicht schlimm, wenn man wenigstens etwas hören könnte,
weil wenn man eh nur bei weniger als die Hälfte der Beeps etwas hört, dann kann man es auch ganz weglassen.



Der interne PC-Piepser ist ja oftmals garnicht mehr vorhanden.
Wir hatten mal einen Treiber für einen Lexware-Drucker, der hatte über den PC-Lautsprecher noch eine Sprachausgabe im Win 3.1 ... gut, während der Ausgabe war dafür der komplette PC lahmgelegt, weil mit höchter Priorität.

johndoe049 20. Dez 2021 22:09

AW: Beep?
 
Zitat:

Zitat von himitsu (Beitrag 1499419)
Wenn ich schnell genug mehrmals Piepse, dann kommen die letzten Piepse schon halbwegs ordentlich raus, aber der/die ersten und zwischendurch fehlt oft einfach Alles/Vieles.

Und wieviel vom ersten hörbaren Pieps fehlt das ist auch unterschiedlich.


Eine Verzögerung wäre nicht schlimm, wenn man wenigstens etwas hören könnte,
weil wenn man eh nur bei weniger als die Hälfte der Beeps etwas hört, dann kann man es auch ganz weglassen.



Der interne PC-Piepser ist ja oftmals garnicht mehr vorhanden.
Wir hatten mal einen Treiber für einen Lexware-Drucker, der hatte über den PC-Lautsprecher noch eine Sprachausgabe im Win 3.1 ... gut, während der Ausgabe war dafür der komplette PC lahmgelegt, weil mit höchter Priorität.

Dann würde ich die Audioausgabe in einen eigenen Thread packen, der permanent ein Audiosignal als Steam mit Lautstärke 0 oder 1 und < 15 hz. ausgibt. Per Signal wird dann die Lautstärke und die hz. erhöht. Sollte eigentlich dann keine grossen Verzögerungen mehr ergeben, da du dann ja nur einen aktiven Audiostream veränderst und nicht erst neu startest.

Ich würde nur nicht unbedingt dann Hunde oder Katzen in der Nähe haben wollen. :)

Sinspin 21. Dez 2021 06:11

AW: Beep?
 
Selbst wenn mein PC (CPU) voll ausgelastet ist hat das keinen Einfluss auf die Audioausgabe. Wie schaut es bei anderen PC aus? Kommt der Beep da normal?
Was passiert in den Audioeinstellungen am PC? Da gibt es einen Audiotest, ist der auch komisch?

TiGü 21. Dez 2021 07:29

AW: Beep?
 
Zitat:

Zitat von johndoe049 (Beitrag 1499425)
Ich würde nur nicht unbedingt dann Hunde oder Katzen in der Nähe haben wollen. :)

Ist sicher, da die erst ab 65 bzw. 100 Hz anfangen mit dem Hörbereich.
Davon ab kann der Monitor, worüber das Biep erfolgen soll, eh keine 15 Hz wiedergeben.

https://www.planet-schule.de/wissens...iere-land.html

himitsu 21. Dez 2021 09:46

AW: Beep?
 
Ja, aber wenn auch nur der kleinste Muggs anfängt, dann klackt es quasi erstmal in der Leitung ... also dennoch manchmal zu hören, selbst wenn nur geringe Frequenz,
und dauerhaft Audio auszugeben, auch wenn nur insgesammt maximal 1 bis wenige 2-3 Minuten am Tag es piepst ... ich weiß nicht?

Wenn es läuft, dann läuft es, aber Zubeginn eines Tons klackt es manchmal, so als wenn man den Klinkenstecker erst reinsteckt, bzw. die Lautsprecher in die Steckdose steckt,
dann fehlt halt anfangs bis zu mehreren Sekunden lang der Ton, bzw. bei längeren Stückchen (gefühlt ab 3 sekunden) stockt es hörbar für weniger als 5 sekunden lang.

Also Alles in Allem für einen 1-Sekunden-Bestätigungspiep ergibt das meistens "nix zu hören, außer vielleicht manchmal noch die letzten paar Millisekunden davon.


Test aktuell auf einem größeren Dell-Schlepptop, mit Dockinstation an einem zu großen Monitor mit Displayport.
Eigentlich sollte der neue Touchscreen für die ErsatzBDE geliefert schon werden, aber keine Stunde nach bestellung hieß es von Cyberport (letzte Woche) kommt alles erst nächstes Jahr (Webshop sagte vorher alles im Lager oder direkt vor Ort im Shop).



Bis vor Kurzem lief noch ein uraltes Testgerät hier, der ersten Generation, so ein staubdicheter Industrietouchscreen für tausende Euro, mit Windows 7 Embedded, Singletouch (Windows 7 konnte nicht mehr) und im Metallgehäuse mit zu schwachem WLAN, inzwischen zu kleiner CPU, eigentlich zu wenig RAM und zu langsamen Flashspeicher,
aber mit integriertem RFID-Scanner mit seinem eigenen Hardwarepiepser. (die Neuen nun auch schon Windows 10, Multitouch, Fingerabdruck, Coronafiebermesser usw., aber für ein Gerät-lag-sinnlos-in-der-Ecke-also-für-uns-selber-als-Test+Stempelstation-genutzt-Getät nochmal tausende Euro ... neee, weil selbst die meißten Kunden es nicht nutzen ... hab eh einen alten MiniPC über, der ausgetauscht werden wird, also bloß noch ein Touchscreen dran und Pieps in die Software ... war eh schonmal als halber Wunsch so nebenbei mal geäußert worden, der Pieps)

johndoe049 21. Dez 2021 12:11

AW: Beep?
 
Displayport auf HDMI oder direkt angeschlossen?

Dell ist in der Hinsicht eine Krücke. Habe meinen Vostro 3000 nach nichtmal 3 Monaten verkauft.

Teste mal einen anderen PC oder versuche ein Video abzuspielen. Am besten eines ohne Sprachsynchronisierung oder eine Nachrichtensendung. Wenn da die Lippen nicht mit der Sprache übereinstimmen liegt es an der Hardware.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:54 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz