范晓梅
摘要:本文讨论了一种音频流媒体数据监控平台的实现方案,提出包括数据解析与解码、音频数据分析和报警处理等三大流程环节的解决办法。
Abstract: This paper discusses the implementation scheme of an audio streaming media data monitoring platform, and puts forward solutions of three major process links including data analysis and decoding, audio data analysis and alarm processing.
关键词:音频流媒体;HLS;RTMP;数据监控
Key words: audio streaming media;HLS;RTMP;data monitoring
中图分类号:TP277 文献标识码:A 文章编号:1006-4311(2017)35-0212-02
0 引言
包头广播电视总台下属新闻综合、交通、蒙语、汽车音乐、文艺等5个广播频率,拥有《包头新闻》、《新闻天天听》,《你好,Driver》、《欢乐联通2+1》、《天天美食》、《老橡树音乐之旅》等一批品牌栏目。在“精品立台、人才兴台、经营富台、创新强台”的战略思想指导下,朝着功能多元化、装备数字化、经营集约化、管理精细化、队伍精兵化的目标迈进。技术上,包头电台尝试进行互联网、移动互联网技术与广播技术的深度融合,践行媒体融合的探索,发展互联网、移动互联网广播等网络新媒体。
网络新媒体的音频品质直接影响用户体验。由于网络传输链路具有一定的复杂性,网络音频流的品质问题繁杂,例如节目声音的忽大忽小、爆音、网络流断线等,造成用户体验较差。在当今信息大爆炸的背景下,即便再优秀的节目,如果用户体验差,也不会吸引用户。按照全台网白皮书2.0要求,结合运营实际,建设一套音频流媒体数据监控平台势在必行。
1 系统分析
音频流媒体传输系统结构如图1所示。系统的输入信号包括无线广播音频信号和互联网广播信号组成,经过编码器进行编码,采用RTMP协议,将数据流推送至Wowza流媒体服务器上。由于IOS操作系统的移动客户端(iPhone、iPad等设备)和Android操作系统的移动客户端分别支持HLS和RTMP协议,因此,流媒体服务器需要将数据信号进行解包和组包,封装为HLS和RTMP两种格式网络数据流,发布在互联网上。
2 系统实现
音频流媒体数据监控平台包括解析与解码处理系统、音频数据分析系统、报警处理系统三大部分,如图2所示。其监控的数据源由上图中监测面A的传统节目信号数据流、监测面B的HLS节目数据流和RTMP节目数据流组成,实现了节目内容从数据编码、发布接收整个过程监控。
解析与解码系统的HLS/RTMP协议解析器,输入监控数据流,输出压缩的音频数据帧。通过内存交换和解码器,输出线性的音频数据,作为音频数据分析系统的输入信号。
HLS协议封装的数据包括一个m3u(8)索引文件和对应的多个媒体片文件。系統通过索引文件找到相应的媒体片文件,利用HTTP网络协议逐一取得每帧的流数据。 RTMP协议是基于TCP协议进行封装的上层协议,采用默认端口1935,服务器和客户之间首先通过1536字节的数据包进行握手后,然后发送内容数据,内容数据包括固定长度的包头和一个最长为128字节的包体组成,解析内容数据包,逐一取得每帧的流数据。
解码模块基于FFMPEG解码平台提供的API进行开发,首先注册所有音视频压缩格式,为解码分配内存空间,从HLS/RTMP解析器中获得压缩数据帧,并判断数据格式类型,调用相应的解码器,输出线性的PCM数据帧。
多套节目数据的解析和解码过程,系统在读取数据时,由于网络环境、服务器性能波动等因素,会不定时出现阻塞状态,因此,多套节目数据流如果放在一个主线程中处理,将影响检测数据的真实性。解析和解码系统采用多线程编程,防止数据流之间的相互影响。
在音频数据分析系统中,设定检测信号的报警阈值和持续时间(设置为10秒),并记录故障开始时间和故障恢复时间,并将报警信息输出到报警处理系统进行处理。其中电平检测主要监控节目的音量的大小范围,报警阈值包括最低电平(-40db)、最高电平(-3db)。相位检测主要是监控左右声道的相关系数,并进行归一化处理,报警阈值设置为-1~-0.6和1~0.6,当相关系数落在报警阈值范围内,且持续一定时间后,就自动生成报警信息。断线检测主要是监控网络数据流的网络延时和超时时间。系统参数的设置需要根据电台的网络环境,服务器存储、CPU等资源有关。如果阈值参数设置太严格,数据流稍微有一点偏差,系统就会报警,导致管理人员疲于应付,但阈值参数设置太宽松,就达不到自动监控的目的,因此在设置时,需要多次试验,反复修改,达到理想的阈值参数。
报警处理系统中,报警信息根据不同的紧急程度,对应不同级别的管理人员。例如:断线报警信息定义为最重要级别、电平过低等定义为中等级别、相位反相定义为最低级别。报警管理人员分为技术管理人员、节目管理人员等两大类,技术管理人员主要负责网络传输等技术基础通路的维护,节目管理人员负责节目电平、相位等节目内容质量监控。系统根据系统设置报警管理人员的联系电话、邮箱等基本信息,通过短信、电话和邮件,将报警信息发送到不同的管理者。当故障长时间未得到解决时,可以定义重复发送报警信息的频率。
短信模块通过短信平台的服务接口的API函数,将报警信息通过短信平台发送给相应的管理者。短信平台可以自行建设,也可以租用电信服务商的短息平台。邮件处理模块主要负责将报警信息发送给有关的管理者,系统按照SMTP协议要求,封装的类库SmtpClient,对外提供邮件发送接口API,其中发件人的邮箱地址、邮箱密码和管理者的邮箱地址,设置在系统数据库中。
3 结束语
综上所述,音频流媒体数据监控平台不但要涉及到HLS/RTMP协议的解析、音频数据的解码、节目电平和左右声道相关系数计算、短信平台接口和SMTP邮箱控制等各个流程环节,而且还需要考虑电台网络环境、服务器存储、CPU等设备的性能,进行最佳的监控参数调整,是一个复杂的工程。
结合全台网白皮书2.0,下一步可在此基础上进行播控网、核心生产网、综合业务网、融媒内容平台在内的全域数据监控平台的设计与实现。
参考文献:
[1]国家广播电影电视总局科技司,广播电台融合媒体平台建设技术白皮书[EB/OL].http://www.sarft.gov.cn/art/2016/3/29/art_36_30400.html 2016-02-05.
[2]李煜等译.多媒体数字压缩原理与标准.[M]北京:电子工业出版社,2000:296.
[3]潘志庚译.多媒体技术:计算、通信与应用[M].北京:清华大学出版社,2000:480.endprint