unsteiger
Anmeldungsdatum: 4. Juni 2013
Beiträge: 77
|
Hallo,
ich besitze noch Sprachnachrichten, die noch von einem alten Windows-Anrufbeantworter stammen.
Das war eine Software von Balloon und die Sprachnachrichten wurden mit der Endung *.BVD abgespeichert. Hier habe ich mal angelistet, was ich als Infos zu diesen Dateien ermitteln konnte:
Input #0, wav, from 'test.BVD':
Duration: 00:00:31.40, bitrate: 28 kb/s
Stream #0.0: Audio: adpcm_ms, 7200 Hz, mono, s16, 28 kb/s Versuche, diese Datei in ein anderes Format umzuwandeln, schlagen fehl.
Hier mal 2 Beispiele:
avconv -f s16le -ar 7.2k -ac 1 -i test.bvd test.wav
avconv -f s16be -ar 7.2k -ac 1 -i test.bvd test.wav Wie bekomme ich es hin, dass eine Umwandlung ein sinnvolles Ergebnis liefert?
Gruss, Jo
|
Thomas_Do
Moderator
Anmeldungsdatum: 24. November 2009
Beiträge: 8493
|
Geht vielleicht hiermit oder auch mit audacity (keine eigene Erfahrung).
|
Axel-Erfurt
Anmeldungsdatum: 18. Mai 2016
Beiträge: 1347
|
Microsoft_ADPCM versuche doch mal avconv -i original.BVD origiginal.wav
|
unsteiger
(Themenstarter)
Anmeldungsdatum: 4. Juni 2013
Beiträge: 77
|
Axel-Erfurt schrieb:
Microsoft_ADPCM versuche doch mal avconv -i original.BVD origiginal.wav
Klappt nicht. Ergebnis:
[adpcm_ms @ 0xb98ec0] invalid number of samples in packet
Error while decoding stream #0:0
[adpcm_ms @ 0xb98ec0] invalid number of samples in packet
Error while decoding stream #0:0
[adpcm_ms @ 0xb98ec0] invalid number of samples in packet
Error while decoding stream #0:0
|
Axel-Erfurt
Anmeldungsdatum: 18. Mai 2016
Beiträge: 1347
|
Kannst Du vielleicht ein kurzes Beispiel einer BVD Datei anhängen?
|
unsteiger
(Themenstarter)
Anmeldungsdatum: 4. Juni 2013
Beiträge: 77
|
|
unsteiger
(Themenstarter)
Anmeldungsdatum: 4. Juni 2013
Beiträge: 77
|
- 22D19F6C.BVD (24.1 KiB)
- Download 22D19F6C.BVD
|
Axel-Erfurt
Anmeldungsdatum: 18. Mai 2016
Beiträge: 1347
|
ffmpeg -i sagt zwar: | Input #0, wav, from '9000661-22D19F6C.BVD':
Duration: 00:00:06.84, bitrate: 28 kb/s
Stream #0:0: Audio: adpcm_ms ([2][0][0][0] / 0x0002), 7200 Hz, mono, s16, 28 kb/s
|
beim Konvertieren aber dann | Stream mapping:
Stream #0:0 -> #0:0 (adpcm_ms (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
[adpcm_ms @ 0x55b6e1e239e0] invalid number of samples in packet
Error while decoding stream #0:0: Invalid data found when processing input
|
sox: | sox FAIL formats: can't open input file `9000661-22D19F6C.BVD': format[Microsoft ADPCM]: expects wExtSize >= 4
|
|
unsteiger
(Themenstarter)
Anmeldungsdatum: 4. Juni 2013
Beiträge: 77
|
Ja Axel, diese Meldungen bekomme ich auch. Ok, Da mir die Dateien wichtig sind, setze ich (bis auf Widerruf) eine Belohnung von 40 Euro für den aus, der mir die Lösung bringt, dass ich diese Dateien
in ein normales MP3 Format konvertieren kann. Kein Schmu, ich halte mein Versprechen. Natürlich gilt das nur für den Ersten, der mir die Lösung bringt.
Gruss, Jo
|
Dakuan
Anmeldungsdatum: 2. November 2004
Beiträge: 6339
Wohnort: Hamburg
|
Ich vermute mal, dass M$ da wieder mal sein eigenes Süppchen gekocht hat, was dann bedeutet, dass es in der Linux Welt kein passendes Programm zum dekodieren gibt. Mit ADPCM habe ich mich auch noch nicht auseinander gesetzt, aber sich da einzuarbeiten dürfte deutlich mehr als 2 Tage dauern. Von daher sind 40€ nicht wirklich ein verlockendes Angebot (Stundenlohn). Aber ich habe das mal zum Anlass genommen, ein altes 32-Bit Programm in der 64-Bit Welt wieder zu beleben (ist noch nicht vollständig gelungen). Aber vielleicht helfen die zusätzlichen Angaben irgend jemanden weiter: @samurai:~/prog/audio/bwfv$ ./wavecut -n -v -d3 9000661-22D19F6C.BVD
-- wavecut Version 0.31 (25/03/2014) --
: 9000661-22D19F6C.BVD
File: 9000661-22D19F6C.BVD
File length: 24712
chunk type: "fmt " len: 59
Format: MS ADPCM
Channels: 1
Samples per second: 7200
Avg. bytes per sec: 3600
Block align: 1
Bits per sample: 2
aditional format chunk data: 43
000000: 00 00 52 4F 43 4B 57 45 4C 4C 3B 41 44 50 43 4D ..ROCKWELL;ADPCM
000010: 3B 38 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ;8..............
000020: 00 00 00 00 00 00 00 00 00 00 00 ...........
Die zusätzlichen Daten im Format Chunk treten immer dann auf, wenn ein Decoder zusätzliche Daten benötigt und auch nur dieser Decoder kann damit etwas anfangen. In diesem Fall steht dort aber nur ein Name drin. Da ich so etwas noch nie hatte, wirft mein Programm da einen Hex Dump. Vielleicht kann ja jemand mit "ROCKWELL" etwas anfangen.
|
Axel-Erfurt
Anmeldungsdatum: 18. Mai 2016
Beiträge: 1347
|
|
mrkramps
Anmeldungsdatum: 10. Oktober 2006
Beiträge: 5523
Wohnort: south central EL
|
Axel-Erfurt schrieb: Rockwell dürfte ein Modem Chipset sein. Rockwell Voice ADPCM Specification and Source Code
Wir können uns die 40,00 EUR teilen 😀 Das dort verlinkte „WAV to RIF Conversion Utility" namens DMAIN steht in der Binärversion noch zum Download, läuft unter DOS und konvertiert die angehängte Testdatei erfolgreich in eine WAV, siehe Anhang. Ich habe das jetzt mit dem im Archiv beigelegten Batch-Skript SPXWAV72.BAT gemacht, weil sich das spontan richtig anhörte mit der 72 für 7.2 kHz. Muss man einfach mal ausprobieren, die Hilfe zu den Programmparametern findet man mit DMAIN.EXE ? . Ob das mit DOSBox funktioniert, habe ich nicht getestet, aber mit DOSEMU alles fein. Dort ist das Homeverzeichnis des Linux-Benutzers übrigens standardmäßig direkt als Laufwerk D: eingebunden. Nachtrag: Ich will das Geld nicht haben. Wenn du aber jemandem etwas zurückgeben möchtest, dann spende es an FreeDOS 🇬🇧. Das stellt als Betriebssystem das Backend für die virtuelle Maschine in DOSEMU, welches derzeit wohl nicht mehr weiterentwickelt wird.
- 22D19F6C.wav (96.2 KiB)
- Download 22D19F6C.wav
|
mrkramps
Anmeldungsdatum: 10. Oktober 2006
Beiträge: 5523
Wohnort: south central EL
|
Den Quellcode inklusive ADPCM-Implementierung von Rockwells VAPI kann man dort auch herunterladen (enthält auch den Quellcode für DMAIN). Soweit sich mir das erschließt verwendet Rockwell die ursprüngliche Formatspezifikation von Microsoft mit einer proprietären, verlustlosen Kompression für die Sprachnachrichten, also ein Eigengewächs für ihre Chipsätze. Theoretisch sollte man anhand des Quellcodes einen passenden Codec programmieren können. Gibt wohl einfach nur geringen Bedarf dafür. Mit FFMpeg kann man die Testdatei mit einem anderen Codec auch konvertieren, kriegt aber wegen der fehlenden Dekompression des Datenstroms nur ein völlig verrauschtes Ergebnis: ffmpeg -acodec adpcm_sbpro_2 -i EINGABE.BVD -acodec pcm_u8 AUSGABE.WAV
|
unsteiger
(Themenstarter)
Anmeldungsdatum: 4. Juni 2013
Beiträge: 77
|
mrkramps schrieb:
Ob das mit DOSBox funktioniert, habe ich nicht getestet, aber mit DOSEMU alles fein. Dort ist das Homeverzeichnis des Linux-Benutzers übrigens standardmäßig direkt als Laufwerk D: eingebunden.
Hallo,
das ist ja spitze!
Dosemu kann ich zwar aufrufen, es öffnet sich eine Dosbox - aber im Terminal erscheint dann:
....-L512:~$ dosemu
ERROR: MFS: couldn't find root path /media/CDROM
Wie muss ich weitermachen?
Wie kann ich das "SPXWAV72.BAT" in der Dosbox aufrufen? Heruntergeladen habe ich es.
Oder anders: Wie setze ich die Parameter bei:
dmain%2 -s%1 -b -r -w
|
Axel-Erfurt
Anmeldungsdatum: 18. Mai 2016
Beiträge: 1347
|
Lege in deinem Benutzerordner einen Ordner bvd an. Kopiere den Ordner dmain dorthin. Kopiere deine Datei in diesen Ordner dmain und entferne 9000661- (bleibt 22D19F6C.BVD) starte dosemu im Terminal. in dosemu gibst Du nacheinander ein:
D: cd bvd cd dmain SPXWAV72.BAT 22D19F6C.BVD
ergibt die Datei utf3.wav in dmain
|