【问题标题】:How merge two mp4 videos side by side with the help of FFMPEG and PHP code?如何在 FFMPEG 和 PHP 代码的帮助下并排合并两个 mp4 视频?
【发布时间】:2017-08-11 14:28:26
【问题描述】:

任何人都可以帮助我使用 FFMPEG 的 php 代码连接两个 mp4 视频并将连接的文件作为 mp4 存储在服务器的任何文件夹中吗? 我找到了 ffmpeg 的命令。但我不知道如何使它在 php 中工作。 ps:另一方面,有没有像ffmpeg这样的程序我可以用?

【问题讨论】:

    标签: php video ffmpeg


    【解决方案1】:

    您可以使用hstack 过滤器进行并排:

    ffmpeg -i left.mp4 -i right.mp4 -filter_complex hstack /path/to/output.mp4
    

    在 PHP 中使用可能如下所示:

    <?php
        echo "Starting ffmpeg...\n\n";
        echo shell_exec("ffmpeg -i left.mp4 -i right.mp4 -filter_complex hstack /path/to/output.mp4 >/dev/null 2> ffmpeg.log &");
        echo "Done.\n";
    ?>
    

    改编自FFmpeg Wiki: PHP

    【讨论】:

    • echo shell_exec("ffmpeg.exe -i nameVideo1.webm -i nameVideo2.webm -filter_complex \"[0:v]scale=iw/2:ih/2,pad=2*iw: ih[left];[1:v]scale=iw/2:ih/2[right];[left][right]overlay=main_2/2:0[out]\" -map [out] -map 0: a -map 1:a -c:a pcm_s16le -b:v 768k videoFinal.webm");我尝试运行您的命令,但它不起作用..我的文件夹中没有视频输出..我尝试了上面的代码。这是输出但大小为 0bytes
    • @student 在尝试编写脚本之前,请始终确保 ffmpeg 命令有效。 如果您首先在 cmd 中运行 ffmpeg 命令,它会告诉您, Only VP8 or VP9 video and Vorbis or Opus audio and WebVTT subtitles are supported for WebM,但您尝试使用不受支持的 PCM 音频。将-c:a pcm_s16le 更改为-c:a libopus
    • @student 另外,我猜main_2main_w 的拼写错误,除非你真的想要两个单独的音频流,否则你将不得不修复你的-map s.
    • - 我认为 ffmpeg 可以工作,因为我之前尝试运行此代码并且它工作正常 pastebin.com/whjWVZc0
    • @student 该脚本与您在这里遇到的问题无关。
    猜你喜欢
    • 2018-12-27
    • 2018-04-23
    • 2019-03-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-15
    • 2016-05-23
    • 2015-09-29
    • 1970-01-01
    相关资源
    最近更新 更多