我正在使用填充视频
ffmpeg -i input.mp4 -vf "pad=width=640:height=480:x=0:y=120:color=black" output.mp4
该命令运行正常。但我想使用“-vprofile baseline”来获取小尺寸视频。如果我运行该命令
ffmpeg -i input.mp4 -vf "pad=width=640:height=480:x=0:y=120:color=black -vprofile baseline" output.mp4
它给出了一个错误
01-07 16:35:40.494: I/process data info >>>>>>>>>>(6116): ffmpeg version git-2013-11-13-129af66 Copyright (c) 2000-2013 the FFmpeg developers built on Nov 13 2013 16:40:26 with gcc 4.4.3 (GCC) configuration: --arch=arm --target-os=linux --enable-cross-compile --cross-prefix=/Users/sunitha/Downloads/android-ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/darwin-x86/bin/arm-linux-androideabi- --prefix=../build --sysroot=/Users/sunitha/Downloads/android-ndk/platforms/android-9/arch-arm --extra-cflags=' -I/Users/sunitha/Downloads/android-ndk/platforms/android-9/arch-arm/usr/include -I/Users/sunitha/Downloads/full_ffmpeg/ffmpeg-android/libmp3lame/include -DANDROID -marm -march=armv6 ' --extra-ldflags=' -L/Users/sunitha/Downloads/android-ndk/platforms/android-9/arch-arm/usr/lib -L/Users/sunitha/Downloads/full_ffmpeg/ffmpeg-android/libmp3lame/lib' --disable-debug --enable-libmp3lame --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avfilter --enable-decoders --enable-demuxers --enable-encoders --enable-filters --enable-indevs --enable-network --enable-parsers --enable-protocols --enable-swscale --enable-gpl --enable-nonfree libavutil 52. 39.100 / 52. 39.100 libavcodec 55. 18.102 / 55. 18.102 libavformat 55. 12.102 / 55. 12.102 libavdevice 55. 3.100 / 55. 3.100 libavfilter 3. 80.100 / 3. 80.100 libswscale 2. 3.100 / 2. 3.100 libswresample 0. 17.102 / 0. 17.102 libpostproc 52. 3.100 / 52. 3.100Unrecognized option 'vprofile baseline'.Error splitting the argument list: Option not found
01-07 16:35:40.494: I/exit code >>>>>>>>..(6116): 1
01-07 16:35:40.494: I/exit code >>>>>>>>..(6116): 1
错误是:
Unrecognized option 'vprofile baseline'.
Error splitting the argument list: Option not found
答案1
基线概况与硬件能力, 不是尺寸。但如果你需要使用它,不要使用内部过滤器。而且它与无损编码不兼容。所以尝试:
ffmpeg -i input -pix_fmt yuv420p -c:v libx264 -crf 23 \
-profile:v baseline output.mp4
如果您的过滤器部分工作正常,请单独使用它:
ffmpeg -i input -pix_fmt yuv420p \
-vf "pad=width=640:height=480:x=0:y=120:color=black" -c:v libx264 -crf 23 \
-profile:v baseline output.mp4
如果您的 ffmpeg 是用编码器编译的,这将使用libfaac
或libfdk_aac
编码器将音频编码为 AAC。如果您没有这些,您可以使用带有aac
选项的内置编码器-c:a aac -strict -2
。请参阅FFmpeg 和 AAC 编码指南了解更多信息。
您还可以-c:a copy
使用流复制音频,这不会损害视频编码。当然,视频质量(-crf
)或视频比特率(-b:v
而不是-crf
)的选择也由您决定。请参阅FFmpeg 和 x264 编码指南了解更多信息。