【问题标题】:Ffmpeg not converting properly to ogg [closed]Ffmpeg 未正确转换为 ogg [关闭]
【发布时间】:2012-10-11 12:05:12
【问题描述】:

我正在使用 ffmpeg 在我的网站上转换音频和视频。 Ffmpeg 正确转换为其他格式,如 mp3、mp4 等,但未正确转换为 ogg。虽然 ffmpeg 正在创建 ogg 文件,但新创建的 ogg 文件已损坏并且比原始文件大太多。我正在使用以下 PHP 代码转换为 ogg。

exec("/usr/bin/ffmpeg -i ".$_FILES['thefile1']['tmp_name']." ./ogg/$file_name".".ogg");

【问题讨论】:

    标签: ffmpeg ogg


    【解决方案1】:

    我假设您正在寻找 ogg 视频,而不是音频。如果你想要音频,只需删除 vcodec 的东西。

    添加以下参数:

    vcodec libtheora
    acodec libvorbis
    

    所以你的命令会变成:

    exec("/usr/bin/ffmpeg -i ".$_FILES['thefile1']['tmp_name']." -vcodec libtheora -acodec libvorbis ./ogg/$file_name".".ogg");
    

    您必须确保已安装 libtheora 和 libvorbis。如果您执行该命令并且您没有安装它们,ffmpeg 将引发错误。您可以检查使用

    ffmpeg -codecs
    

    并搜索 libtheora 和 libvorbis。

    【讨论】:

    • 非常感谢您的回复。由于您的回复,我的问题解决了一半。我使用了以下代码。 exec("/usr/bin/ffmpeg -i ".$_FILES['thefile1']['tmp_name']." -vcodec libtheora -acodec libvorbis ./ogg/$file_name".".ogg");现在它正在将音频文件完美地转换为 ogg 但不是视频文件。就视频文件而言,它没有正确地将它们转换为 mp4 和 ogg。能否请您进一步指导?
    • 您是否收到任何错误消息?如果是这样,你能告诉我吗?
    • 没有给出错误信息,文件创建成功,但生成的 ogg 文件为 0 kb,而且 mp4 文件也太小,无法播放。
    • 对于视频文件,我使用以下代码。 exec("/usr/bin/ffmpeg -i ".$_FILES['thefile1']['tmp_name']." ./ogg/$file_name".".ogg");因为以下编码适用于音频,但与视频一起使用时不会创建任何文件。 exec("/usr/bin/ffmpeg -i ".$_FILES['thefile1']['tmp_name']." -vcodec libtheora -acodec libvorbis ./ogg/$file_name".".ogg");
    • 您可以尝试在 php 之外(即在命令行上)使用测试输入文件运行视频转换命令,看看输出是什么?我能想到的一个猜测是输出文件已经存在(并且您需要添加 -y 选项来覆盖它)。
    猜你喜欢
    • 2023-03-20
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    • 2011-03-13
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 2018-08-10
    相关资源
    最近更新 更多