FFmpeg - 请求的输出格式 'mpeg' 不是合适的输出格式
FFmpeg - Requested output format 'mpeg' is not a suitable output format
我正在尝试使用 FFmpeg 将视频从 mp4 格式转换为 mpeg,以便我可以合并多个视频。我有一个自定义构建的 FFmpeg,我可以在其中控制配置选项:
ffmpeg -y -i VID_20150514_171122_12085.mp4 -an -f mpeg VID_20150514_184208.mp4.0.mpg
ffmpeg version git-2015-02-25-b0d3322 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.8 (GCC)
configuration: --arch=arm --cpu=cortex-a8 --target-os=linux --enable-runtime-cpudetect --enable-pic --disable-shared --enable-static --cross-prefix=/home/jon/Development/android-ndk-r10d/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi- --enable-cross-compile --sysroot=/home/jon/Development/android-ndk-r10d/platforms/android-9/arch-arm/ --extra-cflags='-I../x264 -mfloat-abi=softfp -mfpu=neon -fPIE -pie' --extra-ldflags='-L../x264 -fPIE -pie' --enable-version3 --enable-gpl --disable-doc --enable-yasm --disable-everything --enable-decoder=mpeg --enable-decoder=mpeg4 --enable-decoder=aac --enable-decoder=h264 --enable-decoder=libx264 --enable-encoder=libx264 --enable-decoder=mpegvideo --enable-decoder=mpeg1video --enable-decoder=mpeg2video --enable-encoder=mpeg --enable-encoder=mpeg4 --enable-encoder=aac --enable-encoder=h264 --enable-encoder=mpeg1video --enable-encoder=mpeg2video --enable-parser=aac --enable-parser=mpeg4video --enable-parser=ac3 --enable-parser=h261 --enable-parser=h264 --enable-parser=vc1 --enable-demuxer=mpegvideo --enable-demuxer=aac --enable-demuxer=m4v --enable-demuxer=mov --enable-demuxer=h264 --enable-demuxer=vc1 --enable-muxer=h264 --enable-muxer=mpeg2video --enable-muxer=mp4 --enable-muxer=mov --enable-protocols --enable-indev=v4l --enable-indev=v4l2 --enable-filter=aresample --enable-filter=scale --disable-indevs --enable-indev=lavfi --disable-outdevs --enable-hwaccels --enable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-symver --enable-network --enable-libx264 --enable-zlib --enable-muxer=md5
libavutil 54. 19.100 / 54. 19.100
libavcodec 56. 26.100 / 56. 26.100
libavformat 56. 23.105 / 56. 23.105
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 11.101 / 5. 11.101
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'VID_20150514_171122_12085.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.23.105
Duration: 00:00:09.79, start: 0.773229, bitrate: 2013 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2005 kb/s, 30.35 fps, 30.35 tbr, 18k tbn, 60.71 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 155 kb/s (default)
Metadata:
handler_name : SoundHandler
[NULL @ 0xb7520490] Requested output format 'mpeg' is not a suitable output format
VID_20150514_184208.mp4.0.mpg: Invalid argument
但我一直收到错误提示 "Requested output format 'mpeg' is not a suitable output format"。相同的命令似乎可以在我的 Ubuntu 机器上使用完整的 FFmpeg 构建。我错过了什么?我以为我启用了所有 mpeg encoders/decoders ... mpeg、mpegvideo、mpeg1video、mpeg2video。
可能是使用 --disable-everything
然后未启用正确选项的结果。使用此选项时我经常看到这种情况,使用此选项后需要反复试验才能获得所需的一切。
尝试添加 --enable-muxer=mpeg
.
我正在尝试使用 FFmpeg 将视频从 mp4 格式转换为 mpeg,以便我可以合并多个视频。我有一个自定义构建的 FFmpeg,我可以在其中控制配置选项:
ffmpeg -y -i VID_20150514_171122_12085.mp4 -an -f mpeg VID_20150514_184208.mp4.0.mpg
ffmpeg version git-2015-02-25-b0d3322 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.8 (GCC)
configuration: --arch=arm --cpu=cortex-a8 --target-os=linux --enable-runtime-cpudetect --enable-pic --disable-shared --enable-static --cross-prefix=/home/jon/Development/android-ndk-r10d/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi- --enable-cross-compile --sysroot=/home/jon/Development/android-ndk-r10d/platforms/android-9/arch-arm/ --extra-cflags='-I../x264 -mfloat-abi=softfp -mfpu=neon -fPIE -pie' --extra-ldflags='-L../x264 -fPIE -pie' --enable-version3 --enable-gpl --disable-doc --enable-yasm --disable-everything --enable-decoder=mpeg --enable-decoder=mpeg4 --enable-decoder=aac --enable-decoder=h264 --enable-decoder=libx264 --enable-encoder=libx264 --enable-decoder=mpegvideo --enable-decoder=mpeg1video --enable-decoder=mpeg2video --enable-encoder=mpeg --enable-encoder=mpeg4 --enable-encoder=aac --enable-encoder=h264 --enable-encoder=mpeg1video --enable-encoder=mpeg2video --enable-parser=aac --enable-parser=mpeg4video --enable-parser=ac3 --enable-parser=h261 --enable-parser=h264 --enable-parser=vc1 --enable-demuxer=mpegvideo --enable-demuxer=aac --enable-demuxer=m4v --enable-demuxer=mov --enable-demuxer=h264 --enable-demuxer=vc1 --enable-muxer=h264 --enable-muxer=mpeg2video --enable-muxer=mp4 --enable-muxer=mov --enable-protocols --enable-indev=v4l --enable-indev=v4l2 --enable-filter=aresample --enable-filter=scale --disable-indevs --enable-indev=lavfi --disable-outdevs --enable-hwaccels --enable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-symver --enable-network --enable-libx264 --enable-zlib --enable-muxer=md5
libavutil 54. 19.100 / 54. 19.100
libavcodec 56. 26.100 / 56. 26.100
libavformat 56. 23.105 / 56. 23.105
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 11.101 / 5. 11.101
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'VID_20150514_171122_12085.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.23.105
Duration: 00:00:09.79, start: 0.773229, bitrate: 2013 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 2005 kb/s, 30.35 fps, 30.35 tbr, 18k tbn, 60.71 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 155 kb/s (default)
Metadata:
handler_name : SoundHandler
[NULL @ 0xb7520490] Requested output format 'mpeg' is not a suitable output format
VID_20150514_184208.mp4.0.mpg: Invalid argument
但我一直收到错误提示 "Requested output format 'mpeg' is not a suitable output format"。相同的命令似乎可以在我的 Ubuntu 机器上使用完整的 FFmpeg 构建。我错过了什么?我以为我启用了所有 mpeg encoders/decoders ... mpeg、mpegvideo、mpeg1video、mpeg2video。
可能是使用 --disable-everything
然后未启用正确选项的结果。使用此选项时我经常看到这种情况,使用此选项后需要反复试验才能获得所需的一切。
尝试添加 --enable-muxer=mpeg
.