目前我在使用FFmpeg6.0的scale功能(vf_scale)实现码流缩放,出现横屏条纹,具体如下:
ffmpeg编译命令:
./configure --prefix=${WORKSPACE}/FFmpeg --enable-gpl --enable-version3 --enable-nonfree --disable-x86asm --enable-libmfx --enable-libx264 --enable-libx265
转码命令如下:
./FFmpeg/bin/ffmpeg -i test.mp4 -vf scale=1920:1080 result.mp4
同时使用FFmpeg-n3.4.12,使用上述命令编译及转码,转码所得视频播放正常
大家有没有遇到过这种问题,怎么规避?
ffmpeg-5.1.3.tar.gz缩放也会导致横纹花屏
【以下回答由 GPT 生成】
问题描述中提到在使用 FFmpeg 的 vf_scale 功能进行码流缩放时出现了横纹花屏的问题。针对这个问题,可以采取以下几个步骤来解决:
检查 FFmpeg 版本:确认使用的 FFmpeg 版本是否为 6.0,同时也尝试使用其他版本进行测试,比如 n3.4.12。可以使用命令 ffmpeg -version
来查看版本号。
检查编译命令:确认使用的编译命令是否正确,并且开启了 vf_scale 功能。比如,使用 ./configure
编译 FFmpeg 时需要添加 --enable-filter=scale
参数来开启 vf_scale 功能。
检查转码命令:确认使用的转码命令是否正确,并且 vf_scale 参数设置正确。比如,使用 scale=1920:1080
来设置目标分辨率。
检查硬件加速支持:有些编译选项可能导致硬件加速功能无法正常工作,这可能会导致一些奇怪的问题。尝试禁用硬件加速,即在编译命令中移除 --enable-libmfx
参数。
检查输入文件:确认输入文件的编码和参数是否正确,并且是否能正常播放。可以尝试使用其他视频文件进行测试,确保问题不是由输入文件本身引起的。
检查输出文件格式:确认输出文件的容器格式和编码参数是否正确。可以尝试使用其他容器格式或编码参数进行测试,比如使用 -c:v libx264
来指定输出视频流的编码格式。
使用其他工具进行转码:如果以上步骤都没有解决问题,可以尝试使用其他的视频转码工具,比如 HandBrake,看是否能够正常进行码流缩放操作。
请注意,以上步骤仅为一般性的排查方法,具体解决方案可能需要根据实际情况进行调整。