到目前为止我们已经完成了
我们有一个视频聊天客户端,其中包含一组9个视频流(用户) h.264编解码器使用Adobe FMS。现在,使用ffmpeg,我们可以将这些组合起来 使用overlay(视频)和amix(音频)过滤器将流分成一个流。 我们能够将单个组合流发送到实时流媒体服务。 使用比例尺以更大的尺寸显示有源扬声器的流 ffmpeg的财产。
代码如下:
ffmpeg -i "rtmp://localhost/live/mystream" -i "rtmp://localhost/live/mystream2 " -i "rtmp://localhost/live/mystream3 "-filter_complex"nullsrc=size=300x300 [b1];[0:v] setpts=PTS-STARTPTS,scale=100x100 [s1];[1:v] setpts=PTS-STARTPTS,scale=200x200 [s2];[2:v]setpts=PTS-STARTPTS,scale=100x100 [s3];[b1][s1] overlay=shortest=1 [b1+s1];[b1+s1][s2] overlay=shortest=1 [b1+s2];
[b1+s2][s3] overlay=shortest=1:x=100" out.mp4
以下两个主要问题需要帮助。任何帮助将不胜感激。
每当有效发言者改变时,该用户的流应该以更大的形式显示 尺寸。这可能不用重新启动ffmpeg进程吗?
现在,如果9个流中的一个停止,则ffmpeg进程崩溃。