CN108810656B - 一种实时直播ts流的去抖处理方法及处理*** - Google Patents
一种实时直播ts流的去抖处理方法及处理*** Download PDFInfo
- Publication number
- CN108810656B CN108810656B CN201810601747.0A CN201810601747A CN108810656B CN 108810656 B CN108810656 B CN 108810656B CN 201810601747 A CN201810601747 A CN 201810601747A CN 108810656 B CN108810656 B CN 108810656B
- Authority
- CN
- China
- Prior art keywords
- audio
- video
- data
- code stream
- threshold value
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4126—The peripheral being portable, e.g. PDAs or mobile phones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/4424—Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4621—Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种实时直播TS流的去抖处理方法及处理***,其中处理方法包括步骤1,对播放器接收的码流进行监控并获取当前节目的码率;步骤2,根据所述码率动态预先申请对应时间长度的数据缓存空间;步骤3,缓存数据并解码;步骤4,判断所述数据缓存空间的数据量是否小于预设的阈值;若小于则降低音视频渲染速率,提高所述阈值,若大于则恢复成正常音视频渲染速率,降低所述阈值;步骤5,返回步骤1继续进行监控。本发明能很好的消除WiFi网络传输的抖动影响,使得节目起播及时,长时间播放稳定性,提升节目观看体验。
Description
技术领域
本发明涉及音视频流处理方法,尤其涉及一种基于wifi dongle的媒体播放器的实时直播TS流的反馈去抖处理方法及处理***。
背景技术
MPEG2-TS实时码流通过WiFi Dongle装置无线传输给Phone/PAD等智能电子设备上的播放器,实现节目的解码播放,可以方便的实现节目分发。在此产品模型中,节目的分发是透过WiFi来传输的,WiFi传输存在不稳定的特性,即使在信号良好的情况下,也会受到设备、无线路由、信道干扰等因素的影响,传输带宽都会受到一定程度的抖动,特别是在高清节目普及的今天,高码率节目对WiFi传输的要求更高,超出一定幅度的抖动,会造成节目的解码产生卡顿、马赛克等,使音视频体验不稳定。
基于WiFi Dongle分发节目到播放器的方案实施中,为了消除网络的抖动,一般会采取缓冲一定时长的节目数据来消除抖动,这会导致实时节目播放的不及时,或者有些方案不采取缓冲就启动播放,这样虽然保障了播放的及时性,但是无法消除无线网络传输抖动说带来的音视频播放卡顿。
涉及的名词解释:
WiFi Dongle:一种通过WiFi接口提供MPEG2-TS的设备
WiFi Dongle Player:一种从WiFi Dongle设备获取音视频流并解码播放的流媒体播放器。
MPEG2-TS:MPEG2-TS是一用于音效、影像与资料的传输流。
PCR:Programme clock reference,节目参考时钟,DVB传输流里面的基础时钟。
PTS:Presentation Time Stamp,音频或视频帧显示时间戳,主要用于音视频的同步控制。
发明内容
本发明为了解决上述现有技术中的问题,提出一种实时直播TS流的去抖处理方法,包括:
步骤1,对播放器接收的码流进行监控并获取当前节目的码率;
步骤2,根据所述码率动态预先申请对应时间长度的数据缓存空间;
步骤3,缓存数据并解码;
步骤4,判断所述数据缓存空间的数据量是否小于预设的阈值;若小于则降低音视频渲染速率,提高所述阈值,若大于则恢复成正常音视频渲染速率,降低所述阈值;
步骤5,返回步骤1继续进行监控。
本发明还提出了一种实时直播TS流的去抖处理***,包括:码流接收模块,用于接收音视频码流;码流监控模块,实时获取当前的码率,并根据所述码率动态分配对应时长的数据缓存空间;解复用模块,用于将节目码流数据中的音视频进行分离,输出压缩格式的音视频帧;解码模块,用于将所述解复用模块输出的音视频分别进行格式分析并解码输出;音视频帧渲染输出模块,比较数据缓存空间内的数据存量与设定的阈值,根据比较结果控制音视频的渲染速率,同时调整所述阈值。
本发明针对wifi传输的场景,如WiFi Dongle和播放器的应用场景,在WiFi传输存在抖动的现状下,基于播放器应用端设计了一套平滑去抖的机制,很好的兼顾了实时节目的起播的及时性和长时间播放的平滑性,使音视频观看体验得到极大的提升,同时也能监控设备间WiFi传输的品质参数,使得开发者或者用户有效地去调整设备间的传输品质。
附图说明
图1为本发明的流程图;
图2为本发明的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细、完整地说明。
本发明的原理在于,一是在WiFi Dongle播放器端设计码流监控机制,根据两个相邻的PCR码流包之间的包数除于两次PCR的时间差,折算出当前节目的码率。然后基于该第一点中的码流监控模块获取的码率动态预申请一定时间长度(如2秒)的数据缓冲空间。接着,结合第一、第二点,设计一套智能反馈控制调节机制,检测和管理缓冲的数据大小,自动降低解码渲染输出的速率(此速率降低的幅度不影响观看体验,如x0.95速率),使得前级码流缓冲数据量逐渐达到预定的阈值,并在此基础上监控缓冲的变化,动态的进行播放速率的恢复或者降低,以消除节目通过WiFi传输过程的抖动,并且使得节目的起播变得实时。此平滑机制可以通过监控缓冲数据变化的频率可以动态的监控WiFi Dongle和播放器设备之间的WiFi网络质量的稳定性。
下面参照图1,以wifi dongle与播放器之间的应用场景来对本发明提出的实时直播TS流的去抖处理方法进行详细说明。
Step1:播放器的码流接收模块主要负责与WiFi Dongle设备建立基于WiFi的网络传输,接收来WiFI dongle设备分发的节目码流。
Step2:码流监控模块根据接收到的码流进行实时测算。主要是根据节目两个相同PCR标识码的码流包间隔包数除于时间间隔,计算出当前码流的码率,并参照此码率动态申请可以存储一定时间码流数据的数据缓存空间(根据码率x时间长度得出),例如FIFO缓存空间,并参照该数据缓存空间的大小设置一个百分比的阈值(0-100%,如80%等),作为后续反馈调节阈值,该阈值的具体取值本领域内技术人员需要根据实际情况进行设置。
Step3:将码流接收模块接收到的码流存入到上述FIFO缓存空间中。
Step4~5:判断FIFO缓存空间中是否有数据,若无继续等待Step3进行码流的缓存,直到FIFO缓存空间有节目码流数据包,直接传递给解复用模块,解复用模块将音视频节目流进行分离,并且得到音视频各自的压缩帧序列。
Step6~7:启动解码。节目启动播放之前,快速读取足够的节目码流数据,针对音视频压缩帧进行格式分析,得到画面大小,帧率,声音采样率,通道数等重要信息,并设置相应的音视频解码算法和流程,使得节目按照节目的格式输出预期的画面和声音,以及每帧音视频的显示时间戳PTS。
Step8:音视频解码。音视频解码任务分别运行,并解码输出音视频帧和每帧音视频PTS,以供同步渲染输出声音和画面。
Step9:设置渲染速率。负责实时的读取更新并设置音视频同步输出的速度。
Step10:音视频按照音视频帧的时间戳,进行时间上的比较,控制音视频的同步渲染输出。
Step11~13:同步输出音视频的时候,进行对FIFO缓存空间中的数据存量进行判断,若大于等于设定阈值,则按照正常的速率输出节目,若是小于设定阈值,则降低音视频渲染输出的速率(降低后的速率不影响观看体验,如0.95倍速等),通过这套调节机制,可以保障节目及时的启动播放,并且在后续的播放中逐渐缓冲节目数据,达到一定的阈值,使得整套WiFi Dongle Player应用能较好消除码流接收模块的抖动,并可以通过渲染输出速率的变化频率来掌握WiFi的传输品质,并能通过这个变化频率来动态调整FIFO的阈值(变化慢,降低阈值;变化快,提高阈值)。
图2是对应的处理***的框架图,位于播放器端的处理***包括码流接收模块6、码流监控模块11、解复用模块8、解码模块9、音视频帧渲染输出模块10、协议交换模块7、wifi模块5等。
WiFi模块5,该模块在WiFi Dongle和播放器平台上均有,用来实现设备间的数据通讯,符合TCP/IP协议规范。
码流接收模块6,播放器应用中用于接收来自WiFi Dongle的节目数据流,如音视频码流等。
码流监控模块11,实时获取当前的码率,并根据所述码率动态分配对应时长的数据缓存空间;
协议交互模块7,播放器应用中用于负责配对WiFi Dongle设备,锁频,节目过滤,分发等控制。
解复用模块8,用于将节目码流数据中的音视频进行分离,输出压缩格式的音视频帧。
解码模块9,将解复用模块输出的音视频分别进行格式分析,解码输出。
音视频帧渲染输出模块10,此模块负责将解码输出的音视频帧按照音视频同步原理进行同步渲染输出到屏幕和声卡界面,并且可以控制音视频渲染输出的速率,它比较数据缓存空间内的数据存量与设定的阈值,根据比较结果控制音视频的渲染速率,同时调整该阈值。
与播放器通讯的wifi dongle包括wifi模块5、码流数据分发模块3、协议交互模块4、调制解调器2、射频信号接收器1等。
射频信号接收器1负责接收射频模拟信号。
调制解调器2负责将模拟的射频信号转换成MPEG2-TS数据流。
码流数据分发模块3主要负责向与WiFi Dongle连接的播放器平台(手机/平板设备)分发当前节目的数据流。
协议交互模块4主要负责WiFi Dongle设备与播放器设备间的通讯控制,比如设备的配对连接,节目的切换,播放等控制。
本实施所提供的实时直播TS节目流的平滑处理方法及处理***,针对WiFiDongle与Player间的传输抖动进行处理,能有效地解决这类产品的卡顿,同时也能保证节目观看的实时性。而且除了wifi dongle与播放器之间,该处理方法及***还可以适用于类似的播放器产品,比如网络实时前端或者基于其他无线传输节目的场景。
应当理解的是,上述针对具体实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本发明的专利保护范围应以所附权利要求为准。
Claims (7)
1.一种实时直播TS流的去抖处理方法,其特征在于,包括:
步骤1,对播放器接收的码流进行监控并获取当前节目的码率;
步骤2,根据所述码率动态预先申请对应时间长度的数据缓存空间;
步骤3,缓存数据并解码;
步骤4,判断所述数据缓存空间的数据量是否小于预设的阈值;若小于则降低音视频渲染速率,提高所述阈值,若大于则恢复成正常音视频渲染速率,降低所述阈值;
步骤5,返回步骤1继续进行监控。
2.如权利要求1所述的去抖处理方法,其特征在于,所述步骤1中,通过码流PCR间隔动态测算得到所述码率。
3.如权利要求1所述的去抖处理方法,其特征在于,所述步骤3具体包括:
读取数据缓存空间中部的分码流片段,分别产生压缩的音视频帧序列;
判断解码是否开始,若是未开始,则分析并解码音视频数据,得到音视频解码参数;若是已开始,则音视频解码得到音视频渲染帧及对应的PTS;
设置渲染速度;
按照PTS同步输出画面和声音。
4.如权利要求1所述的去抖处理方法,其特征在于,当播放器首次播放或者是用户更换当前节目时,增大所述数据缓存空间,并降低所述阈值。
5.一种实时直播TS流的去抖处理***,其特征在于,包括:
码流接收模块,用于接收音视频码流;
码流监控模块,实时获取当前的码率,并根据所述码率动态分配对应时长的数据缓存空间;
解复用模块,用于将节目码流数据中的音视频进行分离,输出压缩格式的音视频帧;
解码模块,用于将所述解复用模块输出的音视频分别进行格式分析并解码输出;
音视频帧渲染输出模块,比较数据缓存空间内的数据存量与设定的阈值,根据比较结果控制音视频的渲染速率,同时调整所述阈值。
6.如权利要求5所述的去抖处理***,其特征在于,所述码流接收模块通过无线接收音视频码流。
7.如权利要求6所述的去抖处理***,其特征在于,所述码流接收模块通过wifi模块从wifi dongle中接收音视频码流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810601747.0A CN108810656B (zh) | 2018-06-12 | 2018-06-12 | 一种实时直播ts流的去抖处理方法及处理*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810601747.0A CN108810656B (zh) | 2018-06-12 | 2018-06-12 | 一种实时直播ts流的去抖处理方法及处理*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108810656A CN108810656A (zh) | 2018-11-13 |
CN108810656B true CN108810656B (zh) | 2021-10-26 |
Family
ID=64085200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810601747.0A Active CN108810656B (zh) | 2018-06-12 | 2018-06-12 | 一种实时直播ts流的去抖处理方法及处理*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108810656B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111479160B (zh) | 2019-01-23 | 2023-02-21 | 上海哔哩哔哩科技有限公司 | 基于浏览器的Web视频智能缓冲方法、装置和存储介质 |
CN111031338B (zh) * | 2019-12-17 | 2021-09-28 | 杭州当虹科技股份有限公司 | 一种改善在线信源速率异常的方法 |
CN112261445B (zh) * | 2020-10-21 | 2022-07-12 | 深圳市创维软件有限公司 | 流媒体播放方法、装置、设备及计算机可读存储介质 |
CN112616077A (zh) * | 2020-12-14 | 2021-04-06 | 杭州当虹科技股份有限公司 | 一种基于ip的cbr码率发送控制方法 |
CN112954376A (zh) * | 2021-02-04 | 2021-06-11 | 海信电子科技(武汉)有限公司 | 一种视频播放方法及显示设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296158A (zh) * | 2007-04-26 | 2008-10-29 | 深圳市同洲电子股份有限公司 | 一种流媒体数据传输方法及其数据传输装置 |
CN105430475A (zh) * | 2015-11-04 | 2016-03-23 | 北京奇虎科技有限公司 | 视频数据的缓冲方法及装置 |
CN107205160A (zh) * | 2017-06-27 | 2017-09-26 | 青岛海信电器股份有限公司 | 一种针对服务器下发的视频的播放方法及装置 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6301258B1 (en) * | 1997-12-04 | 2001-10-09 | At&T Corp. | Low-latency buffering for packet telephony |
US7162418B2 (en) * | 2001-11-15 | 2007-01-09 | Microsoft Corporation | Presentation-quality buffering process for real-time audio |
US7672742B2 (en) * | 2005-02-16 | 2010-03-02 | Adaptec, Inc. | Method and system for reducing audio latency |
WO2008084179A1 (en) * | 2007-01-08 | 2008-07-17 | Nds Limited | Buffer management |
CN102868908B (zh) * | 2011-07-04 | 2015-05-20 | 哈尔滨融智达网络科技有限公司 | 高效流媒体播放方法和装置 |
CN102802075B (zh) * | 2012-08-24 | 2015-05-20 | 乐视致新电子科技(天津)有限公司 | 一种在线播放缓冲***和方法 |
CN102883217B (zh) * | 2012-09-26 | 2015-04-08 | 华为技术有限公司 | 控制视频播放的方法及装置 |
CN103051955B (zh) * | 2012-12-21 | 2016-08-03 | 华为技术有限公司 | 流媒体播放方法及装置 |
CN103916716B (zh) * | 2013-01-08 | 2017-06-20 | 北京信威通信技术股份有限公司 | 一种无线网络下视频实时传输的码率平滑方法 |
CN104735485A (zh) * | 2015-03-05 | 2015-06-24 | 上海小蚁科技有限公司 | 一种播放视频的方法及装置 |
CN105100876B (zh) * | 2015-08-28 | 2019-04-12 | 北京奇艺世纪科技有限公司 | 一种流媒体的播放方法及装置 |
CN105376607A (zh) * | 2015-10-29 | 2016-03-02 | 深圳云聚汇数码有限公司 | 一种网络抖动环境下的视频直播方法及装置 |
CN105392023B (zh) * | 2015-10-29 | 2019-04-26 | 北京易视云科技有限公司 | 一种网络抖动环境下的视频直播方法及装置 |
CN107396171A (zh) * | 2017-07-24 | 2017-11-24 | 广州酷狗计算机科技有限公司 | 网络直播方法、装置和存储介质 |
CN107948713B (zh) * | 2017-10-31 | 2020-10-27 | 北京飞利信电子技术有限公司 | 一种延时直播方法及*** |
-
2018
- 2018-06-12 CN CN201810601747.0A patent/CN108810656B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296158A (zh) * | 2007-04-26 | 2008-10-29 | 深圳市同洲电子股份有限公司 | 一种流媒体数据传输方法及其数据传输装置 |
CN105430475A (zh) * | 2015-11-04 | 2016-03-23 | 北京奇虎科技有限公司 | 视频数据的缓冲方法及装置 |
CN107205160A (zh) * | 2017-06-27 | 2017-09-26 | 青岛海信电器股份有限公司 | 一种针对服务器下发的视频的播放方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108810656A (zh) | 2018-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108810656B (zh) | 一种实时直播ts流的去抖处理方法及处理*** | |
US11627351B2 (en) | Synchronizing playback of segmented video content across multiple video playback devices | |
JP7120997B2 (ja) | オーディオとビデオのマルチモード同期レンダリング | |
JP4990762B2 (ja) | インターネットプロトコルに用いるストリーミングオーディオとストリーミングビデオとの同期保持 | |
CN101106697B (zh) | 数据传输***、接收装置和方法、以及发送装置和方法 | |
US8655156B2 (en) | Auxiliary audio transmission for preserving synchronized playout with paced-down video | |
EP1786209B1 (en) | Content receiver, video-audio output timing control method, and content providing system | |
CN106686438B (zh) | 一种跨设备的音频图像同步播放的方法、装置及*** | |
CN101710997A (zh) | 基于mpeg-2***实现视、音频同步的方法及*** | |
US20070019931A1 (en) | Systems and methods for re-synchronizing video and audio data | |
US20110216785A1 (en) | Buffer expansion and contraction over successive intervals for network devices | |
KR20050090448A (ko) | 오디오-비쥬얼 콘텐트 전송 | |
US8195829B2 (en) | Streaming media player and method | |
JPWO2005088888A1 (ja) | データ受信装置及びデータ受信方法 | |
CN101715046B (zh) | 电子设备和内容再现方法 | |
KR20100064532A (ko) | 무선 통신 네트워크에서 오디오 및 비디오 동기화 장치 및 방법 | |
US10334293B2 (en) | Multiplexing apparatus, receiving apparatus, multiplexing method, and delay adjustment method | |
US7493644B1 (en) | Method, apparatus, and system for video fast forward functionality in a mobile phone | |
US20080024663A1 (en) | Content receiver terminal device with zapping response improved in viewing multi-channel video content | |
JP2009272945A (ja) | 同期再生装置 | |
US20130166769A1 (en) | Receiving device, screen frame transmission system and method | |
KR101600891B1 (ko) | 복수의 단말기에 출력되는 비디오 및 오디오를 동기화시키는 동기화시스템 및 방법 | |
WO2016008131A1 (en) | Techniques for separately playing audio and video data in local networks | |
KR20070008069A (ko) | 음성/영상신호의 동기화 장치 및 방법 | |
JP3906712B2 (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 |