CN104602117A - 一种倍速播放视频的方法及装置 - Google Patents

一种倍速播放视频的方法及装置 Download PDF

Info

Publication number
CN104602117A
CN104602117A CN201510053116.6A CN201510053116A CN104602117A CN 104602117 A CN104602117 A CN 104602117A CN 201510053116 A CN201510053116 A CN 201510053116A CN 104602117 A CN104602117 A CN 104602117A
Authority
CN
China
Prior art keywords
video
frame
play
speed
frames
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.)
Granted
Application number
CN201510053116.6A
Other languages
English (en)
Other versions
CN104602117B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510053116.6A priority Critical patent/CN104602117B/zh
Publication of CN104602117A publication Critical patent/CN104602117A/zh
Application granted granted Critical
Publication of CN104602117B publication Critical patent/CN104602117B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • 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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本发明公开了一种倍速播放视频的方法及装置。本发明中根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段;在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合;解码所述视频帧集合中的视频帧,并按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧。通过本发明可以保留待播放的视频帧序列的大部分场景,在一定程度上避免了场景跳跃和播放卡顿的现象,提高了视频播放的流畅度。

Description

一种倍速播放视频的方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种倍速播放视频的方法及装置。
背景技术
随着多媒体技术的不断发展,基于机顶盒(Set Top Box,STB)的个人视频录像(Personal Video Recorder,PVR)业务不断成熟。用户对PVR的功能要求也越来越高,对录制后的视频进行特技播放也有了更高的要求。
PVR业务中,对录制后的视频进行特技播放的典型应用场景是对视频进行快进快退的倍速播放。由于视频解码器的视频解码能力的限制,目前一般采用只解码I帧的方式,实现对视频进行快进快退的倍速播放。采用只解码I帧的方式实现倍速播放的过程如下:将视频的各视频帧组成的视频帧序列划分为若干个组视频帧(Group of Pictures,GOP),划分得到的每一GOP是指从一个I帧到下一个I帧之间的视频帧序列。进行视频倍速播放的过程中,以GOP为单位,在每一GOP中分别选择出一个I帧,由视频解码器对选择出的I帧进行解码并输出。
上述采用只解码I帧的方式实现倍速播放的方法,在每一GOP中选择出一个I帧,而GOP中包含的视频帧序列的长度长短不一,导致选择出的I帧间的间隔也是长短不一样,并且以GOP为单位进行视频帧的选择,使得I帧之间的间隔也比较大,会导致播放的视频场景大量缺失,进而导致视频播放的流畅度比较低。
发明内容
本发明实施例提供一种倍速播放视频的方法及装置,以提高视频播放的流畅度。
第一方面,本发明实施例提供一种倍速播放视频的方法,包括:
根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,所述最大解码帧率是视频解码器根据待播放视频的分辨率确定的;
在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,所述视频帧集合中的视频帧用于实现按照所述视频播放倍速播放所述待播放视频;
解码所述视频帧集合中的视频帧,并按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧。
结合第一方面,在第一种实现方式中,根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,包括:
判断视频解码器的最大解码帧率是否满足视频播放倍速要求;
若视频解码器的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位,所述倍速播放的类型包括快进播放和快退播放;
若视频解码器的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位;
按照所述划分视频帧组合片段的基本单位,将所述待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
结合第一方面的第一种实现方式,在第二种实现方式中,根据倍速播放的类型确定划分视频帧组合片段的基本单位,包括:
确定倍速播放的类型;
在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位;
在倍速播放为快退播放的情况下,将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
结合第一方面的第二种实现方式,在第三种实现方式中,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,包括:
在倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
结合第一方面的第一种实现方式,在第四种实现方式中,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位,包括:
判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数;
若达到,则将所述播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位,N为所述视频播放倍速下每秒需要传输的视频帧数;
若未达到,则将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
结合第一方面的第四种实现方式,在第五种实现方式中,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,包括:
在倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器的最大解码帧率对应帧数的视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
结合第一方面的第三种实现方式或者第一方面的第五种实现方式,在第六种实现方式中,所述根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,包括:
判断用于存储视频解码器输出的视频帧的显示缓冲存储空间是否能将每一GOP中的视频帧全部存储;
在所述显示缓冲存储空间能够将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合;
在所述显示缓冲存储空间不能将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
结合第一方面或者第一方面的第一种实现方式至第一方面的第六种实现方式中的任一种实现方式,在第七种实现方式中,得到视频帧集合以后,所述方法还包括:
在所述视频帧集合中确定不能被解码的视频帧;
在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧;
将所述参考视频帧加入到所述视频帧集合中。
结合第一方面或者第一方面的第一种实现方式至第一方面的第七种实现方式中的任一种实现方式,在第八种实现方式中,所述按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧,包括:
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
结合第一方面或者第一方面的第一种实现方式至第一方面的第八种实现方式中的任一种实现方式,在第九种实现方式中,解码所述视频帧集合中的视频帧之前,所述方法还包括:
解码所述视频帧集合中各视频帧的参考视频帧。
结合第一方面的第九种实现方式,在第十种实现方式中,解码所述视频帧集合中各视频帧的参考视频帧之后,所述方法还包括:
根据所述视频播放倍速,选择是否输出解码得到的参考视频帧。
第二方面,提供一种倍速播放视频的装置,包括:
划分单元,用于根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,所述最大解码帧率是视频解码器根据待播放视频的分辨率确定的;
选择单元,用于在所述划分单元划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,所述视频帧集合中的视频帧用于实现按照所述视频播放倍速播放所述待播放视频;
解码单元,用于解码所述选择单元选择得到的所述视频帧集合中的视频帧;
输出单元,用于按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出所述解码单元解码得到的视频帧。
结合第二方面,在第一种实现方式中,所述划分单元,具体用于按如下方式根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段:
判断视频解码器的最大解码帧率是否满足视频播放倍速要求;
若视频解码器的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位,所述倍速播放的类型包括快进播放和快退播放;
若视频解码器的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位;
按照所述划分视频帧组合片段的基本单位,将所述待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
结合第二方面的第一种实现方式,在第二种实现方式中,所述划分单元,具体用于按如下方式根据倍速播放的类型确定划分视频帧组合片段的基本单位:
确定倍速播放的类型;
在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位;
在倍速播放为快退播放的情况下,将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
结合第二方面的第二种实现方式,在第三种实现方式中,所述选择单元,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
结合第二方面的第一种实现方式,在第四种实现方式中,所述划分单元,具体用于按如下方式根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位:
判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数;
若达到,则将所述播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位,N为所述视频播放倍速下每秒需要传输的视频帧数;
若未达到,则将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
结合第二方面的第四种实现方式,在第五种实现方式中,所述选择单元,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器的最大解码帧率对应帧数的视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
结合第二方面的第三种实现方式或者第二方面的第五种实现方式,在第六种实现方式中,所述选择单元,具体用于按如下方式根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合:
判断用于存储视频解码器输出的视频帧的显示缓冲存储空间是否能将每一GOP中的视频帧全部存储;
在所述显示缓冲存储空间能够将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合;
在所述显示缓冲存储空间不能将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
结合第二方面或者第二方面的第一种实现方式至第二方面的第六种实现方式中的任一种实现方式,在第七种实现方式中,所述选择单元,还用于:
在得到视频帧集合以后,在所述视频帧集合中确定不能被解码的视频帧,在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧,将所述参考视频帧加入到所述视频帧集合中。
结合第二方面或者第二方面的第一种实现方式至第二方面的第七种实现方式中的任一种实现方式,在第八种实现方式中,所述输出单元,具体用于按如下方式按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧:
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
结合第二方面或者第二方面的第一种实现方式至第二方面的第八种实现方式中的任一种实现方式,在第九种实现方式中,所述解码单元,还用于:
解码所述视频帧集合中的视频帧之前,解码所述选择单元选择得到的视频帧集合中各视频帧的参考视频帧。
结合第二方面的第九种实现方式,在第十种实现方式中,所述输出单元,还用于:
在所述解码单元解码所述视频帧集合中各视频帧的参考视频帧之后,根据所述视频播放倍速,选择是否输出解码得到的参考视频帧。
本发明实施例提供的倍速播放视频的方法及装置,根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,使得选择出的视频帧能够覆盖视频帧的大部分场景,保留了待播放视频的大部分场景,并且选择出的视频帧之间的帧间间隔相对较均匀,故可以在一定程度上避免了场景跳跃和播放卡顿的现象,提高了视频播放的流畅度。
附图说明
图1为PVR业务倍速播放系统架构图;
图2为本发明实施例提供的倍速播放视频的方法流程图;
图3为本发明实施例提供的划分视频帧组合片段的实现流程图;
图4A-图4B为本发明实施例提供的确定划分视频帧组合片段的基本单位的实现方式示意图;
图5为本发明实施例提供的在各视频帧组合片段中分别选择视频帧,得到视频帧集合的实现方法流程图;
图6为本发明实施例提供的在各视频帧组合片段中分别选择视频帧,得到视频帧集合的又一实现方法流程图;
图7为本发明实施例提供的在各视频帧组合片段中分别选择视频帧,得到视频帧集合的再一实现方法流程图;
图8为本发明实施例快退倍速播放情况下选择倍速播放的视频帧以及反序输出的示意图;
图9为本发明实施例高倍速播放情况下选择倍速播放的视频帧的示意图;
图10为本发明实施例低倍速播放情况下选择倍速播放的视频帧的示意图;
图11为本发明实施例输出解码得到的视频帧的实现方法流程图;
图12为本发明实施例提供的倍速播放视频的装置构成示意图;
图13为本发明实施例提供的倍速播放视频的设备构成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。
本发明实施例提供的倍速播放视频的方法,可应用于PVR业务系统中,图1所示为PVR业务倍速播放系统架构图。机顶盒在PVR录制时生成码流文件和索引文件,码流文件可为传输流(Transport Stream,TS)格式,其中的数据组织形式是以TS包为单位,每一个视频帧数据可能包含多个TS包。索引文件则记录了TS文件中每一个视频帧的信息,包括帧类型、在文件中的位置、每一帧的大小、每一帧的时间戳等信息。进行PVR播放时,PVR模块读取索引文件中的每一个视频帧的索引,然后获取索引描述的视频帧数据在TS文件中的对应位置,并将从TS文件中读取到的每一帧数据传送给解复用器(Demultiplexer,DEMUX),DEMUX将TS数据解析为基本流(ElementaryStream,ES)数据,并传送给视频解码器,视频解码器和显示模块按照设定的解码参数和播放参数进行视频帧的解码与显示输出。PVR模块在传送帧数据的过程中需要对视频解码器进行解码控制,选择视频解码器的解码模式。PVR模块在传送帧数据的过程中还需要对显示模块进行控制,调节显示模块的视频输出帧率,使播放效果符合用户设置的视频播放倍速。
图2所示为本发明实施例提供的倍速播放视频的方法流程图,如图2所示,包括:
S101:根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
本发明实施例中待播放视频和视频播放倍速都是由用户设置的。视频解码器的最大解码帧率是视频解码器根据待播放视频的视频分辨率确定的。待播放视频的视频分辨率可由待播放视频的码流文件以及索引文件中记录的待播放视频的属性信息获得,视频解码器针对不同的视频分辨率具有不同的最大解码帧率,视频分辨率与最大解码帧率之间的对应关系为出厂设置的默认值,故在确定了待播放视频的视频分辨率后,可确定视频解码器对应该待播放视频的最大解码帧率。
S102:在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合。
本发明实施例中可将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,然后在划分得到的各视频帧组合片段中,按照固定帧间间隔分别选择至少一个视频帧,以得到包含用于实现按照用户设置的视频播放倍速播放待播放视频的视频帧的视频帧集合,可实现将待播放视频的大部分场景保留,并且选择出的视频帧之间的帧间间隔相对较均匀,在各倍速条件下都可避免场景跳跃和播放卡顿的现象,最终达到场景切换平滑均匀的播放效果,提高视频播放的流畅度。
S103:解码视频帧集合中的视频帧。
本发明实施例中在待播放视频中各视频帧组成的视频帧序列划分得到的各视频帧组合片段中,按照固定帧间间隔分别选择视频帧,得到视频帧集合后,可根据索引文件中的每一个视频帧的索引,获取视频帧集合中各视频帧对应的视频码流在TS文件中的对应位置,然后由视频解码器对视频帧集合中各视频帧进行解码。
S104:按待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧。
本发明实施例中根据倍速播放设置的是快进播放还是快退播放,选择按待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧。
本发明实施例提供的倍速播放视频的方法,根据用户设置的视频播放倍速以及视频解码器对应于待播放视频的最大解码帧率,在由待播放视频的各视频帧组成的视频帧序列划分得到的各视频帧组合片段中分别选择视频帧,故可以保留待播放视频的大部分场景,在各倍速条件下都可避免场景跳跃和播放卡顿的现象,提高了视频播放的流畅度。并且,本发明实施例中在各视频帧组合片段中,按照固定的帧间间隔选择视频帧,使最终选择得到的视频帧集合中的各视频帧之间的帧间间隔均匀,达到场景切换平滑均匀的播放效果。
待播放视频的视频分辨率是固定的,故视频解码器对应于待播放视频的最大解码帧率也是固定的,根据用户设置的视频播放倍速不同,可能会出现视频解码器的最大解码帧率满足或者不满足用户设置的视频播放倍速要求的情况。例如视频解码器对应于待播放视频的最大解码帧率为2路高清(1920*1088)30fps,即每秒可以解码高清视频60帧,待播放视频的视频原始帧率为高清(1920*1088)30fps,即正常播放视频时每秒播放30帧,则对于2倍速,每秒需要播放的视频帧的数量为:30(视频原始帧率)*2(倍速)=60帧,此种情况为视频解码器的最大解码帧率满足用户设置的视频播放倍速要求的情况。假设视频解码器对应于待播放视频的最大解码帧率仍为2路高清(1920*1088)30fps,即每秒可以解码高清视频60帧,待播放视频的视频原始帧率仍为高清(1920*1088)30fps,即正常播放视频时每秒播放30帧,则对于4倍速,每秒需要播放的视频帧的数量为:30(视频原始帧率)*4(倍速)=120帧,视频解码器的最大解码帧率为60帧每秒,60<120,此种情况为视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求的情况。
图3所示为本发明实施例提供的根据视频播放倍速以及视频解码器的最大解码帧率,划分视频帧组合片段的实现流程图,如图3所示,包括:
S201:判断视频解码器的最大解码帧率是否满足视频播放倍速要求。若视频解码器的最大解码帧率满足视频播放倍速要求,则执行S202a,若视频解码器的最大解码帧率不满足视频播放倍速要求,则执行S202b。
S202a:若视频解码器的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位。
本发明实施例中根据倍速播放的类型是快进播放还是快退播放,选择不同的方式确定划分视频帧组合片段的基本单位,实现过程如图4A所示,包括:
S2021a:确定倍速播放的类型。
本发明实施例中倍速播放的类型包括快进播放和快退播放。
S2022a:在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位。
S2023a:在倍速播放为快退播放的情况下,将待播放视频帧中的每一GOP作为划分视频帧组合片段的基本单位。
S202b:若视频解码器的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位。
本发明实施例中根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位,可采用如图4B所示的确定方式:
S2021b:判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数,若达到,则执行S2022b,否则执行S2023b。
本发明实施例中判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数,一般用于判断用户设置的播放倍速为高倍速还是低倍速。该设定倍数可由用户根据实际情况进行设定,例如可将设定倍数设置为8,若视频播放倍速下每秒需要传输的视频帧数,大于视频解码器的最大解码帧率对应的视频帧数的8倍,则可认为是高倍速,若视频播放倍速下每秒需要传输的视频帧数,小于视频解码器的最大解码帧率对应的视频帧数的8倍,则可认为是低倍速。
S2022b:将播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位。
N为视频播放倍速下每秒需要传输的视频帧数,即N为用户设置的播放倍速与视频原始帧率的乘积得到的数值。例如,用户设置的视频播放倍速为16倍的高倍速,视频原始帧率为30fps,则16倍的播放倍速下,每秒需要传输视频帧数为30*16=480帧。
S2023b:将待播放视频帧中的每一GOP作为划分视频帧组合片段的基本单位。
S203:按照所述划分视频帧组合片段的基本单位,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
本发明实施例中对应视频解码器的最大解码帧率是否满足视频播放倍速的要求,也相应有不同的视频帧选择方式,图5所示为本发明实施例提供的在划分得到的各视频帧组合片段中按照固定帧间间隔分别选择视频帧,得到视频帧集合的实现方法流程图,如图5所示,包括:
S301:判断视频解码器的最大解码帧率是否满足视频播放倍速要求。
S302:判断倍速播放类型是快退播放还是快进播放。
需要说明的是,本发明实施例并不限定S301和S302的执行先后顺序,例如可先执行S301,再执行S302,也可先执行S302,再执行S301。
本发明实施例中若倍速播放为快进播放,且视频解码器的最大解码帧率满足视频播放倍速要求,则执行S303a,若倍速播放为快退播放,且视频解码器的最大解码帧率满足视频播放倍速要求,则执行S304a。
S303a:在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合。
S304a:在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合。
本发明实施例中所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
本发明实施例中若倍速播放为快进播放,且视频解码器的最大解码帧率不满足视频播放倍速要求,则执行S303b,若若倍速播放为快退播放,且视频解码器的最大解码帧率不满足视频播放倍速要求,则执行S304b。
S303b:在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器的最大解码帧率对应帧数的视频帧集合。
S304b:在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合。
本发明实施例中所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
在快退播放的情况下,需要以GOP为单位反序输出,故即使视频解码器对应于待播放视频的最大解码帧率满足用户设置的视频播放倍速要求,由于存储视频解码器输出的视频帧的显示缓冲存储空间大小是有限的,存储视频帧的显示缓冲存储空间也有可能不能将每一GOP中的待播放的视频帧序列全部存储,故本发明实施例中为了保证视频快退倍速播放的正常进行,在保证按照反向解码顺序选择视频帧的基础上,还需考虑存储视频解码器输出的视频帧的显示缓冲存储空间大小。
本发明实施例中根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合可采用如图6所示的实现方式,如图6所示,包括:
S3041:判断用于存储视频解码器输出的视频帧的显示缓冲存储空间是否能将每一GOP中的视频帧全部存储,若显示缓冲存储空间能够将每一GOP中的视频帧全部存储,则执行S3042,否则执行S3043。
S3042:在所述显示缓冲存储空间能够将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合。
S3043:在所述显示缓冲存储空间不能将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
当然,本发明实施例中为保证视频帧的正确解码,在视频帧的显示缓冲存储空间不能将每一GOP中的待播放的视频帧序列全部存储的情况下,也可在满足选择出的视频帧解码参考关系完整的要求的前提下,选择出帧间间隔较均匀的视频帧,作为视频帧集合;也可选择出每一GOP中的所有视频帧作为视频帧集合,添加显示控制信息,在进行视频显示输出时,保证每一GOP中显示输出的帧数不超过显示缓冲存储空间的帧数,丢弃一些视频帧,间隔均匀的显示输出视频帧。
由于不同帧类型的码流解码规则在不同的视频协议中不尽相同,例如对于I帧码流的解码不需要依赖其他帧的码流,P帧码流的解码需要参考在时间顺序上之前的帧,B帧码流解码需要参考在时间顺序上之前和之后的帧。如果当前待解码的视频帧的参考关系不完整,即需要参考的视频帧对应的视频码流缺失或错误,都会导致当前视频帧解码出现错误或解码失败,故本发明实施例中为保证视频解码器能够对挑选出的视频帧集合中的各视频帧进行正确的解码,则需要在各视频帧组合片段中选择出解码参考关系完整的视频帧,本发明实施例中选择解码参考关系完整的视频帧是指该需要被解码的视频帧以及解码该视频帧需要参考的其他帧都被选择。
本发明实施例中为实现选择的视频帧集合中的各视频帧的参考关系完整,即保证视频帧集合中的各视频帧都能正确解码,可在得到视频帧以后在视频帧集合中确定不能被解码的视频帧,在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧;将所述参考视频帧加入到所述视频帧集合中。
本发明实施例中涉及的参考视频帧即指解码某一视频帧时需要参考的视频帧,故不能被解码的视频帧的参考视频帧即指该不能被解码的视频帧能够被解码时所需要参考的视频帧。
本发明实施例中为实现选择的视频帧集合中的各视频帧的参考关系完整,并能尽量实现选择的各视频帧之间间隔均匀保留大部分场景的目的,可采用如图7所示的视频帧选择方法,如图7所示,包括:
S501:在划分得到的每一视频帧组合片段中,按照固定的帧间间隔,进行视频帧的初始选择,得到初始选择的视频帧。
S502:根据初始选择的视频帧的帧类型,判断初始选择的视频帧是否能被解码。若初始选择的视频帧能被解码,则进行S503a,若初始选择的视频帧不能被解码,则进行S503b。
S503a:将所述初始选择的视频帧作为视频帧集合中的视频帧以得到视频帧集合。
S503b:在所述初始选择的视频帧所在的视频帧组合片段中,选择所述初始选择的视频帧的参考视频帧,并将所述参考视频帧以及所述初始选择的视频帧作为视频帧集合中的视频帧以得到视频帧集合。
本发明实施例上述提供的视频帧挑选方法,在每一视频帧组合片段中先按照固定帧间隔选择视频帧,实现视频帧间的间隔均匀,为了保证正确解码,在当前视频帧组合片段中选择的视频帧不能被解码的情况下,在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧,并将所述参考视频帧加入到所述视频帧集合中,实现选择的视频帧集合中的各视频帧的参考关系完整,并能尽量实现选择的各视频帧之间间隔均匀保留大部分场景,实现平滑均匀的播放效果。
本发明实施例提供的上述实施例,可根据用户设置的视频播放倍速、视频解码器对应待播放视频的最大解码帧率,以及用户设置的倍速播放类型是快进播放还是快退播放,选择相应的视频帧选择方法。
例如,用户设置的视频播放倍速为16倍的高倍速,视频原始帧率为30fps,则16倍的视频播放倍速下,每秒需要传输视频帧数为30*16=480帧,故可将每秒传输的视频帧数480帧作为视频帧组合片段。视频解码器对应于待播放视频的最大解码帧率为60fps,则进行快进倍速播放的视频帧选择的过程中,则需要从480帧中较均匀地挑选出来60帧的视频帧作为视频帧集合中的视频帧,当然,本发明实施例中也需在满足解码参考关系完整的选择方式进行选择,得到帧间间隔较均匀的倍速播放的视频帧。对于快退倍速播放的视频帧选择的过程中,选择方式类似,但是需要保证GOP内部视频帧按照播放时间顺序、各GOP间按照播放时间从后向前的反向解码顺序,按照固定帧间间隔选择视频帧以得到视频帧集合。
例如用户设置的视频播放倍速为2倍的低倍速,视频原始帧率为30fps,则2倍的视频播放倍速下,每秒需要传输视频帧数为30*2=60帧,视频解码器对应于待播放视频的最大解码帧率为30fps,则进行快进倍速播放的视频帧选择的过程中,则可从每个GOP中较均匀地挑选出来一半的视频帧作为视频集合中的视频帧,当然,本发明实施例中也需在满足解码参考关系完整的选择方式进行选择,得到帧间间隔较均匀的倍速播放的视频帧。对于快退倍速播放的视频帧选择的过程中,选择方式类似,但是需要从每一GOP中内部视频帧按照播放时间顺序、各GOP间按照播放时间从后向前的反向解码顺序,按照固定帧间间隔选择视频帧以得到视频帧集合。
本发明实施例以下将结合实际应用对上述实施例中根据用户设置的视频播放倍速以及视频解码器对应于待播放视频的最大解码帧率,选择视频帧,得到视频帧集合的过程进行举例说明。
一、视频解码器对应于待播放视频的最大解码帧率满足用户设置的视频播放倍速要求
A、倍速播放为快进播放
将待播放的视频帧序列中的全部视频帧,作为视频帧集合。
B、倍速播放为快退播放
由于快退播放过程中,不能将待播放的视频帧序列中的全部视频帧对应的视频码流解码完毕后再反序输出,故需要以每一GOP为单位,GOP内部视频帧按照播放时间顺序、各GOP间按照播放时间从后向前的顺序,根据视频帧的显示缓冲存储空间,选择倍速播放的视频帧,得到视频帧集合。
图8所示为快退倍速播放情况下选择倍速播放的视频帧以及反序输出的示意图,图8中以视频帧的显示缓冲存储空间能够将每一GOP中的待播放的视频帧序列全部存储的情况下,将待播放的视频帧序列中的全部视频帧,作为视频帧集合为例进行说明,视频帧的播放时间顺序为GOP(0)、GOP(1)、GOP(n)和GOP(n+1),快退倍速播放情况下选择倍速播放的视频帧时,以GOP为单位,依次选择GOP(n+1)、GOP(n)、GOP(1)和GOP(0)中的视频帧,视频解码器将每一个GOP中的视频帧对应的视频码流正常解码出来后,按照反向播放时间顺序显示输出解码得到的视频帧。
本发明实施例中若视频帧的显示缓冲存储空间不能够将每一GOP中的待播放的视频帧序列全部存储,以图8中待播放视频为例,若GOP大小为12,视频帧的显示缓冲存储空间只能存放6帧视频帧,则在进行倍速播放视频帧选择时可隔一帧丢弃一帧,同时也需在满足解码参考关系完整的选择方式前提下进行选择,选择出6帧视频帧。当然需要说明的是,本发明实施例中也可选择出12帧视频帧,进行视频显示输出时,隔一帧丢弃一帧,最终按照反向播放时间顺序显示输出。
二、视频解码器对应于待播放视频的最大解码帧率不满足用户设置的视频播放倍速要求
A、高倍速播放(用户设置的视频播放倍速下每秒需要传输的视频帧数,达到视频解码器的最大解码帧率对应的视频帧数的设定倍数)
将用户设置的播放倍速下每秒需要传输的N个视频帧作为视频帧组合片段,N为用户设置的播放倍速与视频原始帧率的乘积得到的数值。
例如,用户设置的倍速为16倍的高倍速,视频原始帧率为30fps,则16倍的播放倍速下,每秒需要传输视频帧数为30*16=480帧,故可将每秒传输的视频帧数480帧作为视频帧组合片段。视频解码器对应于待播放视频的最大解码帧率为60fps,则进行快进倍速播放的视频帧选择的过程中,则需要从480帧中较均匀地挑选出来60帧的视频帧作为倍速播放的视频帧,如图9所示,即需要从每8个视频帧中选择一个视频帧,则首先选到I帧,然后选择第二个P帧。当然本发明实施例中选择的第二个P帧由于其需要参考I帧之后的第一个P帧,故本发明实施例中可直接选择解码参考关系完整的第一个P帧。
B、低倍速播放(用户设置的视频播放倍速下每秒需要传输的视频帧数,未达到视频解码器的最大解码帧率对应的视频帧数的设定倍数)
将视频原始帧率对应的每秒传输的视频帧序列中的各GOP作为所述视频帧组合片段。
例如用户设置的播放倍速为2倍速,视频原始帧率为30fps,则2倍的播放倍速下,每秒需要传输视频帧数为30*2=60帧,视频解码器对应于待播放视频的最大解码帧率为30fps,则进行快进倍速播放的视频帧选择的过程中,则可从每个GOP中较均匀地挑选出来一半的视频帧作为倍速播放的视频帧,如图10所示。
本发明实施例中为了使倍速播放的视频能够达到用户设置的播放倍速,解码所述视频帧集合中各视频帧后,可采用如图11所示的实现方式,将解码得到的视频帧按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出,如图11所示,包括:
S601:判断视频解码器的最大解码帧率是否满足用户设置的视频播放倍速要求。
S602:判断用户设置的倍速播放类型是快退播放还是快进播放。
需要说明的是,本发明实施例并不限定S601和S602的执行先后顺序,例如可先执行S601,再执行S602,也可先执行S602,再执行S601。
本发明实施例中若用户设置的倍速播放类型为快进播放,且视频解码器的最大解码帧率满足用户设置的视频播放倍速要求,则执行S603a,若用户设置的倍速播放类型为快退播放,且视频解码器的最大解码帧率满足用户设置的视频播放倍速要求,则执行S604a。
S603a:在视频解码器对应于待播放视频的最大解码帧率满足用户设置的视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
S604a:在视频解码器的最大解码帧率满足用户设置的视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
本发明实施例中若用户设置的倍速播放类型为快进播放,且视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求,则执行S603b,若用户设置的倍速播放类型为快退播放,且视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求,则执行S604b。
S603b:在视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
S604b:在视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
本发明实施例上述输出解码得到的视频帧的方式,可根据选择的倍速播放的视频帧以及视频解码器的最大解码帧率,确定视频输出帧率进行倍速播放的播放速度控制,达到更好的播放效果。
本发明实施例中为保证视频帧集合中各视频帧能够正常解码,在解码所述视频帧集合中各视频帧之前,还可包括如下步骤:
解码所述视频帧集合中各视频帧的参考视频帧。
本发明实施例解码所述视频帧集合中各视频帧的参考视频帧,可保证各视频帧的参考视频帧已被解码,保证视频帧集合中各视频帧能够被正常解码。
本发明实施例中对于解码得到的参考视频帧可根据实际需要选择是否显示输出,即解码所述视频帧集合中各视频帧的参考视频帧之后,还包括如下步骤:
根据视频播放倍速,选择是否输出解码得到的参考视频帧。
基于上述实施例提供的倍速播放视频的方法,本发明实施例还提供一种倍速播放视频的装置1200,如图12所示,本发明实施例提供的倍速播放视频的装置1200包括划分单元1201、选择单元1202、解码单元1203和输出单元1204其中,
划分单元1201,用于根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,所述最大解码帧率是视频解码器根据待播放视频的分辨率确定的。
选择单元1202,用于在所述划分单元1201划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,所述视频帧集合中的视频帧用于实现按照所述视频播放倍速播放所述待播放视频。
解码单元1203,用于解码所述选择单元1202选择得到的所述视频帧集合中的视频帧。
输出单元1204,用于按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出所述解码单元1203解码得到的视频帧。
在第一种实现方式中,所述划分单元1201,具体用于按如下方式根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段:
判断视频解码器的最大解码帧率是否满足视频播放倍速要求。
若视频解码器的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位,所述倍速播放的类型包括快进播放和快退播放。
若视频解码器的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位。
按照所述划分视频帧组合片段的基本单位,将所述待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
在第二种实现方式中,所述划分单元1201,具体用于按如下方式根据倍速播放的类型确定划分视频帧组合片段的基本单位:
确定倍速播放的类型。
在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位。
在倍速播放为快退播放的情况下,将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
在第三种实现方式中,所述选择单元1202,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合。
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
在第四种实现方式中,所述划分单元1201,具体用于按如下方式根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位:
判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数。
若达到,则将所述播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位,N为所述视频播放倍速下每秒需要传输的视频帧数。
若未达到,则将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
在第五种实现方式中,所述选择单元1202,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器的最大解码帧率对应帧数的视频帧集合。
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
在第六种实现方式中,所述选择单元1202,具体用于按如下方式根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合:
判断用于存储视频解码器输出的视频帧的显示缓冲存储空间是否能将每一GOP中的视频帧全部存储。
在所述显示缓冲存储空间能够将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合。
在所述显示缓冲存储空间不能将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
在第七种实现方式中,所述选择单元1202,还用于:
在得到视频帧集合以后,在所述视频帧集合中确定不能被解码的视频帧,在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧,将所述参考视频帧加入到所述视频帧集合中。
在第八种实现方式中,所述输出单元1204,具体用于按如下方式按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧:
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
在第九种实现方式中,所述解码单元1203,还用于:
解码所述视频帧集合中的视频帧之前,解码所述选择单元1202选择得到的视频帧集合中各视频帧的参考视频帧。
在第十种实现方式中,所述输出单元1204,还用于:
在所述解码单元1203解码所述视频帧集合中各视频帧的参考视频帧之后,根据所述视频播放倍速,选择是否输出解码得到的参考视频帧。
本发明实施例提供的倍速播放视频的装置1200,可用来执行上述实施例涉及的倍速播放视频的方法,对于本发明实施例提供的倍速播放视频的装置1200相关描述不够详尽的地方,可参阅对相关方法实施例及其附图的相关描述,在此不再赘述。
本发明实施例提供的倍速播放视频的装置1200,根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,使得选择出的视频帧能够覆盖视频帧的大部分场景,保留了待播放视频的大部分场景,并且选择出的视频帧之间的帧间间隔相对较均匀,故可以在一定程度上避免场景跳跃和播放卡顿的现象,提高了视频播放的流畅度。
基于上述实施例提供的倍速播放视频的方法及装置,本发明实施例还提供一种倍速播放视频的设备1300,如图13所示,倍速播放视频的设备1300包括存储器1301、处理器1302、视频解码器1303和接口1304。当然本发明实施例根据实际情况还可以包括例如通信总线等。
本发明实施例中存储器1301可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。这些存储器通过总线与处理器相连接。
本发明实施例中处理器1302,可以在单芯片、多芯片或多个电子元件上实现,并可采用多种体系结构,包括专用或嵌入式处理器、专用处理器和控制器等。
视频解码器1303,可以在在单芯片、多芯片或多个电子元件上实现。
接口1304,可使用任何收发器一类的装置,用于与其他设备或通信网络通信。
本发明实施例中,执行本发明方案的应用程序代码保存在存储器1301中,并由处理器13021来调用执行。
处理器1302用于调用所述存储器1301中存储的应用程序,根据视频播放倍速以及视频解码器1303的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,所述最大解码帧率是视频解码器1303根据待播放视频的分辨率确定的。在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,所述视频帧集合中的视频帧用于实现按照所述视频播放倍速播放所述待播放视频,将得到的视频帧集合传送给视频解码器1303,视频解码器1303,用于解码处理器1302选择的所述视频帧集合中的视频帧,通过接口1304按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧。
在第一种实现方式中,所述处理器1302,具体用于按如下方式根据视频播放倍速以及视频解码器1303的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段:
判断视频解码器1303的最大解码帧率是否满足视频播放倍速要求;
若视频解码器1303的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位,所述倍速播放的类型包括快进播放和快退播放;
若视频解码器1303的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器1303的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位;
按照所述划分视频帧组合片段的基本单位,将所述待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
在第二种实现方式中,所述处理器1302,具体用于按如下方式根据倍速播放的类型确定划分视频帧组合片段的基本单位:
确定倍速播放的类型;
在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位;
在倍速播放为快退播放的情况下,将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
在第三种实现方式中,所述处理器1302,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器1303输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
在第四种实现方式中,所述处理器1302,具体用于按如下方式根据视频播放倍速下每秒需要传输的视频帧数与视频解码器1303的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位:
判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器1303的最大解码帧率对应的视频帧数的设定倍数;
若达到,则将所述播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位,N为所述视频播放倍速下每秒需要传输的视频帧数;
若未达到,则将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
在第五种实现方式中,所述处理器1302,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器1303的最大解码帧率对应帧数的视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器1303输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
在第六种实现方式中,所述处理器1302,具体用于按如下方式根据反向解码顺序以及用于存储视频解码器1303输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合:
判断用于存储视频解码器1303输出的视频帧的显示缓冲存储空间是否能将每一GOP中的视频帧全部存储;
在所述显示缓冲存储空间能够将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合;
在所述显示缓冲存储空间不能将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
在第七种实现方式中,所述处理器1302,还用于:
得到视频帧集合以后,在所述视频帧集合中确定不能被解码的视频帧;在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧;将所述参考视频帧加入到所述视频帧集合中。
在第八种实现方式中,所述处理器具体用于按如下方式通过接口1304按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧:
在视频解码器1303的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器1303的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧;
在视频解码器1303的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器1303的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器1303的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器1303的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
在第九种实现方式中,所述视频解码器1303,还用于:
解码所述视频帧集合中各视频帧的参考视频帧之后,根据所述视频播放倍速,选择是否输出解码得到的参考视频帧。
在第十种实现方式中,所述处理器1302,还用于:
在所述视频解码器1303解码所述视频帧集合中各视频帧的参考视频帧之后,根据所述视频播放倍速,选择是否输出所述视频解码器1303解码得到的参考视频帧。
本发明实施例提供的倍速播放视频的设备1300,可用来执行上述实施例涉及的倍速播放视频的方法,对于本发明实施例提供的倍速播放视频的设备1300相关描述不够详尽的地方,可参阅对相关方法实施例及其附图的相关描述,在此不再赘述。
本发明实施例提供的倍速播放视频的设备1300,根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,使得选择出的视频帧能够覆盖视频帧的大部分场景,保留了待播放视频的大部分场景,并且选择出的视频帧之间的帧间间隔相对较均匀,故可以在一定程度上避免场景跳跃和播放卡顿的现象,提高了视频播放的流畅度。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (22)

1.一种倍速播放视频的方法,其特征在于,包括:
根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,所述最大解码帧率是视频解码器根据待播放视频的视频分辨率确定的;
在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,所述视频帧集合中的视频帧用于实现按照所述视频播放倍速播放所述待播放视频;
解码所述视频帧集合中的视频帧,并按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧。
2.如权利要求1所述的方法,其特征在于,根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,包括:
判断视频解码器的最大解码帧率是否满足视频播放倍速要求;
若视频解码器的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位,所述倍速播放的类型包括快进播放和快退播放;
若视频解码器的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位;
按照所述划分视频帧组合片段的基本单位,将所述待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
3.如权利要求2所述的方法,其特征在于,根据倍速播放的类型确定划分视频帧组合片段的基本单位,包括:
确定倍速播放的类型;
在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位;
在倍速播放为快退播放的情况下,将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
4.如权利要求3所述的方法,其特征在于,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,包括:
在倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
5.如权利要求2所述的方法,其特征在于,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位,包括:
判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数;
若达到,则将所述播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位,N为所述视频播放倍速下每秒需要传输的视频帧数;
若未达到,则将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
6.如权利要求5所述的方法,其特征在于,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,包括:
在倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器的最大解码帧率对应帧数的视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
7.如权利要求4或6所述的方法,其特征在于,所述根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,包括:
判断用于存储视频解码器输出的视频帧的显示缓冲存储空间是否能将每一GOP中的视频帧全部存储;
在所述显示缓冲存储空间能够将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合;
在所述显示缓冲存储空间不能将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
8.如权利要求1-7任一项所述的方法,其特征在于,得到视频帧集合以后,所述方法还包括:
在所述视频帧集合中确定不能被解码的视频帧;
在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧;
将所述参考视频帧加入到所述视频帧集合中。
9.如权利要求1-8任一项所述的方法,其特征在于,所述按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧,包括:
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
10.如权利要求1-9任一项所述的方法,其特征在于,解码所述视频帧集合中的视频帧之前,所述方法还包括:
解码所述视频帧集合中各视频帧的参考视频帧。
11.如权利要求10所述的方法,其特征在于,解码所述视频帧集合中各视频帧的参考视频帧之后,所述方法还包括:
根据所述视频播放倍速,选择是否输出解码得到的参考视频帧。
12.一种倍速播放视频的装置,其特征在于,包括:
划分单元,用于根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,所述最大解码帧率是视频解码器根据待播放视频的分辨率确定的;
选择单元,用于在所述划分单元划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,所述视频帧集合中的视频帧用于实现按照所述视频播放倍速播放所述待播放视频;
解码单元,用于解码所述选择单元选择得到的所述视频帧集合中的视频帧;
输出单元,用于按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出所述解码单元解码得到的视频帧。
13.如权利要求12所述的装置,其特征在于,所述划分单元,具体用于按如下方式根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段:
判断视频解码器的最大解码帧率是否满足视频播放倍速要求;
若视频解码器的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位,所述倍速播放的类型包括快进播放和快退播放;
若视频解码器的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位;
按照所述划分视频帧组合片段的基本单位,将所述待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
14.如权利要求13所述的装置,其特征在于,所述划分单元,具体用于按如下方式根据倍速播放的类型确定划分视频帧组合片段的基本单位:
确定倍速播放的类型;
在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位;
在倍速播放为快退播放的情况下,将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
15.如权利要求14所述的装置,其特征在于,所述选择单元,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
16.如权利要求13所述的装置,其特征在于,所述划分单元,具体用于按如下方式根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位:
判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数;
若达到,则将所述播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位,N为所述视频播放倍速下每秒需要传输的视频帧数;
若未达到,则将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
17.如权利要求16所述的装置,其特征在于,所述选择单元,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
在倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器的最大解码帧率对应帧数的视频帧集合;
在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
18.如权利要求15或17所述的装置,其特征在于,所述选择单元,具体用于按如下方式根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合:
判断用于存储视频解码器输出的视频帧的显示缓冲存储空间是否能将每一GOP中的视频帧全部存储;
在所述显示缓冲存储空间能够将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合;
在所述显示缓冲存储空间不能将每一GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
19.如权利要求12-18任一项所述的装置,其特征在于,所述选择单元,还用于:
在得到视频帧集合以后,在所述视频帧集合中确定不能被解码的视频帧,在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧,将所述参考视频帧加入到所述视频帧集合中。
20.如权利要求12-19任一项所述的装置,其特征在于,所述输出单元,具体用于按如下方式按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧:
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧;
在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
21.如权利要求12-20任一项所述的装置,其特征在于,所述解码单元,还用于:
解码所述视频帧集合中的视频帧之前,解码所述选择单元选择得到的视频帧集合中各视频帧的参考视频帧。
22.如权利要求21所述的装置,其特征在于,所述输出单元,还用于:在所述解码单元解码所述视频帧集合中各视频帧的参考视频帧之后,根据所述视频播放倍速,选择是否输出解码得到的参考视频帧。
CN201510053116.6A 2015-01-31 2015-01-31 一种倍速播放视频的方法及装置 Active CN104602117B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510053116.6A CN104602117B (zh) 2015-01-31 2015-01-31 一种倍速播放视频的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510053116.6A CN104602117B (zh) 2015-01-31 2015-01-31 一种倍速播放视频的方法及装置

Publications (2)

Publication Number Publication Date
CN104602117A true CN104602117A (zh) 2015-05-06
CN104602117B CN104602117B (zh) 2018-03-16

Family

ID=53127552

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510053116.6A Active CN104602117B (zh) 2015-01-31 2015-01-31 一种倍速播放视频的方法及装置

Country Status (1)

Country Link
CN (1) CN104602117B (zh)

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105025357A (zh) * 2015-06-05 2015-11-04 北京中电兴发科技有限公司 一种视频倒放的方法
CN105323637A (zh) * 2015-10-29 2016-02-10 无锡天脉聚源传媒科技有限公司 一种视频处理方法及装置
CN105430506A (zh) * 2015-11-06 2016-03-23 浙江宇视科技有限公司 一种视频回放中防止报文丢失的方法及装置
CN105898626A (zh) * 2015-12-11 2016-08-24 乐视网信息技术(北京)股份有限公司 用于生成倒播视频的方法、装置及播放设备
CN106331871A (zh) * 2015-07-08 2017-01-11 阿里巴巴集团控股有限公司 一种实现视频流快进或快退的方法及装置
CN106454417A (zh) * 2016-11-11 2017-02-22 青岛海信宽带多媒体技术有限公司 流媒体倍速播放方法及装置
CN107172486A (zh) * 2017-05-24 2017-09-15 维沃移动通信有限公司 一种视频解码方法和移动终端
CN107613365A (zh) * 2017-09-04 2018-01-19 浙江大华技术股份有限公司 一种视频播放方法及装置
CN105430506B (zh) * 2015-11-06 2018-08-31 浙江宇视科技有限公司 一种视频回放中防止报文丢失的方法及装置
WO2018161843A1 (zh) * 2017-03-10 2018-09-13 杭州海康威视数字技术股份有限公司 一种视频播放速度调整方法及装置
CN109151572A (zh) * 2018-09-21 2019-01-04 北京奇艺世纪科技有限公司 一种播放方法及装置
CN109391847A (zh) * 2017-08-08 2019-02-26 中国电信股份有限公司 流媒体卡顿的监测方法及监测装置
CN109391585A (zh) * 2017-08-03 2019-02-26 杭州海康威视数字技术股份有限公司 视频数据处理方法、装置、终端及计算机可读存储介质
CN110012315A (zh) * 2019-03-15 2019-07-12 北京奇艺世纪科技有限公司 一种视频播放方法、装置及电子设备
CN110121098A (zh) * 2018-02-05 2019-08-13 腾讯科技(深圳)有限公司 视频播放方法、装置、存储介质和电子装置
CN110572712A (zh) * 2018-06-05 2019-12-13 杭州海康威视数字技术股份有限公司 一种解码方法和装置
CN110830838A (zh) * 2018-08-10 2020-02-21 高新兴科技集团股份有限公司 一种安防高清录像倒播方法及装置
CN111355981A (zh) * 2020-03-06 2020-06-30 Oppo广东移动通信有限公司 视频数据播放方法、装置、存储介质及电子设备
CN105307013B (zh) * 2015-10-22 2020-09-22 厦门雅迅网络股份有限公司 一种快进播放视频帧选择方法
CN111726683A (zh) * 2019-03-20 2020-09-29 海信视像科技股份有限公司 一种媒体播放方法、装置、电子设备及存储介质
CN111970559A (zh) * 2020-07-09 2020-11-20 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN113038222A (zh) * 2021-03-08 2021-06-25 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN113207040A (zh) * 2021-04-15 2021-08-03 广州市云上科技有限公司 一种视频远程快速回放的数据处理方法、装置及系统
CN113613049A (zh) * 2021-07-22 2021-11-05 山东云缦智能科技有限公司 机顶盒媒体播放器进度条平滑拖动的方法
CN113612981A (zh) * 2021-08-25 2021-11-05 福建天晴数码有限公司 一种基于视频的3d图形实时渲染的方法及其系统
CN114257857A (zh) * 2022-01-04 2022-03-29 海信视像科技股份有限公司 显示设备及视频倍速播放方法
CN114257878A (zh) * 2020-09-21 2022-03-29 深圳富桂精密工业有限公司 倍速播放视频的方法、计算机装置及存储介质
CN114257846A (zh) * 2021-12-23 2022-03-29 杭州登虹科技有限公司 基于内容感知的移动端自适应视频倍速播放方法
CN114666603A (zh) * 2022-05-06 2022-06-24 厦门美图之家科技有限公司 一种视频解码方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1575595A (zh) * 2001-10-23 2005-02-02 汤姆森特许公司 使用信息文件的快进特技模式和倒退特技模式
CN1784898A (zh) * 2002-12-24 2006-06-07 Lg电子有限公司 视频再现设备及其智能跳转方法
CN101600092A (zh) * 2009-06-12 2009-12-09 中兴通讯股份有限公司 网络视频录像的生成和播放方法及系统
US7764863B1 (en) * 2002-03-06 2010-07-27 Bigband Networks Inc. System and method for providing trick modes
CN101841692A (zh) * 2010-04-23 2010-09-22 深圳市茁壮网络股份有限公司 视频流快进快退的方法
CN101854508A (zh) * 2009-03-30 2010-10-06 三星电子株式会社 反向回放编码的多媒体内容的方法和装置
CN103581741A (zh) * 2012-07-26 2014-02-12 三星电子(中国)研发中心 特效播放设备和方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1575595A (zh) * 2001-10-23 2005-02-02 汤姆森特许公司 使用信息文件的快进特技模式和倒退特技模式
US7764863B1 (en) * 2002-03-06 2010-07-27 Bigband Networks Inc. System and method for providing trick modes
CN1784898A (zh) * 2002-12-24 2006-06-07 Lg电子有限公司 视频再现设备及其智能跳转方法
CN101854508A (zh) * 2009-03-30 2010-10-06 三星电子株式会社 反向回放编码的多媒体内容的方法和装置
CN101600092A (zh) * 2009-06-12 2009-12-09 中兴通讯股份有限公司 网络视频录像的生成和播放方法及系统
CN101841692A (zh) * 2010-04-23 2010-09-22 深圳市茁壮网络股份有限公司 视频流快进快退的方法
CN103581741A (zh) * 2012-07-26 2014-02-12 三星电子(中国)研发中心 特效播放设备和方法

Cited By (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105025357A (zh) * 2015-06-05 2015-11-04 北京中电兴发科技有限公司 一种视频倒放的方法
CN105025357B (zh) * 2015-06-05 2018-06-08 北京中电兴发科技有限公司 一种视频倒放的方法
CN106331871A (zh) * 2015-07-08 2017-01-11 阿里巴巴集团控股有限公司 一种实现视频流快进或快退的方法及装置
WO2017005098A1 (zh) * 2015-07-08 2017-01-12 阿里巴巴集团控股有限公司 一种实现视频流快进或快退的方法及装置
CN106331871B (zh) * 2015-07-08 2020-01-17 阿里巴巴集团控股有限公司 一种实现视频流快进或快退的方法及装置
CN105307013B (zh) * 2015-10-22 2020-09-22 厦门雅迅网络股份有限公司 一种快进播放视频帧选择方法
CN105323637A (zh) * 2015-10-29 2016-02-10 无锡天脉聚源传媒科技有限公司 一种视频处理方法及装置
CN105323637B (zh) * 2015-10-29 2018-08-24 无锡天脉聚源传媒科技有限公司 一种视频处理方法及装置
CN105430506B (zh) * 2015-11-06 2018-08-31 浙江宇视科技有限公司 一种视频回放中防止报文丢失的方法及装置
CN105430506A (zh) * 2015-11-06 2016-03-23 浙江宇视科技有限公司 一种视频回放中防止报文丢失的方法及装置
CN105898626A (zh) * 2015-12-11 2016-08-24 乐视网信息技术(北京)股份有限公司 用于生成倒播视频的方法、装置及播放设备
CN106454417B (zh) * 2016-11-11 2019-08-09 青岛海信宽带多媒体技术有限公司 流媒体倍速播放方法及装置
CN106454417A (zh) * 2016-11-11 2017-02-22 青岛海信宽带多媒体技术有限公司 流媒体倍速播放方法及装置
CN108574874A (zh) * 2017-03-10 2018-09-25 杭州海康威视数字技术股份有限公司 一种视频播放速度调整方法及装置
US11217279B2 (en) 2017-03-10 2022-01-04 Hangzhou Hikvision Digital Technology Co., Ltd. Method and device for adjusting video playback speed
WO2018161843A1 (zh) * 2017-03-10 2018-09-13 杭州海康威视数字技术股份有限公司 一种视频播放速度调整方法及装置
CN108574874B (zh) * 2017-03-10 2020-07-03 杭州海康威视数字技术股份有限公司 一种视频播放速度调整方法及装置
CN107172486A (zh) * 2017-05-24 2017-09-15 维沃移动通信有限公司 一种视频解码方法和移动终端
CN109391585A (zh) * 2017-08-03 2019-02-26 杭州海康威视数字技术股份有限公司 视频数据处理方法、装置、终端及计算机可读存储介质
CN109391847A (zh) * 2017-08-08 2019-02-26 中国电信股份有限公司 流媒体卡顿的监测方法及监测装置
CN109391847B (zh) * 2017-08-08 2021-10-12 中国电信股份有限公司 流媒体卡顿的监测方法及监测装置
CN107613365A (zh) * 2017-09-04 2018-01-19 浙江大华技术股份有限公司 一种视频播放方法及装置
CN110121098A (zh) * 2018-02-05 2019-08-13 腾讯科技(深圳)有限公司 视频播放方法、装置、存储介质和电子装置
CN110572712A (zh) * 2018-06-05 2019-12-13 杭州海康威视数字技术股份有限公司 一种解码方法和装置
CN110572712B (zh) * 2018-06-05 2021-11-02 杭州海康威视数字技术股份有限公司 一种解码方法和装置
CN110830838A (zh) * 2018-08-10 2020-02-21 高新兴科技集团股份有限公司 一种安防高清录像倒播方法及装置
CN110830838B (zh) * 2018-08-10 2024-01-09 高新兴科技集团股份有限公司 一种安防高清录像倒播方法及装置
CN109151572A (zh) * 2018-09-21 2019-01-04 北京奇艺世纪科技有限公司 一种播放方法及装置
CN110012315A (zh) * 2019-03-15 2019-07-12 北京奇艺世纪科技有限公司 一种视频播放方法、装置及电子设备
CN111726683A (zh) * 2019-03-20 2020-09-29 海信视像科技股份有限公司 一种媒体播放方法、装置、电子设备及存储介质
CN111355981A (zh) * 2020-03-06 2020-06-30 Oppo广东移动通信有限公司 视频数据播放方法、装置、存储介质及电子设备
CN111970559B (zh) * 2020-07-09 2022-07-22 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN111970559A (zh) * 2020-07-09 2020-11-20 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN114257878A (zh) * 2020-09-21 2022-03-29 深圳富桂精密工业有限公司 倍速播放视频的方法、计算机装置及存储介质
CN113038222B (zh) * 2021-03-08 2023-11-10 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN113038222A (zh) * 2021-03-08 2021-06-25 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN113207040A (zh) * 2021-04-15 2021-08-03 广州市云上科技有限公司 一种视频远程快速回放的数据处理方法、装置及系统
CN113613049B (zh) * 2021-07-22 2023-04-07 山东浪潮超高清视频产业有限公司 机顶盒媒体播放器进度条平滑拖动的方法
CN113613049A (zh) * 2021-07-22 2021-11-05 山东云缦智能科技有限公司 机顶盒媒体播放器进度条平滑拖动的方法
CN113612981A (zh) * 2021-08-25 2021-11-05 福建天晴数码有限公司 一种基于视频的3d图形实时渲染的方法及其系统
CN114257846A (zh) * 2021-12-23 2022-03-29 杭州登虹科技有限公司 基于内容感知的移动端自适应视频倍速播放方法
CN114257857A (zh) * 2022-01-04 2022-03-29 海信视像科技股份有限公司 显示设备及视频倍速播放方法
CN114257857B (zh) * 2022-01-04 2024-05-24 海信视像科技股份有限公司 显示设备及视频倍速播放方法
CN114666603A (zh) * 2022-05-06 2022-06-24 厦门美图之家科技有限公司 一种视频解码方法、装置、电子设备及存储介质
CN114666603B (zh) * 2022-05-06 2024-05-03 厦门美图之家科技有限公司 一种视频解码方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN104602117B (zh) 2018-03-16

Similar Documents

Publication Publication Date Title
CN104602117A (zh) 一种倍速播放视频的方法及装置
CN101677382B (zh) 流产生装置和流产生方法
US7706662B2 (en) Picture coding apparatus and picture decoding apparatus
KR100438703B1 (ko) 계층적 이미지 인덱싱 방법 및 그 장치
US9025932B2 (en) Recording medium, reproducing apparatus, and reproducing method
KR20060136399A (ko) 스트림 생성 장치, 스트림 생성 방법, 코딩 장치, 코딩방법, 기록 매체 및 그 프로그램
US20070201819A1 (en) Apparatus and method for variable speed playback of digital broadcasting stream
US7835619B2 (en) Information storage medium storing multi-angle data and method and apparatus for reproducing the multi-angle data
KR20080025246A (ko) 비디오 스트림을 gop 단위로 분할하여 기록하는 비디오기록방법 및 이를 적용한 비디오 장치
CN102378060A (zh) 音视频节目的浏览方法、装置及系统
CN108702479A (zh) 信息处理设备、信息处理方法和程序
WO2007052413A1 (ja) 映像再生装置、映像再生方法、映像再生プログラム、および、映像再生プログラムを記録した記録媒体
KR101455391B1 (ko) 디지털 비디오 레코더에서의 다수 채널 데이터 재생장치 및방법
MXPA04010659A (es) Aparato de reproduccion de imagen en movimiento en el que se coloca la informacion en el modo de reproductor, metodo de reproduccion que utiliza el mismo y medio de almacenamiento.
KR100393918B1 (ko) 디지털 엠펙 데이터를 저장 매체에 저장하고 재생하는시스템 및 그 방법
US8750672B2 (en) Playback method and apparatus
JP2011259110A (ja) 動画再生方法および動画再生装置
JP2009017380A (ja) 録画再生制御回路
JP2011244117A (ja) 動画像復号装置を具備したシステム半導体集積回路およびその動作方法
KR20050118693A (ko) Hdd로부터 광 디스크 드라이브로의 고속 보관을 위한방법, 시스템 및 소프트웨어

Legal Events

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