记录 · 思考 · 实践

让思绪在这里停留。

关于技术、生活,以及一路走来的观察。

音视频基础- 编解码 码控

why rate control Rate control is a crucial step in determining that tradeoff between size and quality. Rate Control Modes CQP(Constant QP) 恒定QP,所有编码图像区域,编码帧,编码片 …

继续阅读

音视频基础- 直播业务

直播业务 直播的业务一般包括:推流,拉流/播放,回源,录制,时移,转码。 推流 直播推流是指通过推流协议,把音视频数据推送到CDN的服务器。 推流协议主要是RTMP,也可以使用WebRTC。 推流端需要把音视频数据封装成FLV格式或者RTP格式的数据。 推流端需要选择最近的一个节点推送数据。 拉流/播放 拉流:服务器之 …

继续阅读

音视频基础- 流媒体协议

流媒体协议 HLS HLS 全称是 HTTP Live Streaming,是一个由 Apple 公司提出的基于 HTTP 的媒体流传输协议,用于实时音视频流的传输。目前HLS协议被广泛的应用于视频点播和直播领域。 HLS协议将整条流切割成一个小的能够经过HTTP下载的媒体文件,而后提供一个配套的媒体列表文件M3U8。 …

继续阅读

webrtc 03 - 常见webrtc流媒体服务器的设计

流行的 webrtc 流媒体服务器 licode janus mesooze mediasoup 整体设计 优缺点 完全支持 WebRTC,文档和教程有限,性能可能表现不佳 高度灵活插件和扩展,支持多种通信模式,依赖特定版本的外部库或系统,升级和维护时可能会遇到兼容性问题 高性能、支持webrtc,可扩展性强,文档和教 …

继续阅读

webrtc 02 - NAT网络和P2P打洞

NAT 原理 NAT(网络地址转换)主要用于在本地网络和外部网络之间转换IP地址。它在改善IP地址利用率和网络安全方面起到了重要作用。NAT有几种主要类型,每种类型在处理网络流量和安全方面都有不同的特点。以下是详细介绍: 1. 全锥形NAT(Full Cone NAT) 特点: 所有外部主机都可以通过相同的外部IP地 …

继续阅读

webrtc-01 视频采集和录制

整体架构 https://webrtc.github.io/webrtc-org/architecture/ 整体设计图 示例 进行视频采集 解释放代码注释中, html5 和 webrtc 标准互通 确实让音视频的生态、开发者的处境变得更好,很好的思路,接触音视频有点晚少了很多有意思的尝试。 <body> …

继续阅读