P
Vielen Dank erst einmal.
@Lupus-SLE sagte in Kennt sich jemand mit OpenAL (oder mit Soundprogrammierung) aus?:
@Peter-Viehweger
Die wichtigsten Audioformate sind heutzutage AAC, MP3, FLAC. Auch, wenn diese lossy sind (bis auf FLAC), hört man doch keinen Unterschied.
Danke für die Information. Leider muss ich mir dann erst einmal eine Bibliothek laden, um die Daten auf PCM umzuwandeln. .wav hat den Vorteil, dass dieses (meistens) PCM enthält, sodass man dann einfach den Datenblock an OpenAL übergeben kann. Außerdem wird im User Manual .wav in Verbindung mit einer Funktion namens LoadWAV (oder so) verwendet, wobei ich es nicht geschafft habe, alut (was laut Google KI auch nicht mehr verwendet werden soll) zu erstellen bzw. einzubinden, sodass ich die Datei dann von Hand einlesen musste. Es geht auch nicht darum, Musik zu hören, dann könnte ich ja einfach den VLC mit exec oder CreateProcess im Hintergrund starten, sondern um die Verwendung von OpenAL. Also nur so zur Info, falls du das noch liest.
@Th69 sagte in Kennt sich jemand mit OpenAL (oder mit Soundprogrammierung) aus?:
Woher kommt denn die WAV-Datei? Hast du diese selbst erzeugt?
Das Knacken kommt, wenn diese WAV-Datei auf einem hohen Wert endet und dann abrupt beendet wird (wir hören es dann als Klick bzw. Knacken).
Ich habe mir sowohl einfach eine Datei aus dem Internet geladen und dann eine Menge über das Dateiformat gelernt, als auch einen Sinuston mit 0 und PI/2.0 als Offset erstellt, wobei Ersterer nicht knackte, Zweiterer dagegen schon.
Für 16-bit PCM gibt mir ChatGPT folgenden Code zum Fade-Out:
[...]
(also die eingeladene WAV-Datei ändern, bevor sie abgespielt wird)
Das habe ich in ähnlicher Weise versucht. Ich habe einfach den letzten Wert, z.B. 12345, ausgelesen und dann 12345 weitere Werte; 12344, 12343, ..., 1, 0; angehängt, was meine ich nichts geändert hat. Ich probiere es einmal aus, die letzten Werte wie gezeigt einfach gegen 0 zu faktorisieren.
@Lupus-SLE sagte in Kennt sich jemand mit OpenAL (oder mit Soundprogrammierung) aus?:
Die Werte gehen von 0 bis 255.
Dies ist der Standard (CD-Qualität). Die Werte gehen von -32.768 bis +32.767.
Ich erinnere mich dunkel daran, mit 16-Bit unsigned gearbeitet zu haben.