首页 > 代码库 > 音频直播、广播研究
音频直播、广播研究
当今音频的直播和广播,尤其是直播的技术实现成熟的基本上是需要购买的,无论是国内抑或是国外的技术公司。他们主要会帮你出一份完整的解决方案,设计整体架构,甚至包括硬件设备。当然价格是比较昂贵的,那么问题来了,如何搭建免费、好用的电台呢?
IceCast
http://www.icecast.org/ 官方地址
icecast是一个开源免费是多媒体服务器,主要支持ogg,mp3音频文件。
逻辑图
SourceClient是数据采集源,可以用IceS/LiveIce/DarkIce 等来实现,亦可以使用第三方开源APPS直接实现。支持的平台Linux/Unix, Mac OS X, Windows,Android,iOS
传送门http://www.icecast.org/apps/
IceCastServer 为分发服务器 AudioStream(音频流)传递给其进行分发,可以有直播、点播。
网络拓扑结构
图上可了解,支持多个频道Channels,频道信号与Internet通过Cable/DSL联通,为了能够实现负载均衡,可以通过建立多个Icecast Relay(挂载点)。
关键点在于明白直播的架构图,如果项目想要快速搭建直播服务,研究重点在于
1. SourceClient 的选取,决定因素在于数据源的采集方式,是通过PC还Mobile
2. Icecast Server的配置,在IcecastServer的安装目录/etc/icecast.xml很好看懂
接下来就是观众设备实现,可以是电脑、手机、平板,车载设备,简单讲,只要有一个网卡,能处理流的系统,再加上喇叭就完全可以听广播了。
搭建该架构的时候也要考虑到另外一些问题。
1. 直播还好,点播需要购买/共享节目,涉及到版权问题,技术上如果对方用的ogg格式,你不支持,大量转换的工作就要做。所以你前期就要考虑到支持常见的音频格式比如mp3,ogg等等
2. 直播与点播分Server来做,因为点播直接通过http下载就OK。当然也可以合并起来一起做,IcecastServer也是支持的。
3. 负载均衡的问题,比如有10W个观众同时听,可以建立多个Channel,比如10个。每一个让允许最大链接为1W个,这样压力就会骤减。
音频直播、广播研究