CN106792154B - 视频播放器的跳帧同步系统及其控制方法 - Google Patents

视频播放器的跳帧同步系统及其控制方法 Download PDF

Info

Publication number
CN106792154B
CN106792154B CN201611101593.6A CN201611101593A CN106792154B CN 106792154 B CN106792154 B CN 106792154B CN 201611101593 A CN201611101593 A CN 201611101593A CN 106792154 B CN106792154 B CN 106792154B
Authority
CN
China
Prior art keywords
frame
decoding
video
frame skipping
audio
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
CN201611101593.6A
Other languages
English (en)
Other versions
CN106792154A (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.)
Guangdong Sates Information Technology Co Ltd
Original Assignee
Guangdong Sates Information Technology 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 Guangdong Sates Information Technology Co Ltd filed Critical Guangdong Sates Information Technology Co Ltd
Priority to CN201611101593.6A priority Critical patent/CN106792154B/zh
Publication of CN106792154A publication Critical patent/CN106792154A/zh
Application granted granted Critical
Publication of CN106792154B publication Critical patent/CN106792154B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management 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/4508Management of client data or end-user data
    • H04N21/4516Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本发明涉及一种视频播放器的跳帧同步系统及其控制方法,包括播放能力检测模块、跳帧控制模块、音/视频解码模块和音/视频输出模块,此播放器能够解码当前通用格式的视频文件,在视频播放过程中,当播放器检测到播放器处理能力不够时,在保证音频数据正常解码输出的情况下,合理进行视频跳帧处理,从而实现音视频的同步播放;当播放器检测到播放器处理能力足够时,就和通用视频播放器一样进行音视频的正常解码输出,且检测是实时进行的,一旦发现播放能力不足即刻就能精确确定跳帧时间点,对跳帧模式的选择也做到了音视频同步,解决了通用播放器在终端处理能力不足的情况下不能音视频同步播放高压缩比、高分辨率、高帧率的视频内容的问题,改善了用户体验。

Description

视频播放器的跳帧同步系统及其控制方法
技术领域
本发明涉及多媒体信息处理领域,尤其涉及视频播放领域,具体是指一种视频播放器的跳帧同步系统及其控制方法。
背景技术
随着多媒体压缩技术和网络通信技术的发展,媒体业务提供商推出了越来越多的高压缩比、高分辨率、高帧率的视频内容,它将极大地改善用户的视觉体验,丰富用户的娱乐生活。但要播放这些高压缩比、高分辨率、高帧率的视频内容,对终端播放器的计算能力和数据处理能力也提出了很高的要求。
由于很大一部分用户的电视机、机顶盒、手机、平板电脑等播放设备的更新速度跟不上媒体内容清晰度更新换代的速度。比如对当前出现的超高分辨率(如UHD 4k分辨率3840×2160)、高帧率(如高达120p)、高压缩比(如H.265编码)的视频,很多视频播放设备还不支持或不能流畅播放这样的视频。
如果使用老的播放设备中自带的播放器播放这些高压缩比、高分辨率、高帧率的视频内容,就会出现这样的情况:要么播放格式不支持,要么音/视频严重不同步(声音播放正常,图像越来越滞后)。从而严重影响用户体验。如何使播放设备自适应播放大部分通用格式的视频,已经成为当前视频播放领域较为热门的研究课题。
发明内容
为了克服上述现有技术中的问题,本发明提出了一种支持大多数通用视频播放的视频播放器的跳帧同步系统及其控制方法。
本发明的视频播放器的跳帧同步系统及其控制方法具体如下:
该视频播放器的跳帧同步系统,其主要特点是,所述的系统包括播放能力检测模块、跳帧处理模块、音/视频解码输出模块及音/视频输出模块,其中,
所述的播放能力检测模块获取视频数据的基本信息,对所述的视频数据进行播放能力检测并判断视频数据是否需要跳帧处理,根据判断结果传送视频数据至所述的音/视频解码模块或所述的跳帧处理模块;
所述的跳帧处理模块获取视频数据的基本信息,并对需进行跳帧处理的视频数据进行跳帧处理,获取跳帧处理视频数据;
所述的音/视频解码模块用以对其接收到的视频数据和音频数据进行解码,以获取音/视频解码数据,并将所述的音/视频解码数据传送至所述的音/视频输出模块,所述的音/视频解码模块还向所述的播放能力检测模块和所述的跳帧处理模块提供解码信息;
所述的音/视频输出模块用以输出其接收到的所述的音/视频解码数据;
所述的基本信息包括视频数据的帧率;
所述的解码信息包括当前解码图像帧的解码时间戳Tvc、下一个I帧图像的解码时间戳Ti、当前解码音频帧的解码时间戳Tac和解码该帧视频图像所需的时间t。
较佳地,所述的播放能力检测模块包括第一计算单元、第一控制单元和第一判断单元,其中,
所述的第一计算单元用以根据其所获取的解码该帧视频图像所需的时间t获取解码每帧图像的平均花费时间T,且所述的第一计算单元还用以根据所述的视频数据的帧率计算视频数据的解码一帧图像允许最大时间Tmax
所述的第一判断单元用以根据所述的解码每帧图像的平均花费时间T和所述的解码一帧图像允许最大时间Tmax判断视频数据当前是否需要跳帧处理;
所述的控制单元根据所述的第一判断单元得出的判断结果将所述的当前视频数据传送给所述的音/视频解码模块或所述的跳帧处理模块。
较佳地,所述的跳帧处理模块包括第二计算单元、第二判断单元、I帧型跳帧单元、B帧型跳帧单元和第二控制单元,其中,
所述的第二计算单元用以获取播放能力检测参数和音/视频同步参数;
所述的第二判断单元根据需进行跳帧的视频数据的帧率、所述的播放能力检测参数和所述的音/视频同步参数以判断需进行跳帧的视频数据的跳帧模式,且所述的跳帧模式包括I帧型跳帧模式和B帧型跳帧模式;
所述的第二控制单元用以根据所述的第二判断单元的判断将需进行跳帧的视频数据传送给所述的I帧型跳帧单元或所述的B帧型跳帧单元;
其中,所述的I帧型跳帧单元用以实现所述的I帧型跳帧模式,所述的I帧型跳帧模式即为跳过当前帧到下一个I帧之间的所有类型的图像帧;
所述的B帧型跳帧单元用以实现所述的B帧型跳帧模式,所述的B帧型跳帧模式即为跳过当前的B帧,且当前连续3个B帧时保留中间的B帧。
基于上述的系统实现视频播放器跳帧同步控制的方法,其主要特点是,所述的方法包括以下步骤:
(1)所述的播放能力检测模块对接收到的视频数据进行播放能力检测,并判断该视频数据是否需要跳帧处理,如果需要,则所述的播放能力检测模块将所述的视频数据传送给所述的跳帧处理模块,并继续步骤(2);否则所述的播放能力检测模块将所述的视频数据传送给所述的音/视频解码模块,并继续步骤(3);
(2)所述的跳帧处理模块对输入的需进行跳帧的视频数据进行跳帧处理,并将所得的跳帧处理数据传送给所述的音/视频解码模块;
(3)所述的音/视频解码模块对视频数据进行解码,并将所述的音/视频解码数据传送给所述的视频输出模块,且所述的音/视频解码模块将所述的解码信息传送给所述的播放能力检测模块和所述的跳帧处理模块;
(4)所述的音/视频输出模块输出其接收到的视频数据。
较佳地,所述的步骤(1)的具体步骤如下:
(1.1)所述的播放检测模块根据其获取的视频数据的帧率和所述的解码该帧视频图像所需的时间t获取解码一帧图像允许最大时间Tmax和解码每帧图像的平均花费时间T;
(1.2)所述的播放检测模块将计算所述的解码一帧图像允许最大时间Tmax和所述的解码每帧图像的平均花费时间T按以下公式相比较:
ΔT=T-0.5×Tmax
其中所述的ΔT为一播放能力检测参数,所述的T为所述的平均解码每帧图像所需时间,所述的Tmax为所述的解码一帧图像允许最大时间;
(1.3)所述的播放能力检测模块判断所述的ΔT是否大于零,如果所述的ΔT大于零,则判断该视频数据需要进行跳帧操作,并将所述的视频数据传送给所述的跳帧处理模块;否则判断该视频数据不需要进行跳帧操作,所述的播放能力检测模块将视频数据传送给所述的音/视频解码模块。
较佳地,所述的步骤(2)的具体步骤如下:
(2.1)所述的跳帧处理模块根据其获取的解码该视频数据的基本信息,判断该视频数据的跳帧模式为对应于所述的B帧跳帧单元的B帧跳帧模式或对应于所述的I帧跳帧单元的I帧跳帧模式;
(2.2)所述的跳帧处理模块根据该视频数据的跳帧模式将所述的视频数据传送到该跳帧模式对应的所述的I帧跳帧单元、B帧跳帧单元或音/视频解码模块中。
更佳地,所述的步骤(2.1)具体为:
(2.1.1)所述的跳帧处理模块获取当前解码图像帧的解码时间戳Tvc、下一个I帧图像的解码时间戳Ti和当前解码音频帧的解码时间戳Tac,按以下公式计算该视频数据的音/视频同步情况:
ΔT1=Ti-Tac-Tmax
其中,所述的ΔT1为该视频数据的音/视频同步参数,所述的Ti为所述的下一个I帧图像的解码时间戳,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tmax为所述的解码一帧图像所需时间;
(2.1.2)所述的跳帧处理模块判断该ΔT1是否大于零,如果所述的ΔT1的大于零,则继续步骤(2.1.4);否则继续步骤(2.1.3);
(2.1.3)所述的跳帧处理模块判断该视频数据的跳帧模式为I帧跳帧模式并继续所述的步骤(2.2);
(2.1.4)所述的跳帧处理模块按以下公式判断该视频数据的解码是否滞后于所述的音频帧的解码:
ΔT2=Tac-Tvc
其中所述的ΔT2为该视频数据的解码是否滞后于所述的音频帧的解码的判断标准,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tvc当前解码图像帧的解码时间戳;
(2.1.4)所述的跳帧处理模块比较所述的ΔT2和零的大小关系,如果所述的ΔT2大于零,所述的跳帧处理模块判断该视频数据的解码相对于音频帧的解码滞后,并判断该视频数据的跳帧模式为B帧跳帧模式,继续所述的步骤(2.2);否则所述的跳帧处理模块判断该视频数据的解码同步于音频帧的解码,所述的跳帧处理模块将视频数据发送至所述的音/视频解码模块,并继续所述的步骤(3)。
更佳地,所述的步骤(2.2)具体为:
该跳帧处理模块根据其判断的视频数据的跳帧模式,将视频数据传送给所述的I帧跳帧单元或B帧跳帧单元进行处理,以获取I帧跳帧视频数据或B帧跳帧视频数据,且所述的跳帧处理模块将所述的I帧跳帧视频数据或B帧跳帧视频数据传送给所述的音/视频输出模块,继续所述的步骤(3)。
采用了该种视频播放器的跳帧同步系统及其控制方法,由于其存在一播放能力检测模块和一跳帧控制模块,此播放器能够解码当前通用格式的视频文件,在视频播放过程中,当播放器检测到播放器处理能力不够时,在保证音频数据正常解码输出的情况下,合理进行视频跳帧处理,从而实现音视频的同步播放;当播放器检测到播放器处理能力足够时,就和通用视频播放器一样进行音视频的正常解码输出。解决了通用播放器在终端处理能力不足的情况下不能音视频同步播放高压缩比、高分辨率、高帧率的视频内容的问题,改善了用户体验。本发明提供的视频播放器对播放能力的检测是实时进行的,一旦发现播放能力不足即刻就能精确确定跳帧时间点,而且需要跳过的图像帧类型和需要跳过的帧数都是根据播放器处理能力进行动态调节的。
基于跳帧同步方法设计的播放器与通用视频播放器兼容,可应用于没有及时硬件更新的视频播放终端,如标清机顶盒播放高清节目、高清(HD)机顶盒播放超高清(UHD)节目等场合,更具有普遍适用性。
附图说明
图1为本发明的视频播放器的跳帧同步系统及其控制方法的流程图。
图2为本发明的视频播放器的跳帧同步系统的方法的播放能力检测示意图。
图3为本发明的视频播放器的跳帧同步系统的方法的跳帧处理流程图。
具体实施方式
为了更好的说明对本发明进行说明,下面举出一些实施例来对本发明进行进一步的说明。
该视频播放器的跳帧同步系统,其中,所述的系统包括播放能力检测模块、跳帧处理模块、音/视频解码输出模块及音/视频输出模块,其中,
所述的播放能力检测模块获取视频数据的基本信息,对所述的视频数据进行播放能力检测并判断视频数据是否需要跳帧处理,根据判断结果传送视频数据至所述的音/视频解码模块或所述的跳帧处理模块;
所述的跳帧处理模块获取视频数据的基本信息,并对需进行跳帧处理的视频数据进行跳帧处理,获取跳帧处理视频数据;
所述的音/视频解码模块用以对其接收到的视频数据和音频数据进行解码,以获取音/视频解码数据,并将所述的音/视频解码数据传送至所述的音/视频输出模块,所述的音/视频解码模块还向所述的播放能力检测模块和所述的跳帧处理模块提供解码信息;
所述的音/视频输出模块用以输出其接收到的所述的音/视频解码数据;
所述的基本信息包括视频数据的帧率;
所述的解码信息包括当前解码图像帧的解码时间戳Tvc、下一个I帧图像的解码时间戳Ti、当前解码音频帧的解码时间戳Tac和解码该帧视频图像所需的时间t。
所述的播放能力检测模块包括第一计算单元、第一控制单元和第一判断单元,其中,
所述的第一计算单元用以根据其所获取的解码该帧视频图像所需的时间t获取解码每帧图像的平均花费时间T,且所述的第一计算单元还用以根据所述的视频数据的帧率计算视频数据的解码一帧图像允许最大时间Tmax
所述的第一判断单元用以根据所述的解码每帧图像的平均花费时间T和所述的解码一帧图像允许最大时间Tmax判断视频数据当前是否需要跳帧处理;
所述的控制单元根据所述的第一判断单元得出的判断结果将所述的当前视频数据传送给所述的音/视频解码模块或所述的跳帧处理模块。
所述的跳帧处理模块包括第二计算单元、第二判断单元、I帧型跳帧单元、B帧型跳帧单元和第二控制单元,其中,
所述的第二计算单元用以获取一播放能力检测参数和一音/视频同步参数;
所述的第二判断单元根据需进行跳帧的视频数据的帧率、所述的播放能力检测参数和所述的音/视频同步参数以判断需进行跳帧的视频数据的跳帧模式,且所述的跳帧模式包括I帧型跳帧模式和B帧型跳帧模式;
所述的第二控制单元用以根据所述的第二判断单元的判断将需进行跳帧的视频数据传送给所述的I帧型跳帧单元或所述的B帧型跳帧单元;
其中,所述的I帧型跳帧单元用以实现所述的I帧型跳帧模式,所述的I帧型跳帧模式即为跳过当前帧到下一个I帧之间的所有类型的图像帧;
所述的B帧型跳帧单元用以实现所述的B帧型跳帧模式,所述的B帧型跳帧模式即为跳过当前的B帧,且当前连续3个B帧时保留中间的B帧。
基于上述的系统实现视频播放器跳帧同步控制的方法,其中,所述的方法包括以下步骤:
(1)所述的播放能力检测模块对接收到的视频数据进行播放能力检测,并判断该视频数据是否需要跳帧处理,如果需要,则所述的播放能力检测模块将所述的视频数据传送给所述的跳帧处理模块,并继续步骤(2);否则所述的播放能力检测模块将所述的视频数据传送给所述的音/视频解码模块,并继续步骤(3);
(2)所述的跳帧处理模块对输入的需进行跳帧的视频数据进行跳帧处理,并将所得的跳帧处理数据传送给所述的音/视频解码模块;
(3)所述的音/视频解码模块对视频数据进行解码,并将所述的音/视频解码数据传送给所述的视频输出模块,且所述的音/视频解码模块将所述的解码信息传送给所述的播放能力检测模块和所述的跳帧处理模块;
(4)所述的音/视频输出模块输出其接收到的视频数据。
所述的步骤(1)的具体步骤如下:
(1.1)所述的播放检测模块根据其获取的视频数据的帧率和所述的解码该帧视频图像所需的时间t获取所述的解码一帧图像允许最大时间Tmax和一解码每帧图像的平均花费时间T;
(1.2)所述的播放检测模块将计算所述的解码一帧图像允许最大时间Tmax和所述的解码每帧图像的平均花费时间T按以下公式相比较:
ΔT=T-0.5×Tmax
其中所述的ΔT为一播放能力检测参数,所述的T为所述的平均解码每帧图像所需时间,所述的Tmax为所述的解码一帧图像允许最大时间;
(1.3)所述的播放能力检测模块判断所述的ΔT是否大于零,如果所述的ΔT大于零,则判断该视频数据需要进行跳帧操作,并将所述的视频数据传送给所述的跳帧处理模块;否则判断该视频数据不需要进行跳帧操作,所述的播放能力检测模块将视频数据传送给所述的音/视频解码模块。
所述的步骤(2)的具体步骤如下:
(2.1)所述的跳帧处理模块根据其获取的解码该视频数据的基本信息,判断该视频数据的跳帧模式为对应于所述的B帧跳帧单元的B帧跳帧模式或对应于所述的I帧跳帧单元的I帧跳帧模式;
(2.2)所述的跳帧处理模块根据该视频数据的跳帧模式将所述的视频数据传送到该跳帧模式对应的所述的I帧跳帧单元、B帧跳帧单元或音/视频解码模块中。
更佳地,所述的步骤(2.1)具体为:
所述的跳帧处理模块获取当前解码图像帧的解码时间戳Tvc、下一个I帧图像的解码时间戳Ti和当前解码音频帧的解码时间戳Tac,按以下公式计算该视频数据的音/视频同步情况:
ΔT1=Ti-Tac-Tmax
其中,所述的ΔT1为该视频数据的音/视频同步参数,所述的Ti为所述的下一个I帧图像的解码时间戳,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tmax为所述的解码一帧图像允许最大时间;
(2.1.2)所述的跳帧处理模块判断该ΔT1是否大于零,如果所述的ΔT1大于零,则继续步骤(2.1.4);否则继续步骤(2.1.3);
(2.1.3)所述的跳帧处理模块判断该视频数据的跳帧模式为I帧跳帧模式并继续所述的步骤(2.2);
(2.1.4)所述的跳帧处理模块按以下公式判断该视频数据的解码是否滞后于所述的音频帧的解码:
ΔT2=Tac-Tvc
其中所述的ΔT2为该视频数据的解码是否滞后于所述的音频帧的解码的判断标准,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tvc当前解码图像帧的解码时间戳;
所述的跳帧处理模块比较所述的ΔT2和零的大小关系,如果所述的ΔT2大于零,所述的跳帧处理模块判断该视频数据的解码相对于音频帧的解码滞后,并判断该视频数据的跳帧模式为B帧跳帧模式,继续所述的步骤(2.2);否则所述的跳帧处理模块判断该视频数据的解码同步于音频帧的解码,所述的跳帧处理模块将视频数据发送至所述的音/视频解码模块,并继续所述的步骤(3)。
所述的步骤(2.2)具体为:
该跳帧处理模块根据其判断的视频数据的跳帧模式,将视频数据传送给所述的I帧跳帧单元或B帧跳帧单元进行处理,以获取I帧跳帧视频数据或B帧跳帧视频数据,且所述的跳帧处理模块将所述的I帧跳帧视频数据或B帧跳帧视频数据传送给所述的音/视频输出模块,继续所述的步骤(3)。
下面针对本发明的实施例进行详细完整地描述。
请参阅图1,跳帧同步处理过程嵌入到播放器的播放处理流程中,原始音视频数据输入后先进行播放器播放能力的检测,当检测到终端设备播放能力不足时才进行视频帧的跳帧处理,当检测到终端设备的播放能力充足时,即和通用播放器一样进行正常的音视频解码输出。
原始视频是指各种压缩格式的视频数据,如H.264格式压缩的视频,AAC格式压缩的音频,TS格式包装的容器。原始视频数据可以指视频文件,也可以指视频流。
播放能力检测模块与跳帧处理模块是本发明的核心模块,这里的跳帧处理仅对视频图像帧进行跳帧处理,音频数据不能跳帧,以音频帧的时间戳作为播放器的播放时间基准。
音/视频解码模块和音/视频输出模块指对一帧一帧的音视频数据进行解码、缓存后再同步播放。
请参阅图2,原始压缩音视频数据先经过此播放能力检测模块进行播放能力的检测,当检测到终端播放器播放能力不够时,再经过跳帧处理模块进行视频图像的跳帧同步处理;当检测到播放器播放能力足够时,则不经过跳帧处理模块而直接进入到音、视频解码输出模块。
其中第一计算单元计算解码一帧图像允许最大时间Tmax,Tmax是通过此视频的帧率f计算而来:Tmax=1/f,例如视频帧率f=25帧/秒,则Tmax=1/f=1/25=40ms。
且该播放能力检测模块还解码每帧视频图像平均所花的时间T,T=(t1+t2+...+tn)/n,t1、t2和tn为解码从一个I帧开始的第一、第二、…第n帧所花的时间,n为统计的帧数。
当T≤0.5×Tmax时,即当实际解码时间小于等于允许解码时间的一半时,判断播放器的播放处理能力充足;否则认为播放器的播放处理能力可能不足,需要进入后面步骤做进一步的判断和处理。
如果该播放能力检测模块判断视频播放器对该视频的播放能力可能不足时,进入跳帧处理模块,当该播放能力检测模块判断视频播放器对该视频的播放能力充足时,跳过此模块而直接进入到音/视频解码模块和音/视频输出模块。
请参阅图3,该跳帧处理模块记录当前解码图像帧的解码时间戳(DTS),记为Tvc、下一个I帧图像的解码时间戳(DTS),记为Ti和当前解码音频帧的解码时间戳(DTS),记为Tac,其中音频时间戳用以作为播放器同步播放的时间基准,I帧类型的图像是指仅有帧内编码的图像,它的解码不依赖于其它帧的图像,它常用来作为同步参考点。
当Ti-Tac<Tmax时,即当前解码基准时间,即当前解码音频帧的解码时间戳Tac与下一个I帧的解码时间接近时,说明当前解码时间应该同步到解码下一个I帧图像,进入一种类型的I型跳帧模式;否则说明播放器还来得及解码下一个I帧前的图像,继续解码下一个I帧前的图像,且若Tac>Tvc,说明当前视频帧的解码已经滞后于音频帧的解码,进入B帧跳帧模式,否则说明当前视频帧的解码同步于音频帧的解码,该跳帧处理模块将视频数据发送给到音/视频解码模块和音/视频输出模块进行解码输出。
I帧跳帧模式为跳过当前帧到下一个I帧之间的所有类型的图像帧,包括P帧和B帧。P帧是指前向预测图像帧,它的解码依赖于它前面的图像帧,同时它也作为其它图像帧的参考帧。B帧是指双向预测图像帧,它的解码依赖于它前面的和后面的参考图像帧,它不作为其它图像帧的参考帧。
B帧跳帧模式是指跳过当前的B帧图像,其对应的是B帧跳帧单元,当出现连续3个B帧时,通常要保留中间的B帧进行解码输出,这样可以更好地保持视频播放器的流畅性。另外注意这里不能跳过P帧,因为其后的图像P帧或B帧的解码依赖于P帧。
采用了该种视频播放器的跳帧同步系统及其控制方法,由于其存在一播放能力检测模块和一跳帧控制模块,此播放器能够解码当前通用格式的视频文件,在视频播放过程中,当播放器检测到播放器处理能力不够时,在保证音频数据正常解码输出的情况下,合理进行视频跳帧处理,从而实现音视频的同步播放;当播放器检测到播放器处理能力足够时,就和通用视频播放器一样进行音视频的正常解码输出。解决了通用播放器在终端处理能力不足的情况下不能音视频同步播放高压缩比、高分辨率、高帧率的视频内容的问题,改善了用户体验。本发明提供的视频播放器对播放能力的检测是实时进行的,一旦发现播放能力不足即刻就能精确确定跳帧时间点,而且需要跳过的图像帧类型和需要跳过的帧数都是根据播放器处理能力进行动态调节的。
基于跳帧同步方法设计的播放器与通用视频播放器兼容,可应用于没有及时硬件更新的视频播放终端,如标清机顶盒播放高清节目、高清(HD)机顶盒播放超高清(UHD)节目等场合,更具有普遍适用性。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (6)

1.一种视频播放器的跳帧同步系统,其特征在于,所述的系统包括播放能力检测模块、跳帧处理模块、音/视频解码输出模块及音/视频输出模块,其中,
所述的播放能力检测模块获取视频数据的基本信息,对所述的视频数据进行播放能力检测并判断视频数据是否需要跳帧处理,根据判断结果传送视频数据至所述的音/视频解码模块或所述的跳帧处理模块;
所述的跳帧处理模块获取视频数据的基本信息,以音频帧的时间戳作为播放器的播放时间基准,对需进行跳帧处理的视频数据进行I帧跳帧模式、B帧跳帧模式或正常解码,获取跳帧处理视频数据;
所述的音/视频解码模块用以对其接收到的视频数据和音频数据进行解码,以获取音/视频解码数据,并将所述的音/视频解码数据传送至所述的音/视频输出模块,所述的音/视频解码模块还向所述的播放能力检测模块和所述的跳帧处理模块提供解码信息;
所述的音/视频输出模块用以输出其接收到的所述的音/视频解码数据;
所述的基本信息包括视频数据的帧率;
所述的解码信息包括当前解码图像帧的解码时间戳Tvc、下一个I帧图像的解码时间戳Ti、当前解码音频帧的解码时间戳Tac和解码该帧视频图像所需的时间t;
所述的跳帧处理模块通过以下步骤判断该视频数据的跳帧模式为对应于所述的B帧跳帧单元的B帧跳帧模式或对应于所述的I帧跳帧单元的I帧跳帧模式:
(2.1.1)所述的跳帧处理模块获取当前解码图像帧的解码时间戳Tvc、下一个I帧图像的解码时间戳Ti和当前解码音频帧的解码时间戳Tac,按以下公式计算该视频数据的音/视频同步情况:
ΔT1=Ti-Tac-Tmax
其中,所述的ΔT1为该视频数据的音/视频同步参数,所述的Ti为所述的下一个I帧图像的解码时间戳,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tmax为所述的解码一帧图像允许最大时间;
(2.1.2)所述的跳帧处理模块判断该ΔT1是否大于零,如果所述的ΔT1的大于零,则继续步骤(2.1.4);否则继续步骤(2.1.3);
(2.1.3)所述的跳帧处理模块判断该视频数据的跳帧模式为I帧跳帧模式,并将视频数据传送到对应的I帧跳帧单元、B帧跳帧单元或音/视频解码模块中;
(2.1.4)所述的跳帧处理模块按以下公式判断该视频数据的解码是否滞后于所述的音频帧的解码:
ΔT2=Tac-Tvc
其中所述的ΔT2为该视频数据的解码是否滞后于所述的音频帧的解码的判断标准,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tvc当前解码图像帧的解码时间戳;
(2.1.4)所述的跳帧处理模块比较所述的ΔT2和零的大小关系,如果所述的ΔT2大于零,所述的跳帧处理模块判断该视频数据的解码相对于音频帧的解码滞后,并判断该视频数据的跳帧模式为B帧跳帧模式,并将视频数据传送到对应的I帧跳帧单元、B帧跳帧单元或音/视频解码模块中;否则所述的跳帧处理模块判断该视频数据的解码同步于音频帧的解码,所述的跳帧处理模块将视频数据发送至所述的音/视频解码模块,并由音/视频解码模块进行解码。
2.根据权利要求1所述的视频播放器的跳帧同步系统,其特征在于,所述的播放能力检测模块包括第一计算单元、第一控制单元和第一判断单元,其中,
所述的第一计算单元用以根据其所获取的解码该帧视频图像所需的时间t获取解码每帧图像的平均花费时间T,且所述的第一计算单元还用以根据所述的视频数据的帧率计算视频数据的解码一帧图像允许最大时间Tmax
所述的第一判断单元用以根据所述的解码每帧图像的平均花费时间T和所述的解码一帧图像允许最大时间Tmax判断视频数据当前是否需要跳帧处理;
所述的控制单元根据所述的第一判断单元得出的判断结果将所述的当前视频数据传送给所述的音/视频解码模块或所述的跳帧处理模块。
3.根据权利要求1所述的视频播放器的跳帧同步系统,其特征在于,所述的跳帧处理模块包括第二计算单元、第二判断单元、I帧型跳帧单元、B帧型跳帧单元和第二控制单元,其中,
所述的第二计算单元用以获取一播放能力检测参数和一音/视频同步参数;
所述的第二判断单元根据需进行跳帧的视频数据的帧率、所述的播放能力检测参数和所述的音/视频同步参数以判断需进行跳帧的视频数据的跳帧模式,且所述的跳帧模式包括I帧型跳帧模式和B帧型跳帧模式;
所述的第二控制单元用以根据所述的第二判断单元的判断将需进行跳帧的视频数据传送给所述的I帧型跳帧单元或所述的B帧型跳帧单元;
其中,所述的I帧型跳帧单元用以实现所述的I帧型跳帧模式,所述的I帧型跳帧模式即为跳过当前帧到下一个I帧之间的所有类型的图像帧;
所述的B帧型跳帧单元用以实现所述的B帧型跳帧模式,所述的B帧型跳帧模式即为跳过当前的B帧,且当前连续3个B帧时保留中间的B帧。
4.一种基于权利要求1至3中任一项所述的系统实现视频播放器跳帧同步控制的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的播放能力检测模块对接收到的视频数据进行播放能力检测,并判断该视频数据是否需要跳帧处理,如果需要,则所述的播放能力检测模块将所述的视频数据传送给所述的跳帧处理模块,并继续步骤(2);否则所述的播放能力检测模块将所述的视频数据传送给所述的音/视频解码模块,并继续步骤(3);
(2)所述的跳帧处理模块以音频帧的时间戳作为播放器的播放时间基准,对需进行跳帧处理的视频数据进行I帧跳帧模式、B帧跳帧模式或正常解码,并将所得的跳帧处理数据传送给所述的音/视频解码模块;
(3)所述的音/视频解码模块对视频数据进行解码,并将所述的音/视频解码数据传送给所述的视频输出模块,且所述的音/视频解码模块将所述的解码信息传送给所述的播放能力检测模块和所述的跳帧处理模块;
(4)所述的音/视频输出模块输出其接收到的视频数据;
所述的步骤(2)具体包括以下步骤:
(2.1)所述的跳帧处理模块根据其获取的解码该视频数据的基本信息,判断该视频数据的跳帧模式为对应于所述的B帧跳帧单元的B帧跳帧模式或对应于所述的I帧跳帧单元的I帧跳帧模式;
(2.2)所述的跳帧处理模块根据该视频数据的跳帧模式将所述的视频数据传送到该跳帧模式对应的所述的I帧跳帧单元、B帧跳帧单元或音/视频解码模块中;
所述的步骤(2.1)具体为:
(2.1.1)所述的跳帧处理模块获取当前解码图像帧的解码时间戳Tvc、下一个I帧图像的解码时间戳Ti和当前解码音频帧的解码时间戳Tac,按以下公式计算该视频数据的音/视频同步情况:
ΔT1=Ti-Tac-Tmax
其中,所述的ΔT1为该视频数据的音/视频同步参数,所述的Ti为所述的下一个I帧图像的解码时间戳,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tmax为所述的解码一帧图像允许最大时间;
(2.1.2)所述的跳帧处理模块判断该ΔT1是否大于零,如果所述的ΔT1的大于零,则继续步骤(2.1.4);否则继续步骤(2.1.3);
(2.1.3)所述的跳帧处理模块判断该视频数据的跳帧模式为I帧跳帧模式并继续所述的步骤(2.2);
(2.1.4)所述的跳帧处理模块按以下公式判断该视频数据的解码是否滞后于所述的音频帧的解码:
ΔT2=Tac-Tvc
其中所述的ΔT2为该视频数据的解码是否滞后于所述的音频帧的解码的判断标准,所述的Tac为所述的当前解码音频帧的解码时间戳,所述的Tvc当前解码图像帧的解码时间戳;
(2.1.4)所述的跳帧处理模块比较所述的ΔT2和零的大小关系,如果所述的ΔT2大于零,所述的跳帧处理模块判断该视频数据的解码相对于音频帧的解码滞后,并判断该视频数据的跳帧模式为B帧跳帧模式,继续所述的步骤(2.2);否则所述的跳帧处理模块判断该视频数据的解码同步于音频帧的解码,所述的跳帧处理模块将视频数据发送至所述的音/视频解码模块,并继续所述的步骤(3)。
5.根据权利要求4所述的实现视频播放器跳帧同步控制的方法,其特征在于,所述的步骤(1),具体包括以下步骤:
(1.1)所述的播放检测模块根据其获取的视频数据的帧率和所述的解码该帧视频图像所需的时间t获取所述的解码一帧图像允许最大时间Tmax和一解码每帧图像的平均花费时间T;
(1.2)所述的播放检测模块将计算所述的解码一帧图像允许最大时间Tmax和所述的解码每帧图像的平均花费时间T按以下公式相比较:
ΔT=T-0.5×Tmax
其中所述的ΔT为一播放能力检测参数,所述的T为所述的平均解码每帧图像所需时间,所述的Tmax为所述的解码一帧图像允许最大时间;
(1.3)所述的播放能力检测模块判断所述的ΔT是否大于零,如果所述的ΔT大于零,则判断该视频数据需要进行跳帧操作,并将所述的视频数据传送给所述的跳帧处理模块;否则判断该视频数据不需要进行跳帧操作,所述的播放能力检测模块将视频数据传送给所述的音/视频解码模块。
6.根据权利要求4所述的实现视频播放器跳帧同步控制的方法,其特征在于,所述的步骤(2.2)具体为:
该跳帧处理模块根据其判断的视频数据的跳帧模式,将视频数据传送给所述的I帧跳帧单元或B帧跳帧单元进行处理,以获取I帧跳帧视频数据或B帧跳帧视频数据,且所述的跳帧处理模块将所述的I帧跳帧视频数据或B帧跳帧视频数据传送给所述的音/视频输出模块,继续所述的步骤(3)。
CN201611101593.6A 2016-12-02 2016-12-02 视频播放器的跳帧同步系统及其控制方法 Active CN106792154B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611101593.6A CN106792154B (zh) 2016-12-02 2016-12-02 视频播放器的跳帧同步系统及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611101593.6A CN106792154B (zh) 2016-12-02 2016-12-02 视频播放器的跳帧同步系统及其控制方法

Publications (2)

Publication Number Publication Date
CN106792154A CN106792154A (zh) 2017-05-31
CN106792154B true CN106792154B (zh) 2020-02-11

Family

ID=58884561

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611101593.6A Active CN106792154B (zh) 2016-12-02 2016-12-02 视频播放器的跳帧同步系统及其控制方法

Country Status (1)

Country Link
CN (1) CN106792154B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107888975B (zh) * 2017-11-30 2020-02-21 广州酷狗计算机科技有限公司 视频播放方法、装置及存储介质
CN110121098B (zh) * 2018-02-05 2021-08-17 腾讯科技(深圳)有限公司 视频播放方法、装置、存储介质和电子装置
CN110324689B (zh) * 2019-07-08 2022-05-17 成都酷狗创业孵化器管理有限公司 音视频同步播放的方法、装置、终端及存储介质
CN111432271B (zh) * 2020-06-15 2020-09-08 恒信东方文化股份有限公司 一种多屏交互方法及其系统
CN113316012B (zh) * 2021-05-26 2022-03-11 深圳市沃特沃德信息有限公司 基于墨水屏设备的音视频帧同步方法、装置和计算机设备
CN113347412B (zh) * 2021-06-04 2022-07-12 合肥市华宇半导体有限公司 一种dp转hdmi芯片的多方式检测装置
CN114401432B (zh) * 2022-01-27 2024-01-26 广州艾美网络科技有限公司 Mv播放方法、播放终端、服务器设备及娱乐设备系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101079993A (zh) * 2006-05-23 2007-11-28 中国科学院声学研究所 视频播放中的静态丢帧方法
CN101466045A (zh) * 2007-12-20 2009-06-24 上海奇码数字信息有限公司 自适应解码同步装置、同步方法及视频解码和显示系统
CN103856812A (zh) * 2014-03-25 2014-06-11 北京奇艺世纪科技有限公司 一种视频播放方法及装置
CN104822008A (zh) * 2014-04-25 2015-08-05 腾讯科技(北京)有限公司 视频同步方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9288430B2 (en) * 2011-08-10 2016-03-15 Panasonic Intellectual Property Management Co., Ltd. Recording medium, playback device, recording device, playback method and recording method for recording progressive pictures at high frame rate

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101079993A (zh) * 2006-05-23 2007-11-28 中国科学院声学研究所 视频播放中的静态丢帧方法
CN101466045A (zh) * 2007-12-20 2009-06-24 上海奇码数字信息有限公司 自适应解码同步装置、同步方法及视频解码和显示系统
CN103856812A (zh) * 2014-03-25 2014-06-11 北京奇艺世纪科技有限公司 一种视频播放方法及装置
CN104822008A (zh) * 2014-04-25 2015-08-05 腾讯科技(北京)有限公司 视频同步方法及装置

Also Published As

Publication number Publication date
CN106792154A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106792154B (zh) 视频播放器的跳帧同步系统及其控制方法
CN106664458B (zh) 用于发射视频数据的方法、源装置以及存储媒体
US9350780B2 (en) Insertion of graphic overlays into a stream
KR101008764B1 (ko) 쌍방향 미디어 응답 시스템에서 시각 단서를 제공하는 방법
WO2016138844A1 (zh) 音视频文件直播方法和系统、服务器
CN105814900B (zh) 用于在自适应流播环境中管理相邻频道的系统和方法
US9686593B2 (en) Decoding of closed captions at a media server
US8238420B1 (en) Video content transcoding for mobile devices
US8782721B1 (en) Closed captions for live streams
CN101106697A (zh) 数据传输系统、接收装置和方法、以及发送装置和方法
US8607284B2 (en) Method of outputting video content from a digital media server to a digital media renderer and related media sharing system
US20130204973A1 (en) Method for transmitting a scalable http stream for natural reproduction upon the occurrence of expression-switching during http streaming
CN102348117A (zh) 低带宽传输数字高清信号的系统、方法及网络多媒体电视
US9877056B1 (en) Compressed media with still images selected from a video stream
CN111182342A (zh) 基于dlna的媒体数据播放方法、装置、设备以及存储介质
US9872054B2 (en) Presentation of a multi-frame segment of video content
KR100651566B1 (ko) 이동통신 단말기에서 출력 버퍼링을 이용한 멀티미디어재생 장치 및 그 제어 방법
US20080165847A1 (en) Mp4 demultiplexer and method of operating the same
JP2001359071A (ja) データ配信装置及び方法、データ配信システム
KR101684705B1 (ko) 미디어 컨텐츠 재생 장치 및 방법
KR100999224B1 (ko) 중요도 기반의 미디어 제공 시스템 및 방법, 그리고 이에적용되는 서버
US20170264662A1 (en) Method and apparatus for the transmission of the video stream with the comment data
JP2016220035A (ja) 無線通信装置、無線通信プログラム、及び無線通信方法
KR20110101512A (ko) 미디어 컨텐츠 재생 장치 및 방법

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