gpt4 book ai didi

php - ffmpeg:如何使用 PHP 获取可用编解码器的列表?

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

问题是,我正在尝试(通过 php)将 .3gp(或任何视频格式)文件转换为 ogg。

当我没有指定 -vcodec 和 -acodec 时,视频被转换,但没有任何音频。

我已经阅读了此处和其他需要指定 -acodec libvorbis 的地方,但是,当我将编解码器指定为 libvorbis 时,转换失败:视频转换为 0byte 文件。

基本上,我试图确定指定的编解码器是否实际上是我用来缩小问题范围的 ffmpeg 构建的一部分。

产生无声全长视频的代码:

$srcFile = 'anyvideo.3gp';
$destFile = 'anyvideo.ogg';
$ffmpegPath = 'path/to/ffmpeg.exe';
$ffmpegObj = new ffmpeg_movie($srcFile);
$srcWidth = makeMultipleTwo($ffmpegObj->getFrameWidth());
$srcHeight = makeMultipleTwo($ffmpegObj->getFrameHeight());
$srcFPS = $ffmpegObj->getFrameRate();
$srcAB = intval($ffmpegObj->getAudioBitRate()/1000);
$srcAR = $ffmpegObj->getAudioSampleRate();
$srcLen = $ffmpegObj->getDuration();

exec($ffmpegPath." -i ".$srcFile." -ar ".$srcAR." -s ".$srcWidth."x".$srcHeight." ". $destFile);

以及产生 0byte 文件的代码:
exec($ffmpegPath." -i ".$srcFile." -acodec libvorbis -ar ".$srcAR." -s ".$srcWidth."x".$srcHeight." ".$destFile);

所以,我的问题是,如何确定使用 PHP 的 ffmpeg 可用的编解码器?甚至可以做到吗?

更新 - 答案如下

最佳答案

您应该能够通过在命令行上使用 -formats 标志来查看安装了哪些格式

ffmpeg -formats

这将输出一长串可用的编解码器。

关于php - ffmpeg:如何使用 PHP 获取可用编解码器的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13318642/

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