一种音频数据质量优化方法技术

技术编号:10817791 阅读:165 留言:0更新日期:2014-12-25 23:25
本发明专利技术公开了一种音频数据质量优化方法,具体流程为:先计算每一帧音频数据的时间戳计数,然后相邻两帧音频数据之间的时间戳计数差值,如果差值大于正常差值的5倍,则采用时效优化算法进行修正;如果差值大于正常差值的1.5倍且小于5倍,则采用质量优先算法修正;如果差值小于正常差值的1.5倍,则不进行修正。本方案修正之后,不再产生暴音,普通听力人员也发觉不了音频内容的缺失,很好的保证了广播电台对这部分音频引用播出的节目质量。本方案适用于数字视频广播中对音频数据实时的优化处理。

【技术实现步骤摘要】
一种音频数据质量优化方法
本专利技术涉及音视频处理领域,尤其是涉及一种数字视频广播传输流中音频数据质量实时优化的方法。
技术介绍
数字视频广播系统中,发布的媒体内容从高度、广度及时效性方面,都远高于一般广播电台。所以,数字视频广播系统中的媒体内容,已经成为广播电台制作节目越来越重要的素材来源。在广播电台业务领域,对来自数字视频广播传输流中多媒体数据主要是对音频数据部分的使用。为了应用方便,必须实现实时音频数据的分离。同时,由于传输信道存在一定的不可靠,导致流媒体数据传输过程中存在丢帧现象,导致媒体数据的连续性被破坏。这种不连续在视听领域主要表现:对于视频部分,造成视频画面质量的影响,如通常所讲的马赛克现象等;对于音频部分,音频波形无法保持连贯,听到的现象,如噪点、爆音、跳音等。中华人民共和国国家知识产权局于2014年04月23日公开了申请公布号为CN103745729A的专利文献,名称是一种音频去噪方法和系统,其方法为将音频有效数据检测与音频去噪相结合,一方面,通过Mel频率参数音频有效数据检测法,获取噪声谱估计的初始值、估计信噪比、并去除非音频有效数据段的噪声;另一方面,通过估计的信噪比及噪声瞬间变化趋势,确定当前瞬间谱减方程,去除音频有效数据段的噪声,从而达到在提升去噪后的性信噪比及减少“音乐噪声”方面的优化实现。但是此方案未能解决音频中的丢帧问题。
技术实现思路
本专利技术主要是解决现有技术所存在的无法解决丢帧问题,可能导致噪点。爆音、跳音等现象的技术问题,提供一种可以修正音频波形不连贯的问题,避免爆音、跳音等现象,提高音频数据在广播电台转播、重播中的质量的音频数据优化方法。本专利技术针对上述技术问题主要是通过下述技术方案得以解决的:一种音频数据质量优化方法,包括以下步骤:步骤一、计算每一帧音频数据的时间戳计数;步骤二、检验相邻两帧音频数据之间的时间戳计数差值,如果差值大于正常差值的5倍,则在相邻两帧之间插入L个静音采样点,L的计算公式如下:L=(P2(t)-P1(t)-J(x))×x/90000P1(t)为前一帧音频数据的时间戳计数,P2(t)为后一帧音频数据的时间戳计数,J(x)为正常差值,x为音频数据的采样率,J(x)的计算公式如下:J(x)=(1152/x)×90000。作为优选,步骤二中,如果相邻两帧音频数据之间的时间戳计数差值大于正常差值的1.5倍且小于正常差值的5倍,则按如下方式进行修正:需要修复的采样点个数为N,FB为波形断开点在原始采样点数据中的序号,BL为断点波形长度,原始采样点数组为SN,修正后输出采样点数组为SoN,P为计算波形能量云矩阵纬度,P=min(BL×3,N),矩阵XP×P初始状态下所有元素均为0,数组BP初始状态下所有元素均为0,变量i、变量row、变量col、变量row2和变量col2的初始值均为0;X[row][col]表示矩阵XP×P的第row行第col列的元素,B[row]表示数组BP的第row个元素;本方案在进行相乘的运算时,如果涉及到数组,则将数组BP看成P行1列的矩阵,其他数组同样处理;S1、对矩阵XP×P和数组BP赋值;S2、对矩阵XP×P求逆,得到逆矩阵X-1P×P;S3、将逆矩阵X-1P×P与数组BP相乘得到数组AP;S4、对矩阵X2(N-P)×P赋值;S5、取矩阵X2(N-P)×P的故障分块子矩阵X2′(N-P)×BL,取得算法为:X2′(N-P)×BL=SubMatrix(X2(N-P)×P,0,N-P,FB,BL);对故障分块子矩阵实行转置处理得到矩阵:X2TBL×(N-P);S6、取矩阵X2(N-P)×P的故障前分块子矩阵X2前′(N-P)×BL,取得算法为:X2前′(N-P)×FB=SubMatrix(X2(N-P)×P,0,N-P,0,FB);S7、取矩阵X2(N-P)×P的故障后分块子矩阵X2后′(N-P)×BL,取得算法为:X2后′(N-P)×FB=SubMatrix(X2(N-P)×P,0,N-P,0,FB);S8、对故障前分块子矩和故障后分块子矩阵进行列合并,得到合并后矩阵Ak(N-P)×(B-BL);S9、取原始采样点SN数组的故障前子集S前FB,取得算法为:S前FB=SubArray(SN,0,FB);S10、取原始采样点SN数组的故障后子集S后(N-FB-BL),取得算法为:S后(N-FB-BL)=SubArray(SN,FB+BL,N-FB-BL);S11、对故障前子集和故障后子集进行合并,得到合并后的数组Sk(N-BL);S12、将矩阵X2TBL×(N-P)和矩阵X2′(N-P)×BL相乘得到矩阵X3BL×BL,即X3BL×BL=X2TBL×(N-P)×X2′(N-P)×BL;S13、对矩阵X3BL×BL求逆得到矩阵X3-1BL×BL;S14、将矩阵X3-1BL×BL中每个元素的符号取反,得到矩阵-X3-1BL×BL,即-X3-1BL×BL=X3-1BL×BL×(-1);S15、将矩阵-X3-1BL×BL与矩阵X2TBL×(N-P)相乘得到矩阵X4BL×(N-P),即X4BL×(N-P)=-X3-1BL×BL×X2TBL×(N-P);S16、将矩阵X4BL×(N-P)与矩阵Ak(N-P)×(B-BL)相乘得到矩阵X5BL×(N-BL),即X5BL×(N-BL)=X4BL×(N-P)×Ak(N-P)×(B-BL);S17、将矩阵X5BL×(N-BL)与数组Sk(N-BL)相乘以后得到数组SuBL,即SuBL=X5BL×(N-BL)×Sk(N-BL);S18、将数组S前FB、数组SuBL和数组S后(N-FB-BL)合并得到数组SoN。数组合并即拼合,例如合并S前FB和数组SuBL,就是将数组S前FB中的各元素依次作为合并后数组中的第1到第FB个元素,将数组SuBL中的各元素依次作为合并后数组中的第FB+1到第FB+BL个元素。SubMatrix和SubArray为C语言中的常规命令。作为优选,所述步骤S1的具体过程如下:S101、当i小于N-P时,进入步骤S12;如果i大于或等于N-P,赋值完成;S102、当i+P小于FB或者i大于FB+BL,进入步骤S13;如果i+P不小于FB且i不大于FB+BL,则i增大1且返回步骤S11;S103、如果row小于P,则进入步骤S14;如果row大于或等于P,则i增大1且返回步骤S11;S104、如果col小于P,则进入步骤S15;如果col大于或等于P,则row增大1且返回步骤S13;S105、将X[row][col]的值与S[i+row]×S[i+col]的值相加以后,赋值给X[row][col];将B[row]的值与S[i+P]×S[i+row]的值相加以后,赋值给B[row];将col增大1,返回步骤S14。作为优选,所述步骤S4的具体过程如下:S401、当row2小于N-P时,进入步骤S42;如果row2大于或等于N-P,则赋值结束;S402、当col2小于P时,进入步骤S43;如果col2大于或等于P,则将row2增大1并返回步骤S41;S403、将-A[col2]赋值给X2[row][row+col];将X2[row][row+P]的值设为1;将col2增大1并返回本文档来自技高网...
一种音频数据质量优化方法

【技术保护点】
一种音频数据质量优化方法,其特征在于,包括以下步骤:步骤一、计算每一帧音频数据的时间戳计数;步骤二、检验相邻两帧音频数据之间的时间戳计数差值,如果差值大于正常差值的5倍,则在相邻两帧之间插入L个静音采样点,L的计算公式如下:L=(P2(t)‑P1(t)‑J(x))×x/90000P1(t)为前一帧音频数据的时间戳计数,P2(t)为后一帧音频数据的时间戳计数,J(x)为正常差值,x为音频数据的采样率,J(x)的计算公式如下:J(x)=(1152/x)×90000。

【技术特征摘要】
1.一种音频数据质量优化方法,其特征在于,包括以下步骤:步骤一、计算每一帧音频数据的时间戳计数;步骤二、检验相邻两帧音频数据之间的时间戳计数差值,如果差值大于正常差值的5倍,则在相邻两帧之间插入L个静音采样点,L的计算公式如下:L=(P2(t)-P1(t)-J(x))×x/90000P1(t)为前一帧音频数据的时间戳计数,P2(t)为后一帧音频数据的时间戳计数,J(x)为正常差值,x为音频数据的采样率,J(x)的计算公式如下:J(x)=(1152/x)×90000;步骤二中,如果相邻两帧音频数据之间的时间戳计数差值大于正常差值的1.5倍且小于正常差值的5倍,则按如下方式进行修正:需要修复的采样点个数为N,FB为波形断开点在原始采样点数据中的序号,BL为断点波形长度,原始采样点数组为SN,修正后输出采样点数组为SoN,P为计算波形能量云矩阵纬度,P=min(BL×3,N),矩阵XP×P初始状态下所有元素均为0,数组BP初始状态下所有元素均为0,变量i、变量row、变量col、变量row2和变量col2的初始值均为0;X[row][col]表示矩阵XP×P的第row行第col列的元素,B[row]表示数组BP的第row个元素;S1、对矩阵XP×P和数组BP赋值;S2、对矩阵XP×P求逆,得到逆矩阵X-1P×P;S3、将逆矩阵X-1P×P与数组BP相乘得到数组AP;S4、对矩阵X2(N-P)×P赋值;S5、取矩阵X2(N-P)×P的故障分块子矩阵X2′(N-P)×BL,取得算法为:X2′(N-P)×BL=SubMatrix(X2(N-P)×P,0,N-P,FB,BL);对故障分块子矩阵实行转置处理得到矩阵:X2TBL×(N-P);S6、取矩阵X2(N-P)×P的故障前分块子矩阵X2前′(N-P)×BL,取得算法为:X2前′(N-P)×FB=SubMatrix(X2(N-P)×P,0,N-P,0,FB);S7、取矩阵X2(N-P)×P的故障后分块子矩阵X2后′(N-P)×BL,取得算法为:X2后′(N-P)×FB=SubMatrix(X2(N-P)×P,0,N-P,0,FB);S8、对故障前分块子矩和故障后分块子矩阵进行列合并,得到合并后矩阵Ak(N-P)×(B-BL);S9、取原始采样点SN数组的故障前子集S前FB,取得算法为:S前FB=SubArray(SN,0,FB);S10、取原始采样点SN数组的故障后子集S后(N-FB-BL),取得算法为:S后(N-FB-BL)=SubArray(SN,FB+BL,N-FB-BL);S11、对故障前子集和故障后子集进行合并,得到合并后的数组Sk(N-BL);S12、将矩阵X2TBL×(N-P)和矩阵X2′(N-P)×BL相乘得到矩阵X3BL×BL,即X3BL×BL=X2TBL×(N-P)×X2′(N-P)×BL;S13、对矩阵X3BL×BL求逆得到矩阵X3-1BL×BL;S14、将矩阵X3-1BL×BL中每个元素的符号取反,得到矩阵-X3-1BL×BL,即-X3-1BL×BL=X3-1BL×BL×(-1);S15、将矩阵-X3-1BL×BL与矩阵X2TBL×(N-P)相乘得到矩阵X4BL×(N-P),即X4BL×(N-P)=-X3-1BL×BL×X2TBL×(N-P);S16、将矩阵X4BL×(N...

【专利技术属性】
技术研发人员:赵凡吕连新
申请(专利权)人:杭州联汇数字科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1