0

我已经用netstream制作了一个播放flv电影的播放器,但它需要一些名为“关键帧”的元数据信息,其中包含两个时间和位置数组,一些flv视频有这个元数据,有些没有,我可以添加关键帧元数据名为“flvmdi”的程序和播放器工作正常,但由于某些原因我无法在我的服务器上安装此软件。我知道我们可以在 PHP 中使用 ffmpeg 函数将元数据添加到电影中。我可以在 PHP 中使用 ffmpeg 函数将关键帧数组作为元数据添加到 flv 文件吗?我们如何在 php 中使用 ffmpeg 将时间和位置数组注入到 flv 文件中?

4

1 回答 1

-1

使用ffmpeg,您可以插入保留视频(-vcodec 复制)/音频(-acodec 复制)编解码器的关键帧,以可变间隔插入关键帧。

例如; 每 1 秒:-g 1

ffmpeg -i /INPUT.FLV -acodec copy -vcodec copy -copyts -g 1 /OUTPUT.FLV

将命令中断为变量并修改您的输入和输出文件/路径,调整 -g 的值;

$interval = 1;                       // 1sec
$pI = '/usr/local/www/sitex/upload'; // Input
$pO = '/usr/local/www/sitex/encode'; // Output
$fI = 'inp.flv';
$fO = 'out.flv';

    ffmpeg -i $pI+$fI -acodec copy -vcodec copy -copyts -g $interval $pO+$fO
于 2012-07-30T09:07:16.243 回答