gpt4 book ai didi

php - 如何在 php 中从 ffmpeg 中提取帧大小和长度?

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

我通常使用 midentify,它会输出一个格式很好的字符串,很容易 preg_match

然而,它有时会失败,所以我想通过 ffmpeg 做一个后备方法。 ffmpeg -i hello.avi 吐出这个:

    Input #0, avi, from 'hello.avi':
Metadata:
encoder : Nandub v1.0rc2
Duration: 01:11:16.56, start: 0.000000, bitrate: 1202 kb/s
Stream #0.0: Video: mpeg4, yuv420p, 640x336 [PAR 1:1 DAR 40:21], 25 tbr, 25 tbn, 25 tbc
Stream #0.1: Audio: mp3, 48000 Hz, 2 channels, s16, 117 kb/s
At least one output file must be specified

我需要实际帧大小的宽度和高度,以及持续时间。

从这里提取它的最佳方法是什么?我对正则表达式不太熟悉。

最佳答案

持续时间很简单:

preg_match('/Duration: (\d{2}:\d{2}:\d{2}\.\d{2})/', $source, $matches);
$matches[1] == '01:11:16.56';

尺寸更难。我猜想任何一组数字除了 x 之外什么都没有分隔。字符将是尺寸:
preg_match('/(\d+)x(\d+)/', $source, $matches);
$matches[1] == '640';
$matches[2] == '336';

关于php - 如何在 php 中从 ffmpeg 中提取帧大小和长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4158561/

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