首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用nginx rtmp在多个流输入之间切换

用nginx rtmp在多个流输入之间切换
EN

Stack Overflow用户
提问于 2015-10-06 14:44:32
回答 1查看 7.1K关注 0票数 3

我的两位同事最近开始一起流到Twitch,并希望创建一个可以在他们的流“实时”之间切换的设置(例如,A是流,想结束,B启动他的流,没有中断)。显然,抽搐一次只允许一个人流到特定的通道/流键并停止一个流&立即启动另一个流通常会导致大约10秒的“停机时间”。

出于这个原因,我研究了设置一个服务器--它们都可以是流--它可以处理两个输入,并将一个流推送到Twitch服务器。为此,我查看了一些关于设置nginx和rtmp插件的教程,但是我遇到的问题是,一次只能有一个人能够流。我认为,一种可能的方法是在服务器上设置一个客户端流程序,如on或XSplit,然后在服务器上显示来自nginx输入的流,并根据需要切换场景,但是这两个程序似乎都需要一个图形卡才能实时“预览”,因此无法在我的服务器上工作。

是否有任何nginx配置或其他客户端(最优linux,但也可以是windows )解决方案,我可以用于将两个输入RTMP流组合到一个输出流中?如果需要的话,输入之间的切换也可以通过手工完成,只要它能“活”工作,并且输出没有中断。

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2015-10-15 15:05:24

这就是我对ffmpeg和YouTube Live所做的,它们也使用RTMP输入。也可能和特维奇一起工作:

  • 将这两个流一次一个地拉到服务器,并以中间格式(如mpegts )将它们推送到本地UDP端口。在我的例子中,它已经是H.264/AAC了: -re -i -c复制-bsf:v h264_mp4toannexb udp://127.0.0.1:10000 然后立即杀死并做: -re -i -c复制-bsf:v h264_mp4toannexb udp://127.0.0.1:10000
  • 获取本地流,编码并通过RTMP将其推送。如果没有输入,它将等待,并将管理PTS/DTS中的不连续性: -re -i udp://127.0.0.1:10000 -c:v libx264 -r 25 -g 100 -c:a libfdk_aac -f rtmp://.
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32972903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档