Ich versuche, .avi-Dateien mit ffmpeg so verlustfrei wie möglich in .mp4 zu konvertieren.
Ich habe diesen Befehl versucht:
ffmpeg -i filename.avi -c:v copy -c:a copy -y filename.mp4
und diese Ausgabe erhalten:
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --enable-libvmaf --enable-vulkan --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec --enable-cuda-llvm --enable-libglslang --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp
libavutil 57. 0.100 / 57. 0.100
libavcodec 59. 1.101 / 59. 1.101
libavformat 59. 3.100 / 59. 3.100
libavdevice 59. 0.100 / 59. 0.100
libavfilter 8. 0.102 / 8. 0.102
libswscale 6. 0.100 / 6. 0.100
libswresample 4. 0.100 / 4. 0.100
libpostproc 56. 0.100 / 56. 0.100
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, avi, from 'Filename.avi':
Metadata:
TAPE : Filename
TCOD : 653986667
Duration: 00:01:54.01, start: 0.000000, bitrate: 30411 kb/s
Stream #0:0: Video: dvvideo (dvsd / 0x64737664), yuv411p, 720x480 [SAR 8:9 DAR 4:3], 28779 kb/s, 29.97 fps, 29.97 tbr, 29.97 tbn
Stream #0:1: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, stereo, s16, 1536 kb/s
[mp4 @ 000001d0ca8a1480] Could not find tag for codec dvvideo in stream #0, codec not currently supported in container
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
Error initializing output stream 0:1 --
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Last message repeated 1 times
Es gibt eine .mp4-Datei mit einer Fehlermeldung aus, dass die Datei nicht abgespielt werden kann, und dem Fehlercode 0xc10100be.
Kann jemand interpretieren, was passiert? Welchen Befehl würdest du hier empfehlen?
Vielen Dank!
Sie versuchen, einen Codec (dvvideo) in einen Container (mp4) einzufügen, der ihn nicht unterstützt (zumindest in ffmpeg). Siehe Unterschied zwischen Codec und Container . Verwenden Sie besser einen von mp4 unterstützten Codec, sagen Sie H.265 mit libx265, und versuchen Sie es mit der Konvertierung. Weitere Optionen, die Sie möglicherweise anwenden möchten, finden Sie in den Dokumenten . Hier ist die umfangreiche Liste der von mp4 unterstützten Codecs , aber möglicherweise werden nicht alle von ffmpeg unterstützt. Hier sind einige beliebte Codecs . Außerdem ist pcm_s16le ein rohes Audioformat, konvertieren Sie es in aac. Versuchen
ffmpeg -i filename.avi -c:v libx265 -x265-params lossless=1 -c:a libfdk_aac -b:a 128k -y filename.mp4
Es verfügt über eine verlustfreie H.265-Codierung und verwendet libfdk_aac, das von besserer Qualität als das native ist.
Sterne im Himmel
Abdullah Ibn Fulan