使用“-vprofile baseline”创建视频时出错

使用“-vprofile baseline”创建视频时出错

我正在使用填充视频

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 是用编码器编译的,这将使用libfaaclibfdk_aac编码器将音频编码为 AAC。如果您没有这些,您可以使用带有aac选项的内置编码器-c:a aac -strict -2。请参阅FFmpeg 和 AAC 编码指南了解更多信息。

您还可以-c:a copy使用流复制音频,这不会损害视频编码。当然,视频质量(-crf)或视频比特率(-b:v而不是-crf)的选择也由您决定。请参阅FFmpeg 和 x264 编码指南了解更多信息。

相关内容