【问题标题】:PHP FFMPEG How to calculate file size of video from bitrate and duration before conversion?PHP FFMPEG 如何在转换前根据比特率和持续时间计算视频的文件大小?
【发布时间】:2019-09-08 01:42:16
【问题描述】:

我正在使用 php-ffmpeg(ffmpeg 的 PHP api)在视频文件被转换之前探测它们。我得到了我需要的所有信息,但我想用它来计算视频转换后的估计文件大小,以便我可以更有效地转换视频的质量与空间等。

转换后的文件大小只是一个估计值。到目前为止,我已经尝试将持续时间乘以预期的视频比特率加上预期的音频比特率。但是,这给了我比具有更高视频和音频比特率的原始视频文件更大的大小。我假设每个不同的视频编解码器都可能需要考虑一个压缩因子,但我现在只是想用 .mp4/m4v 到达某个地方。

这是我尝试过的;

// duration | vid bitrate | aud bitrate
$estimated_converted_size = $duration * ((4992 * 1024) + (128 * 1024));

24 秒视频的结果,视频比特率为 29302kbps,文件大小为 87.86 MB,一旦转换为 4992kbs,估计为 121.11 MB - 显然不对!

我不太了解视频的技术,但是有没有一种方法可以相当准确地估计转换后的文件大小?

【问题讨论】:

    标签: php video ffmpeg


    【解决方案1】:

    29302kbps 是千比特每秒

    87.86 MB 是兆字节。

    一个字节有 8 位。 121.11Mb 等于 15.13MB (121.11/8)

    【讨论】:

    • 哈哈。我想你可以在那里做点什么。我会检查我是否犯了如此愚蠢的错误,如果是,我会回来承认并接受你的回答并低调一会儿!
    • 我去拿我的外套。
    猜你喜欢
    • 2015-06-12
    • 2012-02-14
    • 2017-09-01
    • 1970-01-01
    • 2016-12-17
    • 1970-01-01
    • 2016-11-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多