是否可以根据 MP3 和 JPG 生成 FLV,而无需无用地循环播放图像并且仍能查找音频?
此命令生成不可搜索的视频:
ffmpeg -y -i audio.mp3 -i image.jpg -r 1 -acodec copy video.flv
并且这个生成一个可搜索的,但是无用地循环占据空间和时间的图像:
ffmpeg -y -loop_input -i audio.mp3 -i image.jpg -r 1 -acodec copy video.flv -shortest
答案1
您只能搜索关键帧。关键帧必须是 I 帧,即包含完整图片。因此,您必须循环播放图像以创建搜索所需的 I 帧。
您可以使用 GOP ( -g
) 选项设置 I 帧的创建频率。如果您确实想最小化文件大小,可以尝试将帧速率设置得尽可能低,并使用 ( -g 0
) 确保每帧都是 I 帧,这样视频仍然可以搜索,例如
每两秒关键帧一次:
ffmpeg -y -loop_input -i audio.mp3 -i image.jpg -r 1/2 -g 0 -acodec copy video.flv
每四秒一个关键帧:
ffmpeg -y -loop_input -i audio.mp3 -i image.jpg -r 1/4 -g 0 -acodec copy video.flv
ETC。
显然,使用好的压缩器(如 Photoshop 的保存为 Web质量为 60-70 的像素也会有所帮助。