从 0 打造音视频直播系统
李超
前新东方音视频直播技术专家,前沪江音视频架构师
32579 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 41 讲
WebRTC 1对1通话 (23讲)
从 0 打造音视频直播系统
15
15
1.0x
00:00/00:00
登录|注册

27 | 让我们一起探索Medooze的具体实现吧(上)

SWIG
Medooze架构分析
Medooze的具体实现
主要功能
WebRTC 服务器Medooze

该思维导图由 AI 生成,仅供参考

在咱们专栏的第一模块,我向你介绍了如何使用 WebRTC 进行实现音视频互动。随着 Google 对 WebRTC 的大力推广,目前主流的浏览器都支持了 WebRTC。WebRTC 最主要的功能就是提供端对端的音视频通信,其可以借助 STUN/TURN 服务器完成 NAT 穿越,实现两个端点之间的直接通信。
1 对 1 的实时通信无疑是 WebRTC 最主要的应用场景,但你是否想过 WebRTC 可以通过浏览器实现多人音视频会议呢?更进一步,你是否想过 WebRTC 可以实现一些直播平台中上万人甚至几十万人同时在线的场景呢?
如果你对上面的问题感兴趣,那本文将让你对上面问题有个全面的了解,接下来就让我们一起开启本次神秘之旅吧!

流媒体服务器 Medooze

正如我们在《25 | 那些常见的流媒体服务器,你该选择谁?》一文中介绍的,要实现多个浏览器之间的实时音视频通信(比如音视频会议),那么就一定需要一个支持 WebRTC 协议的流媒体服务器。目前,有很多开源的项目支持 WebRTC 协议, Medooze 就是其中之一。
Medooze 的功能十分强大,通过它你既可以实现 SFU 类型的流媒体服务器,也可以实现 MCU 类型的流媒体服务器。而且,它还支持多种媒体流接入,也就是说,你除了可以通过浏览器(WebRTC)向 Medooze 分享音视频流之外,还可以使用 FFmpeg/VLC 等工具将 RTMP 协议的音视频流推送给 Meoodze。更加神奇的是,无论是 WebRTC 分享的音视频流还是 RTMP 格式的音视频流通过 Medooze 转发后,浏览器就可以将 FFmpeg/VLC 推的流显示出来,而 VLC 也可以将 WebRTC 分享的音视频显示出来,这就是 Medooze 的强大之处。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

Medooze流媒体服务器的文章详细介绍了其实现方式,包括SFU模型、录制回放模型和推流模型。在SFU模型中,文章描述了Medooze服务器的结构和音视频流的中转过程,以及多人音视频互动的实现方式。录制回放模型介绍了Medooze服务器实时录制音视频流并保存到磁盘的过程,以及用户回看录制好的多媒体文件的操作流程。推流模型简要介绍了通过VLC播放器推送RTP流到Medooze服务器,并将此流分发给其他用户的场景。此外,文章还对Medooze的架构进行了分析,介绍了其核心项目media-server和media-server-node,以及media-server-node的源码目录结构和对外接口。整体而言,本文内容详实,涵盖了Medooze流媒体服务器的基本功能和运行流程,适合读者快速了解Medooze的技术特点。文章还介绍了Medooze的整体结构和核心组件的功能,以及WebRTC服务器的初步认知。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《从 0 打造音视频直播系统》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(6)

  • 最新
  • 精选
  • piboye
    media-server-node 编译好像要 node v10 的版本, 高版本的node 编译不过去了,medooze 看来的确不怎么维护了

    作者回复: 还一直维护着呢

    2020-12-31
    2
  • 江枫
    老师:Medooze支持MCU模式,请问有对应的资料推荐吗

    作者回复: 它的 MCU 模式是商用的。如果你想用可以到github上与作者联系。

    2019-11-26
  • Geek_855fe4
    用了一年多的medooze-media-server,最近在看源码,看的一头雾水,感觉都快走火入魔了,感谢老师清晰的组件关系图。另外有点好奇怎么使用vlc向media-server推送RTP,老师可以详细说下吗?谢谢

    作者回复: medooze的我没试,基本原理是通过web接口在服务端打开端口,然后用vlc或ffmpeg向这个端口传RTP包。你可以看一下我的简书,在简书中我会介绍如何通过mediasoup来做到这一点

    2019-09-23
  • Beast-Of-Prey
    感觉好难 一遍过去 五分钟 忘的一干二净

    作者回复: 要多读几遍,如果以前对这块不熟悉的话,确认不太好理解!这块属于比较难的一块知识!

    2019-09-23
  • 周龙亭
    浏览器怎么和媒体服务器建立起连接的呢?

    作者回复: 等第 30 篇文章

    2019-09-15
  • Leeing
    思考题:我理解 nodejs 的性能影响应该只影响 media-server-node 库吧,media-server 是调用的 c/c++,nodejs 应该影响不到它。不知道我理解的对不对
    2022-04-06
收起评论
显示
设置
留言
6
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部