浏览器将摄像头流推送到媒体服务器
Posted
技术标签:
【中文标题】浏览器将摄像头流推送到媒体服务器【英文标题】:broswer push camera stream to media server 【发布时间】:2020-06-11 03:28:39 【问题描述】:大家。我需要一些帮助来解决一些流问题,这是我的待办事项清单。 我想通过 broswer 将我的相机流、麦克风流传输到媒体服务器和 python 服务器 需要拉这个流来做一些 asr、tts 的事情。之后,它会生成一个回复流并推送回媒体服务器,然后浏览器拉取这个流。我的计划是这样的。
-
浏览器流到 rtmp 服务器使用 rtmp 协议
python 服务器使用 rtmp 拉取这个流
python 服务器将其回复推送到 rtmp 服务器
浏览器拉一下
但是,我的问题是如何将 rtmp 流式传输到 rtmp 服务器?因为据我所知,我可以在浏览器中使用 webrtc 来执行此操作?
所以过程可能是这样的?
-
浏览器流到 janus(或其他 webrtc 服务器)使用 webrtc
python 使用 webrtc 拉取这个流
python 服务器将其回复推送给 janus
浏览器使用 webrtc 拉取此流
但是,我不确定是否可以完成第 2 步或第 3 步,因为我不知道如何在 python 环境中使用 webrtc 并且没有浏览器并使用我自己的流(不是相机流)
或者janus可以将webrtc流转换并推送到rtmp服务器吗?
如有任何帮助,将不胜感激。
【问题讨论】:
【参考方案1】:我知道使用mediasoup,您可以使用 webrtc 将摄像头发送到服务器。然后您可以使用服务器通过 rtp 将其重新传输到您的算法,最后再次使用 webrtc 将响应发送回客户端。
【讨论】:
感谢您的回复,最后我选择了rtmp来做。我发现带有 Flash Flugin 的浏览器可以将 rtmp 流发送到服务器。并且算法使用ffmpeg拉取rtmp流,并将响应发送回rtmp服务器,最后,broswer拉取这个流。 @hahoo 这个插件叫什么? 我使用 janus 而不是 mediasoup,我不知道 janus 如何使用 rtp 将 webrtc 流重新传输到我的算法,我也不知道如何使用 webrtc 发送自己的流(我只知道如何使用相机流..) @hahoo 顺便说一下,你可以将 rtp 发送到 ffmpeg,这是 mediasoup 的用例之一 闪存播放器。哦,我去学习一下这个webrtc服务器,我觉得janus流插件能做的事情很少(可能是我学的不够深),谢谢..以上是关于浏览器将摄像头流推送到媒体服务器的主要内容,如果未能解决你的问题,请参考以下文章
Qt推流程序自动生成网页远程查看实时视频流(视频文件/视频流/摄像头/桌面转成流媒体rtmp+hls+webrtc)
LiveQing高性能RTMPFLVHLS流媒体服务器软件-支持与企业MySQL数据库对接