gpt4 book ai didi

ffmpeg - 使用 ffmpeg 在 vp8+vorbis 编码中定位特定文件大小

转载 作者:行者123 更新时间:2023-12-04 22:54:24 26 4
gpt4 key购买 nike

我有几个视频要编码为 vp8 用于视频和 Vorbis 用于音频。这是我目前正在使用的 FFmpeg 命令:

ffmpeg -y -i input.mp4 -map 0:v:0 -s 640x360 -filter:v fps=20 -c:v libvpx -crf 10 -b:v 200k -map 0:a:0 -b:a 48k -c:a libvorbis output.webm
我想控制输出文件的大小并将其限制为 3MB 而不剪辑视频,但反而会降低质量。所以我不能使用 -fs 3MB .
如何根据视频和音频比特率和持续时间确定文件大小?
如何在不裁剪的情况下限制文件大小?

最佳答案

10 秒输入的示例,输出略低于 3 MB 输出:

3 MB * 8000 / 10 seconds - 48kb audio bitrate - 1% muxing overhead = -b:v 2328k
以特定输出文件大小为目标时,使用两遍编码:
ffmpeg -y -i input.mp4 -map 0:v:0 -filter:v "scale=640:360,fps=20" -c:v libvpx -b:v 2328k -pass 1 output.webm
ffmpeg -y -i input.mp4 -map 0:v:0 -filter:v "scale=640:360,fps=20" -c:v libvpx -b:v 2328k -map 0:a:0 -c:a libvorbis -b:a 48k -pass 2 output.webm
看:
  • Get duration with ffprobe
  • FFmpeg Wiki: VP8
  • 关于ffmpeg - 使用 ffmpeg 在 vp8+vorbis 编码中定位特定文件大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68608701/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com