Konvertieren Sie den MPEG-1 Audio Layer II-Sound in eine WAV-Datei

833
E. Dean

Ich brauche ein Befehlszeilenprogramm, um mp2Sounddateien in wavDateien zu konvertieren, die unter Windows ausgeführt werden.

ffmpeg scheint korrekt zu entschlüsseln, sondern gibt eine Fehlermeldung: Error while decoding stream #0:0: Invalid data found when processing input. Die resultierende Datei ist auch länger als benötigt.

C:\ffmpeg>ffmpeg.exe -i in.mp2 out.wav ffmpeg version 3.2.2 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 5.4.0 (GCC) configuration: --enable-gpl --enable-version3 --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib libavutil 55. 34.100 / 55. 34.100 libavcodec 57. 64.101 / 57. 64.101 libavformat 57. 56.100 / 57. 56.100 libavdevice 57. 1.100 / 57. 1.100 libavfilter 6. 65.100 / 6. 65.100 libswscale 4. 2.100 / 4. 2.100 libswresample 2. 3.100 / 2. 3.100 libpostproc 54. 1.100 / 54. 1.100 [mp3 @ 000000000036a860] Estimating duration from bitrate, this may be inaccurate Input #0, mp3, from 'in.mp2': Duration: 00:01:12.05, start: 0.000000, bitrate: 96 kb/s Stream #0:0: Audio: mp2, 22050 Hz, stereo, s16p, 96 kb/s Output #0, wav, to 'out.wav': Metadata: ISFT : Lavf57.56.100 Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 22050 Hz, stereo, s16, 705 kb/s Metadata: encoder : Lavc57.64.101 pcm_s16le Stream mapping: Stream #0:0 -> #0:0 (mp2 (native) -> pcm_s16le (native)) Press [q] to stop, [?] for help Error while decoding stream #0:0: Invalid data found when processing input size= 6206kB time=00:01:12.04 bitrate= 705.6kbits/s speed=1.36e+003x
video:0kB audio:6206kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.001227%

0
Die mp2-Dauer wird als 1m12s angezeigt, ebenso wie die Dauer der Ausgabewelle. Spielt es schneller / kürzer? Gyan vor 7 Jahren 0
@ Mulvya Dies ist sowohl die Originaldatei als auch die dekodierte in Audacity geladene Datei: https://i.imgur.com/t4i46um.png E. Dean vor 7 Jahren 0
Sieht am Ende wie ein zusätzlicher Audio-Frame aus. Versuchen Sie es mit anderen mp2-Dateien, insbesondere Monostreams. Gyan vor 7 Jahren 0
@ Mulvya Welche Tools kann ich außer ffmpeg verwenden? E. Dean vor 7 Jahren 0
Versuchen Sie es mit Sox oder Dbpoweramp. Technisch ist Ihre Datei MPEG-2 Layer II, da in MPEG-2 die Unterstützung von 22,5 kHz hinzugefügt wurde. Wie werden deine MP2s erzeugt? Gyan vor 7 Jahren 0
@ Mulvya dBpoweramp erstellt auch eine längere Datei. SoX scheint die richtige Länge einzuhalten. Jede resultierende Datei ist jedoch nicht identisch. Ich bin nicht sicher, welche Datei korrekt decodiert wird. E. Dean vor 7 Jahren 0
Wie werden deine MP2s erzeugt? Gyan vor 7 Jahren 0
@ Mulvya Sie sind aus einem Spiel. Ich habe sie nicht selbst codiert. E. Dean vor 7 Jahren 0
Ok, sowohl Audacity als auch SoX verwenden libmad, um MP2 zu decodieren. Das ist wahrscheinlich der Grund, warum die Dauer übereinstimmt. ffmpeg und dbp haben eigene Decoder. Das Problem ist, dass libmad seit 2004 nicht mehr aktualisiert wurde. Die zusätzliche Dauer in ffmpeg / dbp ist wahrscheinlich gültig und * libmad hat einen Fehler *, bei dem der letzte Frame nicht decodiert wird. Audacity ist daher möglicherweise kein gültiges Werkzeug zum Überprüfen von MP2s. Gyan vor 7 Jahren 0
@Mulvya ffmpeg und dBpoweramp erzeugen aus irgendeinem Grund keine identischen Dateien, aber sie haben zumindest die gleiche Länge. Die Dateien klingen zwar gleich, sind jedoch nicht bitweise identisch. Nicht nur die Metadaten sind anders, sondern auch die Sounddaten selbst. E. Dean vor 7 Jahren 0

0 Antworten auf die Frage