CN109905763B - 优化播放器音频播放卡顿的方法 - Google Patents

优化播放器音频播放卡顿的方法 Download PDF

Info

Publication number
CN109905763B
CN109905763B CN201910212585.6A CN201910212585A CN109905763B CN 109905763 B CN109905763 B CN 109905763B CN 201910212585 A CN201910212585 A CN 201910212585A CN 109905763 B CN109905763 B CN 109905763B
Authority
CN
China
Prior art keywords
audio
frame
jump
difference
duration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910212585.6A
Other languages
English (en)
Other versions
CN109905763A (zh
Inventor
潘云峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201910212585.6A priority Critical patent/CN109905763B/zh
Publication of CN109905763A publication Critical patent/CN109905763A/zh
Application granted granted Critical
Publication of CN109905763B publication Critical patent/CN109905763B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明涉及流媒体播放技术,其公开了一种优化播放器音频播放卡顿的方法,解决传统技术中由于片源存在时间戳不连续的现象导致的音频播放卡顿的问题。本发明通过对码流实时分析,当检测到码流音频时间戳发生跳变后,计算发生时间戳跳变的帧附近处的音频分贝值,在分贝值比较小的地方适当插入静音帧,从而尽量减小补静音帧带来的音量跳变,达到音频播放流畅的效果,优化节目音频的音质。

Description

优化播放器音频播放卡顿的方法
技术领域
本发明涉及流媒体播放技术,具体涉及一种优化播放器音频播放卡顿的方法。
背景技术
近年来,随着网络带宽的发展和用户的驱动,流媒体技术和相关应用飞速发展,随时随地观看的方式深受教育、娱乐等行业的喜爱,被认为是未来高速宽带网络的主流应用,流媒体技术在各个行业里面被广泛应用。而互联网带宽的不断增加和上网人数的迅速增长,为视频节目在网络上传输创造了条件,现在许多智能电视均能通过互联网观看流媒体点播、直播节目,因此音视频内容播放的效果就直接关系到了用户对产品的体验与评价,从而改善用户视听体验成为了消费电子产品的核心需求之一。
目前市面上音视频片源比较杂乱,参差不齐。而片源的参差不齐也给播放器研发提高了难度。兼容性不够好的播放器在播放不规则片源会出现各种各样的问题,相比视频画面而言,音频的音质效果对用户更为敏感。而市面上片源存在时间戳不连续的现象较为普遍,当音频时间戳不连续时,音频播放会存在音频卡顿等现象,此类问题严重影响用户体验。
发明内容
本发明所要解决的技术问题是:提出一种优化播放器音频播放卡顿的方法,解决传统技术中由于片源存在时间戳不连续的现象导致的音频播放卡顿的问题。
本发明解决上述技术问题所采用的技术方案是:
优化播放器音频播放卡顿的方法,包括以下步骤:
a.实时记录码流的音频时间戳,根据上一帧的时间戳以及帧时长计算当前帧的理论时间戳,根据当前帧的理论时间戳与当前帧的实际时间戳计算跳变差值;
b.判断跳变差值:若1*duration≤跳变差值≤3*duration,则进入步骤c,若跳变差值=0,则进入步骤e,若跳变差值>3*duration,则在当前帧位置补上跳变差值对应的帧数个静音帧,进入步骤e,其中,duration为帧时长;
c.判断当前帧的分贝值:若当前帧的分贝值大于或等于阈值,则继续等待下一帧音频到来,进入步骤d;若小于阈值,则在当前帧位置补上跳变差值对应的帧个数个静音帧,进入步骤e;
d.计算下一帧音频的理论时间戳与实际时间戳之间的差值,若大于3*duration,则在播放所述下一帧位置补上差值对应的帧个数个静音帧,进入步骤e;否则,返回步骤c;
e.播放器按照正常流程播放。
作为进一步优化,步骤c中所述阈值为30dB。由于分贝值低于30dB时,人的耳朵是基本感受不到音频变化的,因此,将阈值设置为30dB,在低于30dB的音频帧处补静音是比较合理的选择,用户是感受不到音频变化的,从而保证音频的播放流畅。
本发明的有益效果是:通过对码流实时分析,当检测到码流音频时间戳发生跳变后,计算发生时间戳跳变的帧附近处的音频分贝值,在分贝值比较小的地方适当插入静音帧,从而尽量减小补静音帧带来的音量跳变,达到音频播放流畅的效果,优化节目音频的音质。
附图说明
图1为本发明实施例中的优化播放器音频播放卡顿的方法流程图。
具体实施方式
本发明旨在提出一种优化播放器音频播放卡顿的方法,解决传统技术中由于片源存在时间戳不连续的现象导致的音频播放卡顿的问题。其核心思想是:通过对码流实时分析,当检测到码流音频时间戳发生跳变后,计算发生时间戳跳变的帧附近处的音频分贝值,在分贝值比较小的地方适当插入静音帧,从而尽量减小补静音帧带来的音量跳变,达到音频播放流畅的效果,优化节目音频的音质。
实施例:
如图1所示,本实施例中的优化播放器音频播放卡顿的方法包括以下步骤:
1.实时记录码流的音频时间戳,计算跳变差值:
造成音频播放卡顿问题,主要是片源码流中存在音频时间戳不连续现象,这种码流片源其实比较普遍,播放器在只有出现这种情况才需要对针对码流在播放过程中进行实时修复。
以音频采样率44100Hz为例,一帧音频时长大约在23ms,因此规则片源中相邻两帧音频之间pts(播放时间戳)差值在23ms,如果相邻两帧音频之间的pts差值大于23ms毫秒,则说明发生了音频时间戳跳变。引起时间戳跳变的原因有多种原因,可能是网络丢包导致或者编码器异常导致。当发生时间戳跳变的情况,播放器在播放过程中需要做修复容错处理,最大程度减少对用户试听节目的影响。
本发明的补静音策略需要实时记录码流的音频时间戳,对于上一帧音频pts,记为pre_pts,并根据上一帧音频的pts计算出当前帧的理论pts(当前帧正常情况下应该的理论值pts),记录为expect_pts,以作为判定时间戳发生跳变与否的依据,expect_pts的计算公式为:
expect_pts=pre_pts+duration
这里的duration为帧时长(即每一帧音频帧播放所需要时间),以音频采样率44100Hz为例,duration时间大约在23ms。
将当前音频帧的实际pts值(记录的时间戳)记为current_pts,其与当前帧的理论pts值expect_pts的差值即是“跳变差值”;
2.比较跳变差值:
若跳变差值=0,则说明书没有发生时间戳跳变,则不需要进行修复处理,进入步骤5的正常播放流程。
若跳变差值>3*duration,则按照市面上的主流播放器的容错处理手段,即在发生跳变的帧处(当前帧)补上跳变差值对应的帧数个静音帧,并更新pre_pts:pre_pts=current_pts;
比如:跳变差值为5个duration,则补上5个静音帧;这是因为时间戳跳变大于3*duration时,直接补静音对用户的体验影响较小。在补静音后进入步骤5的正常播放流程。
若1*duration≤跳变差值≤3*duration,说明时间戳跳变较小,此时如果按照主流播放器的容错处理手段直接补静音可能造成声音不连续(这种问题的根源是编码器编码音频pts异常导致的问题),为了尽量减小音量跳变,需要按照本申请的补静音策略进行处理,进入步骤3;
3.判断当前音频帧的分贝值:
将当前帧的分贝值与阈值进行比较,由于分贝值低于30dB时,人的耳朵是基本感受不到音频变化的,因此,将阈值设置为30dB。如果当前帧的分贝值大于或等于30dB,此时补静音会导致音频视听效果不连续,存在卡顿现象,则需要延时补静音。则继续等待下一帧音频到来,此时更新pre_pts为当前音频帧的理论pts,即:pre_pts=expect_pts,进入步骤4;
若当前帧的分贝值小于30dB,用户是感受不到音频变化的,在此时补静音可以保证音频的播放流畅,并更新pre_pts:pre_pts=current_pts(更新的目的是为了便于后面的帧的理论时间戳的计算)。补静音之后进入步骤5的正常播放流程。音频分贝值的计算基于音频帧解码过后的PCM计算,采用市面上主流算法。
4.音视频同步的判断:
在步骤3中对于当前帧分贝值大于或等于30dB的情况,为了避免视听效果不连续的情况,需要延时补静音,但此时当前帧已经发生了时间戳跳变,下一帧音频帧的实际时间戳都是在当前已经跳变的时间戳基础上进行累加的,有可能会导致下一帧的实际时间戳与理论时间戳差值进一步变大,当差值超过三帧就会导致音视频不同步。
为了避免造成音视频不同步的影响,需要计算下一帧音频的理论时间戳与实际时间戳之间的差值,若大于3*duration,则此时需要立刻补静音,在下一帧处补入跳变差值对应的帧数个静音帧,补静音完成后进入步骤5的正常播放流程。
若下一帧音频的理论时间戳与实际时间戳之间的差值未达到3*duration,则返回步骤3继续判断下一帧的分贝值(此时的“下一帧”即为“当前帧”)。
通过该机制,可以在保证音视频同步的同时,在发送时间戳跳变的帧附近分贝值较小的帧处补静音,从而最大程度减小对用户的视听影响。
5.播放器按照正常流程播放。

Claims (2)

1.优化播放器音频播放卡顿的方法,其特征在于,包括以下步骤:
a.实时记录码流的音频时间戳,根据上一帧的时间戳以及帧时长计算当前帧的理论时间戳,根据当前帧的理论时间戳与当前帧的实际时间戳计算跳变差值;
b.判断跳变差值:若1*duration≤跳变差值≤3*duration,则进入步骤c,若跳变差值=0,则进入步骤e,若跳变差值>3*duration,则在当前帧位置补上跳变差值对应的帧数个静音帧,进入步骤e,其中,duration为帧时长;
c.判断当前帧的分贝值:若当前帧的分贝值大于或等于阈值,则继续等待下一帧音频到来,进入步骤d;若小于阈值,则在当前帧位置补上跳变差值对应的帧个数个静音帧,进入步骤e;
d.计算下一帧音频的理论时间戳与实际时间戳之间的差值,若大于3*duration,则在播放所述下一帧位置补上差值对应的帧个数个静音帧,进入步骤e;否则,返回步骤c;
e.播放器按照正常流程播放。
2.如权利要求1所述的优化播放器音频播放卡顿的方法,其特征在于,
步骤c中所述阈值为30dB。
CN201910212585.6A 2019-03-20 2019-03-20 优化播放器音频播放卡顿的方法 Active CN109905763B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910212585.6A CN109905763B (zh) 2019-03-20 2019-03-20 优化播放器音频播放卡顿的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910212585.6A CN109905763B (zh) 2019-03-20 2019-03-20 优化播放器音频播放卡顿的方法

Publications (2)

Publication Number Publication Date
CN109905763A CN109905763A (zh) 2019-06-18
CN109905763B true CN109905763B (zh) 2021-09-10

Family

ID=66952411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910212585.6A Active CN109905763B (zh) 2019-03-20 2019-03-20 优化播放器音频播放卡顿的方法

Country Status (1)

Country Link
CN (1) CN109905763B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110996182B (zh) * 2019-11-21 2021-07-23 北京奇艺世纪科技有限公司 时间戳处理方法、装置、电子设备及计算机存储介质
CN112423117B (zh) * 2020-06-11 2022-12-16 上海哔哩哔哩科技有限公司 Web端视频播放方法、装置及计算机设备
CN112153446B (zh) * 2020-09-27 2022-07-26 海信视像科技股份有限公司 一种显示设备及流媒体视频音画同步方法
CN114339445B (zh) * 2021-12-16 2023-09-05 以萨技术股份有限公司 实时视频流自适应协调系统及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102215429A (zh) * 2010-04-01 2011-10-12 安凯(广州)微电子技术有限公司 一种用于移动电视的录制方法
EP2498495A1 (en) * 2011-03-11 2012-09-12 Thomson Licensing Decoder and method at the decoder for synchronizing the rendering of contents received through different networks
CN103731716A (zh) * 2014-01-08 2014-04-16 珠海全志科技股份有限公司 一种ts流播放中的音视频同步方法
CN105846940A (zh) * 2016-03-30 2016-08-10 乐视控股(北京)有限公司 时间戳容错控制方法及装置
CN106507217A (zh) * 2016-10-27 2017-03-15 腾讯科技(北京)有限公司 视频流的时间戳的处理方法和装置
CN108495164A (zh) * 2018-04-09 2018-09-04 珠海全志科技股份有限公司 音视频同步处理方法及装置、计算机装置及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8279945B2 (en) * 2008-01-28 2012-10-02 Mediatek Inc. Method for compensating timing mismatch in A/V data stream
US9143820B2 (en) * 2012-03-25 2015-09-22 Mediatek Inc. Method for performing fluent playback control in response to decoding status, and associated apparatus
US9712867B2 (en) * 2013-09-16 2017-07-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Application specific policy implementation and stream attribute modification in audio video (AV) media
CN107566890B (zh) * 2017-09-15 2020-05-22 深圳国微技术有限公司 处理音频流播放异常的方法、装置、计算机装置及计算机可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102215429A (zh) * 2010-04-01 2011-10-12 安凯(广州)微电子技术有限公司 一种用于移动电视的录制方法
EP2498495A1 (en) * 2011-03-11 2012-09-12 Thomson Licensing Decoder and method at the decoder for synchronizing the rendering of contents received through different networks
CN103731716A (zh) * 2014-01-08 2014-04-16 珠海全志科技股份有限公司 一种ts流播放中的音视频同步方法
CN105846940A (zh) * 2016-03-30 2016-08-10 乐视控股(北京)有限公司 时间戳容错控制方法及装置
CN106507217A (zh) * 2016-10-27 2017-03-15 腾讯科技(北京)有限公司 视频流的时间戳的处理方法和装置
CN108495164A (zh) * 2018-04-09 2018-09-04 珠海全志科技股份有限公司 音视频同步处理方法及装置、计算机装置及存储介质

Also Published As

Publication number Publication date
CN109905763A (zh) 2019-06-18

Similar Documents

Publication Publication Date Title
CN109905763B (zh) 优化播放器音频播放卡顿的方法
US10950270B2 (en) Audio modification for adjustable playback rate
US10726871B2 (en) Variable speed playback
CN104618786A (zh) 音视频同步方法和装置
US20150033277A1 (en) Method of buffer management for synchronization of correlated media presentations
CN201781583U (zh) 多路服务器录像回放同步控制系统
US20140376873A1 (en) Video-audio processing device and video-audio processing method
MX2011005782A (es) Metodo y aparato para controlar la reproduccion de datos de video-audio.
CN101715046B (zh) 电子设备和内容再现方法
CN111355975B (zh) 一种直播客户端音视频延时调节播放系统及方法
CN101710997A (zh) 基于mpeg-2系统实现视、音频同步的方法及系统
CN101785007A (zh) 同步数据流的方法
CN103873952B (zh) 一种高效的视频播放丢帧控制系统及其方法
CN105245976A (zh) 音频和视频同步播放的方法及系统
CN107566889A (zh) 音频流流速误差处理方法、装置、计算机装置及计算机可读存储介质
CN111372138A (zh) 一种播放器端的直播低延迟技术方案
CN109168083A (zh) 一种流媒体实时播放方法及装置
CN103442307B (zh) 播放视频流媒体的方法和装置
KR100490403B1 (ko) 오디오 스트림의 버퍼링 제어 방법 및 그 장치
WO2009094841A1 (fr) Procédé pour le saut de chaîne rapide et continu dans un décodeur iptv
CN108540855B (zh) 一种适用于网络直播场景下的自适应低延时流媒体播放方法
US9294204B2 (en) Removing network delay in a live broadcast
US20220256215A1 (en) Systems and methods for adaptive output
CN114979783A (zh) 一种音视频播放方法、装置和电子设备
JP2011244097A (ja) 動画再生端末,動画再生方法及びプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant