GSM ist WAVE
Servus Leute!
GSM ist nichts Anderes als WAVE 16bit Mono 8.000 kHz.
Das einzigste was GSM von WAVE unterscheidet, ist dass GSM immer 16bit Mono 8.000 kHz ist, und daher keine Header-Informationen - wie bei WAVE-Files üblich - benötigt wird.
Wenn Ihr also euere Sounds auf WAV 16bit 8.000kHz Mono aufnimmt und die Header entfernt, dann habt ihr eine GSM Datei, und wenn ihr den Header wieder hinzufügt dann ne WAVE-File.
Ihr könnt das Ganze auch mit Unix-Tools bewerkstelligen!
Konvertiere deine WAVE-File mit dem Programm SOX unter Linux/Unix. Gib im Shell / Bash folgenden Befehl ein:
sox foo.wav -r 8000 foo.gsm resample -ql
Das Programm weiß anhand der .gsm Endung automatisch, dass es die WAVE-Header weglassen und nur die Nutzdaten schreiben soll.
Wenn du deine WAVE-File zuvor in Stereo aufgenommen hattest, dann solltest du nur einen Channel (rechts oder links) konvertieren, um ein Mono-Signal zu erstellen.
sox foo.wav -r 8000 -c1 foo.gsm resample -ql
Die besten Resulate erziehlst du, indem du deine WAV File in 16bit bei 8.000Hz und Mono aufnimmst. Dann kannst du den einfachen Befehl verwenden:
sox foo.wav foo.gsm
Das Ganze funktioniert natürlich auch mit anderen Soundprogrammen unter UNIX/Linux.
Grüße Michael.