gpt4 book ai didi

php - ffmpeg视频编码策略防止低质量视频出现 "inflating"

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

我们正在尝试构建一个基于 php 的视频共享站点,允许用户上传他们自己的内容。

我们需要将所有这些视频转换为中等质量的 mp4 视频文件,以便最终通过 FlowPlayer 进行流式传输。

我们的代码是这样的(flv 的例子):

system("ffmpeg -i $vidPath -pass 1 -ab 64k -ar 44100 -ac 1 -vcodec flv -b 1500k -cmp 3 -subcmp 3 -mbd 2 $flvPath");

问题是这会将任何类型的 1 分钟视频转换为 10 MB 文件。如果它是一个高质量的 1 分钟视频,它会被转换为一个 10 MB 的文件——这很棒。但是,如果它是一个低质量的视频,比如说只有 2 MB,它仍然会被转换为一个 10 MB 的文件!!

我应该采用什么策略/方法,以便上传的视频在大小上是“上限”,但相同长度的质量较低的视频不会“膨胀”到相同的大小!

最佳答案

看起来您正在使用 -b标志强制比特率。当您使用 -minrate 时会发生什么?和 -maxrate旗帜,as listed in the documentation而不是设置特定的比特率?

另一个有趣的选项是 -fs ,它设置最大文件大小。如果您可以在编码之前确定视频的长度,您可以根据该长度确定一个好的上限。

关于php - ffmpeg视频编码策略防止低质量视频出现 "inflating",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5275783/

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