php - 使用 FFMPEG 转换为 FLV 的视频大小为 0

标签 php ffmpeg

我正在尝试在服务器上使用 FFMPEG 将 avi 文件转换为 flv 格式,但这给我带来了问题。转换时,文件被转换为 flv 格式,但没有数据(0 kb 大小的文件)。尝试调试代码但不能。 FFMPEG 安装在 CentOS 中,路径为/usr/bin/ffmpeg,我使用以下命令进行转换:

$srcFile = "/home/mydomain/public_html/demo/test/sample.avi";
$destFile = "/home/mydomain/public_html/demo/test/sample_again.flv";

$ffmpegPath = "/usr/bin/ffmpeg";
$flvtool2Path = "/usr/local/bin/flvtool2";

$command = $ffmpegPath 。 “-义 ” 。 $src 文件。 “-ar 32000 -ab 32000 -f flv -s 320x240”。
$目标文件。 “|”。 $flvtool2Path 。 “-U 标准输入”。 $目标文件;

执行($命令,$输出);
print_r($输出);

我试着做:

exec("哪个 ffmpeg");

它给了我路径/usr/bin/ffmpeg,但是当我执行代码时出现以下错误:

大批 (
[0] => 错误:nil:NilClass 的未定义方法“时间戳”
[1] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flv/stream.rb:285:in `lasttimestamp'
[2] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flv/stream.rb:274:in `duration'
[3] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:181:in `add_meta_data_tag'
[4] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:137:in `update'
[5] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:47:in `send'
[6] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:47:in `执行!
[7] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:46:in `each'
[8] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:46:in `execute!'
[9] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:206:in `process_files'
[10] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2/base.rb:44:in `执行!
[11] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2.rb:168:in `执行!
[12] => 错误:/usr/local/cpffmpeg/lib/ruby/site_ruby/1.8/flvtool2.rb:228
[13] => 错误:/usr/local/bin/flvtool2:2:in `require'
[14] => 错误:/usr/local/bin/flvtool2:2
)

可能是什么问题呢。这是Flvtool2的问题吗,如果是,那是什么。请提出一些建议

最佳答案

您可以 var_dump($command) 然后在 shell 中运行该命令(作为运行 apache 的用户)吗?

关于php - 使用 FFMPEG 转换为 FLV 的视频大小为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8075239/

相关文章:

php - 文本类型的输入不会在 mysql 表中更新

php - 如果您刷新 AJAX 请求的内容 (ob_flush),该内容将被加载?

javascript - 是否可以将 Javascript 函数参数传递给 PHP?

ffmpeg - 使用 FFMPEG 缩小视频尺寸 - 设置最大宽度和高度

Ffmpeg 如果流不存在则忽略流

c# - 在哪里下载 FFMPEG.exe 并在 C# 中使用它

video - 发现瓶颈。 Ffmpeg 在 4core\8threads CPU 上没有使用 800%。为什么?

php - 阿拉伯文本在 php/mysql 中有时会出现 “???” 有时会在 select/insert 语句后出现 "Ùؤتا"

php - 用于检查字符串的 MySQL 数据类型资源

audio - 如何将 mp4 音频破折号片段与另一个音频合并