CN110351553A - 视频倒播、视频倒播数据处理方法、装置和计算机设备 - Google Patents

视频倒播、视频倒播数据处理方法、装置和计算机设备 Download PDF

Info

Publication number
CN110351553A
CN110351553A CN201810308097.0A CN201810308097A CN110351553A CN 110351553 A CN110351553 A CN 110351553A CN 201810308097 A CN201810308097 A CN 201810308097A CN 110351553 A CN110351553 A CN 110351553A
Authority
CN
China
Prior art keywords
video
frame
current
target
target video
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
CN201810308097.0A
Other languages
English (en)
Other versions
CN110351553B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810308097.0A priority Critical patent/CN110351553B/zh
Publication of CN110351553A publication Critical patent/CN110351553A/zh
Application granted granted Critical
Publication of CN110351553B publication Critical patent/CN110351553B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • 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/440236Processing 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 media transcoding, e.g. video is transformed into a slideshow of still pictures, audio is converted into text
    • 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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection

Landscapes

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

Abstract

本发明涉及一种视频倒播、视频倒播数据处理方法、装置、计算机设备和存储介质,视频倒播数据处理方法包括:获取待倒播的目标视频;从目标视频中获取当前原始视频帧,将当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合;对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组;进入从目标视频中获取当前原始视频帧的步骤,直至目标视频的待处理视频帧获取完毕,得到各个当前原始视频帧对应的当前视频图像组;根据各个当前视频图像组得到目标视频处理数据。上述方法可以提高计算机资源的利用率。

Description

视频倒播、视频倒播数据处理方法、装置和计算机设备
技术领域
本发明涉及计算机领域,特别是涉及视频倒播、视频倒播数据处理方法、装置、计算机设备和存储介质。
背景技术
随着多媒体技术和网络技术的飞速发展和广泛应用,人们在日常生活和生产活动中大量使用视频信息。在很多场景下都有将视频进行倒播的需求,例如,将向前开车视频倒序排放,得到倒车视频。
传统技术中,当要倒播视频时,需要存储原始视频数据,进行倒播时从最后一个视频帧开始倒序播放,然而这种方式需要占用大量的存储空间存储原始视频数据,浪费计算机资源。
发明内容
基于此,有必要针对上述的问题,提供一种视频倒播、视频倒播数据处理方法、装置、计算机设备和存储介质,可通过对目标视频的原始视频帧进行帧内编码以及帧间编码并作为一个视频图像组,根据视频图像组得到目标视频处理数据。因此当需要倒播时,可以按照目标视频的帧显示顺序的倒序从目标视频处理数据中获取帧内编码帧并解码播放,在能够实现倒播的同时,由于参考帧与被编码的帧相同,因此编码后的视频帧数据量小,降低了存储的视频帧的数据量,提高了计算机资源的利用率,同时以图像组为单位进行编码也提高了设备兼容性。
一种视频倒播方法,所述方法包括:获取倒播指令,所述倒播指令包括待倒播的目标视频对应的目标视频标识;根据所述目标视频标识获取对应的目标视频处理数据,所述目标视频处理数据包括多个已编码的视频图像组,所述各个已编码的视频图像组内的首帧是所述目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧;从所述各个视频图像组中获取对应的帧内编码帧,并根据所述目标视频中视频帧的显示顺序的倒序依次对所述各个帧内编码帧进行解码并播放。
一种视频倒播数据处理方法,所述方法包括:获取待倒播的目标视频;从所述目标视频中获取当前原始视频帧,将所述当前原始视频帧进行复制,得到当前复制视频帧,将所述当前原始视频帧以及所述当前复制视频帧进行组合,得到所述当前原始视频帧对应的当前待编码帧集合;对所述当前待编码帧集合进行编码,得到所述当前待编码帧集合对应的当前视频图像组,包括:对所述当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对所述当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧;进入从所述目标视频中获取当前原始视频帧的步骤,直至所述目标视频的待处理视频帧获取完毕,得到所述各个当前原始视频帧对应的当前视频图像组;根据所述各个当前视频图像组得到目标视频处理数据。
一种视频倒播装置,所述装置包括:倒播指令获取模块,用于获取倒播指令,所述倒播指令包括待倒播的目标视频对应的目标视频标识;目标视频处理数据获取模块,用于根据所述目标视频标识获取对应的目标视频处理数据,所述目标视频处理数据包括多个已编码的视频图像组,所述各个已编码的视频图像组内的首帧是所述目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧;解码及播放模块,用于从所述各个视频图像组中获取对应的帧内编码帧,并根据所述目标视频中视频帧的显示顺序的倒序依次对所述各个帧内编码帧进行解码并播放。
在其中一个实施例中,所述倒播指令包括起始倒播位置,所述解码及播放模块包括:目标编码帧获取单元,用于根据所述起始倒播位置获取对应的目标帧内编码帧;起始图像组获取单元,用于获取所述目标帧内编码帧所在的目标视频图像组,将所述目标视频图像组作为倒播起始视频图像组;前向图像组获取单元,用于获取所述倒播起始视频图像组前向的各个前向视频图像组,从所述前向视频图像组获取对应的前向帧内编码帧,并根据所述目标视频中视频帧的显示顺序的倒序依次对所述目标帧内编码帧和所述各个前向帧内编码帧进行解码并播放。
在其中一个实施例中,所述装置还包括视频图像组获取模块,用于:获取所述目标视频对应的当前原始视频帧,对所述当前原始视频帧进行复制,得到当前复制视频帧,将所述当前原始视频帧以及所述当前复制视频帧进行组合,得到所述当前原始视频帧对应的当前待编码帧集合;对所述当前待编码帧集合进行编码,得到所述当前待编码帧集合对应的当前视频图像组,包括:对所述当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对所述当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
在其中一个实施例中,所述装置还包括:入口显示模块,用于在视频倒播界面上显示视频发送入口;选择操作响应模块,用于响应于对所述视频发送入口的选择操作,根据所述目标视频中视频帧的显示顺序的倒序从所述各个视频图像组中获取对应的帧内编码帧,并依次对所述各个帧内编码帧进行解码后进行编码,得到所述目标视频对应的编码倒播视频数据;发送模块,用于发送所述编码倒播视频数据。
在其中一个实施例中,所述装置还包括:倒播模式获取模块,用于获取当前倒播模式;初始视频数据获取模块,用于当所述当前倒播模式为第一倒播模式时,根据所述目标视频标识获取所述目标视频对应的初始视频数据,所述初始视频数据为进行了编码的视频数据;切分模块,用于获取所述初始视频数据中关键帧的位置,根据所述关键帧的位置对所述初始视频数据进行切分,得到一组或多组子视频帧集合,所述子视频帧集合的首帧为关键帧;子视频帧集合解码模块,用于按照所述目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合,对所述当前子视频帧集合中的视频帧进行解码并按照所述目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧;第一进入模块,用于进入按照所述目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至所述初始视频数据的待处理子视频帧集合获取完毕;或,第二进入模块,用于当所述当前倒播方式为第二倒播方式时,进入根据所述目标视频标识获取对应的目标视频处理数据的步骤。
在其中一个实施例中,所述装置还包括:倒排子集合获取模块,用于按照所述目标视频中视频帧的显示顺序的倒序依次获取当前子视频帧集合,对所述当前子视频帧集合中的视频帧进行解码,并按照所述目标视频中视频帧的显示顺序的倒序对解码后的视频进行编码并排列编码后的视频帧,得到所述当前子视频帧集合对应的当前倒排子视频帧集合;组合模块,用于将所述各个当前倒排子视频帧集合按照对应的所述目标视频中视频帧的帧显示顺序的倒序进行组合,得到所述目标视频对应的倒排视频数据。
在其中一个实施例中,所述装置还包括:正向指令获取模块,用于获取对所述目标视频进行正向播放的正向播放指令;正向播放模块,用于从所述各个视频图像组中获取对应的帧内编码帧,并根据所述目标视频中视频帧的显示顺序依次对所述各个帧内编码帧进行解码并播放。
在其中一个实施例中,所述装置还包括:滑动操作获取模块,用于获取在所述目标视频的正向播放界面上的滑动操作;指令触发模块,用于当所述滑动操作的方向为预设方向和/或所述滑动操作的滑动次数为预设次数时,触发所述倒播指令。
一种视频倒播数据处理装置,所述装置包括:目标视频获取模块,用于获取待倒播的目标视频;复制模块,用于从所述目标视频中获取当前原始视频帧,将所述当前原始视频帧进行复制,得到当前复制视频帧,将所述当前原始视频帧以及所述当前复制视频帧进行组合,得到所述当前原始视频帧对应的当前待编码帧集合;视频图像组得到模块,用于对所述当前待编码帧集合进行编码,得到所述当前待编码帧集合对应的当前视频图像组,包括:对所述当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对所述当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧;第三进入模块,用于进入从所述目标视频中获取当前原始视频帧的步骤,直至所述目标视频的待处理视频帧获取完毕,得到所述各个当前原始视频帧对应的当前视频图像组;目标视频处理数据得到模块,用于根据所述各个当前视频图像组得到目标视频处理数据。
在其中一个实施例中,所述目标视频处理数据得到模块用于:从所述各个当前视频图像组中提取出帧内编码帧;将所述帧内编码帧进行组合,得到所述目标视频处理数据。
在其中一个实施例中,所述目标视频处理数据得到模块用于:将所述各个当前视频图像组进行组合,得到所述目标视频处理数据。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述视频倒播方法的步骤。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述视频倒播数据处理方法的步骤。
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述视频倒播方法的步骤。
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述视频倒播数据处理方法的步骤。
上述视频倒播方法、装置、计算机设备和存储介质,在需要进行对视频进行倒播时,通过获取需要进行倒播的目标视频对应的目标视频处理数据,其中目标视频处理数据包括了多个已编码的视频图像组,各个已编码的视频图像组内的首帧是目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧,从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序对各个帧内编码帧进行解码并播放。因此,在能够实现倒播的同时,由于目标视频处理数据的视频图像组中参考帧与被编码的帧相同,目标视频处理数据的数据量小,提高了计算机资源的利用率。
上述视频倒播数据处理方法、装置、计算机设备和存储介质,通过对需要进行倒播的目标视频的原始视频帧进行帧内编码以及帧间编码,将各个原始视频帧的帧内编码帧以及帧间参考帧作为一个视频图像组,根据视频图像组得到目标视频处理数据。因此当需要倒播时,可以按照目标视频的视频帧帧的显示顺序的倒序从目标视频处理数据获取帧内编码帧并解码播放,在能够实现倒播的同时,由于参考帧与被编码的帧相同,因此编码后的视频帧数据量小,降低了存储的视频帧的数据量,提高了计算机资源的利用率,同时以图像组为单位进行编码也提高了设备兼容性。
附图说明
图1为一个实施例中提供的视频倒播以及视频倒播数据处理方法的应用环境图;
图2为一个实施例中视频倒播数据处理方法的流程图;
图3为一个实施例中视频倒播方法的流程图;
图4为一个实施例中视频倒播方法的流程图;
图5为一个实施例中在视频倒播界面上显示视频发送入口的示意图;
图6为一个实施例中从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放的流程图;
图7为一个实施例中视频倒播方法的流程图;
图8为一个实施例中当要进行进入倒播时的界面示意图;
图9为一个实施例中视频倒播方法的流程图;
图10为一个实施例中初始视频数据的示意图;
图11A为一个实施例中初始视频数据的示意图;
图11B为一个实施例中对初始视频进行解码并进行编码后排列得到的倒排视频数据的示意图;
图12为一个实施例中视频倒播数据处理装置的结构框图;
图13为一个实施例中视频倒播装置的结构框图;
图14为一个实施例中解码及播放模块的结构框图;
图15为一个实施例中视频倒播装置的结构框图;
图16为一个实施例中计算机设备的内部结构框图;
图17为一个实施例中计算机设备的内部结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例提供的视频倒播以及视频倒播数据处理方法的应用环境图,如图1所示,在该应用环境中,包括终端110以及服务器120。终端110可以与服务器120通过网络进行通信。当需要对目标视频进行处理得到用于进行倒播的目标视频处理数据时,例如,当服务器120获取到终端110上的即时通信应用录制的目标视频时,服务器120可以对目标视频执行本发明实施例提供的视频倒播数据处理方法,得到目标视频对应的目标视频处理数据。因此,当终端110获取到对目标视频进行倒播的倒播指令时,向服务器120发送倒播数据获取请求,倒播数据获取请求中携带目标视频标识,服务器120根据目标视频标识将目标视频处理数据发送到终端110中,终端110获取目标视频处理数据,并根据目标视频中视频帧的显示顺序的倒序从各个视频图像组中获取对应的帧内编码帧,并依次对各个帧内编码帧进行解码并播放。
在一个实施例中,本发明实施例提供的视频倒播数据处理方法也可以是在终端110中执行的。例如,在终端110的即时通信应用中录制得到目标视频后,终端110对目标视频进行视频倒播数据处理,得到目标视频处理数据,当接收到倒播指令时,根据目标视频中视频帧的显示顺序的倒序从目标视频处理数据中的各个视频图像组中获取对应的帧内编码帧,并依次对各个帧内编码帧进行解码并播放。
计算机设备可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群,可以是提供云服务器、云数据库、云存储和CDN等基础云计算服务的云服务器。终端110可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。
如图2所示,在一个实施例中,提出了一种视频倒播数据处理方法,本实施例主要以该方法应用于上述图1中的终端110或服务器120来举例说明。具体可以包括以下步骤:
步骤S202,获取待倒播的目标视频。
具体地,倒播是指倒序播放,即按照目标视频的视频帧显示顺序的相反的顺序依次播放视频。目标视频是由多个视频帧组成的。目标视频中一张图像可以作为一个视频帧。可以将终端本地存储的视频作为待倒播的目标视频,或者是将当前录制得到的视频作为待倒播的目标视频。例如,当在终端中的应用中进行视频录制时,将录制的视频作为待倒播的目标视频。
步骤S204,从目标视频中获取当前原始视频帧,将当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合。
具体地,原始视频帧是指未压缩编码的完整图像数据。原始视频帧可以是录制目标视频时得到的未经过编码的视频帧,也可以是对编码的视频帧进行解码后得到的视频帧。复制是指生成与原始视频帧相同的视频帧。复制视频帧的数量可以根据实际需要进行设置。例如可以是复制1次,得到1个复制视频帧。目标视频中包括多个原始视频帧,当前原始视频帧是指当前需要进行复制的原始视频帧。从目标视频中获取当前原始视频帧的顺序可以是按照目标视频中视频帧的显示顺序依次获取的,也可以随机从目标视频中获取当前原始视频帧,也可以每次将全部或者多个原始视频帧作为当前原始视频帧,对每一个当前原始视频帧分别进行复制,得到每一个当前原始视频帧分别对应的当前待编码帧集合。
在一个实施例中,当需要对目标视频的一部分进行倒播时,可以根据起始倒播位置以及终止倒播位置获取对应的原始视频帧作为当前原始视频帧。
在一个实施例中,当获取的是目标视频对应的进行了编码的初始视频数据时,需要对初始视频数据进行解码,得到目标视频对应的原始视频帧。可以是对初始视频数据解码完毕后再执行步骤S204,也可以是在对初始视频帧数据进行解码得到原始视频帧的同时,将已经解码得到的原始视频帧作为当前原始视频帧,执行步骤S204。
步骤S206,对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
具体地,编码是指将视频帧从一种形式转换为另一种形式,以对视频帧进行压缩,减少视频帧的数据量的过程。帧内编码是指在对视频图像帧进行编码时,仅参考该视频图像帧本身的图像数据而不参考其他图像帧的图像数据进行编码,编码后得到的视频图像帧为I帧。帧间编码是指在对视频图像帧进行编码时,需要参考其他视频图像帧的图像数据进行编码,帧间编码可以是单向帧间编码或者双向帧间编码,因此编码后得到的视频图像帧可以为P帧或者B帧。首帧是指当前待编码帧集合中第一个进行编码的图像帧,剩余帧是指当前待编码帧集合中除首帧之外的其他视频图像帧。得到当前待编码帧集合后,从当前待编码帧集合获取第一个视频图像帧进行帧内编码,得到当前帧内编码帧。对于当前待编码帧集合中的剩余帧,则进行帧间编码,得到帧间编码帧。进行帧间编码时,可以以当前待编码帧集合中的首帧作为参考帧,也可以将当前待编码帧集合中编码在前的剩余帧作为参考帧,本发明实施例在此不做限制。编码完成后,将对当前待编码帧集合进行编码得到的帧内编码帧以及帧间编码帧组合得到当前视频图像组。例如,当当前待编码帧集合中包括3个视频图像帧时,对第一个视频图像帧进行帧内编码,得到帧内编码帧,以第一个视频图像帧作为参考帧,对第二个视频图像帧以及第三个视频图像帧进行单向帧间编码,得到两个P帧,故当前视频图像组的视频帧结构可以是IPP结构,即当前视频图像组由一个I帧两个P帧组成。由于当前待编码帧集合的三个视频图像帧均是相同的视频图像帧,因此帧间编码时得到的预测残差小,即P帧的数据量小。
在一个实施例中,在执行步骤S206之前,还可以仅对目标视频对应的各个原始视频帧进行帧内编码,得到目标视频对应的关键帧集合。即将目标视频对应的各个原始视频帧均编码为I帧,得到一个全部由I帧组成,不包含帧间编码帧的关键帧集合。这样可以进一步减少数据量,且进行倒播时根据目标视频的帧显示顺序的倒序从关键帧集合获取关键帧进行解码播放即可。然而,经过实验证明,部分终端并不支持这种仅进行帧内编码的方式。因此,对于不支持仅进行帧内编码的终端,则可以进入步骤S204,对当前原始视频帧进行复制,得到当前复制视频帧,并对当前原始视频帧以及当前复制视频帧进行组合,得到当前待编码帧集合,以一个图像组为单位进行编码,终端兼容性好。
在一个实施例中,经过实验,当当前待编码帧集合中帧内编码帧与帧间编码帧分别为1个以及2个时,能满足设备的兼容性要求,且数据量小。
步骤S208,进入从目标视频中获取当前原始视频帧的步骤,直至目标视频的待处理视频帧获取完毕,得到各个当前原始视频帧对应的当前视频图像组。
具体地,待处理视频帧是指需要作为当前原始视频帧,进行复制得到当前待编码帧集合并进行编码得到当前视频图像组的视频帧。待处理视频帧可以是目标视频的全部视频帧,也可以是部分视频帧。例如,当需要对目标视频的一部分视频进行倒播时,则可以将需要进行倒播的原始视频帧作为待处理视频帧。当待处理的原始视频帧未获取完毕时,进入从目标视频中获取当前原始视频帧的步骤,对当前原始视频帧执行步骤S204以及S206,直至待处理视频帧均获取完毕,进入步骤S210。
步骤S210,根据各个当前视频图像组得到目标视频处理数据。
具体地,可以是每得到一个当前视频图像组,将当前视频图像组拼接到在先获取的当前视频图像组中,直至将最后一个当前视频图像组拼接到在先获取的当前图像组中,得到目标视频处理数据。也可以是将得到的各个当前视频图像组分别进行存储,当获取得到全部当前视频图像组后,再进行拼接,得到目标视频处理数据。
在一个实施例中,根据各个当前视频图像组得到目标视频处理数据的步骤包括:从各个当前视频图像组中提取出帧内编码帧。将帧内编码帧进行组合,得到目标视频处理数据。
具体地,得到各个当前视频图像组后,将当前视频图像组中的帧内编码帧提取出来,进行组合,得到目标视频处理数据。因此,当需要进行倒播时,可以按照目标视频中视频帧的显示顺序的倒序依次获取各个帧内编码帧并解码播放。目标视频处理数据中帧内编码帧的排序可以根据需要进行设置。例如,当存在两个当前视频图像组时,第一个当前视频图像组的视频帧为I1、P1、P2,第二个当前视频图像组的视频帧为I2、P3、P4,则目标视频处理数据可以为I1I2或I2I1
在一个实施例中,根据各个当前视频图像组得到目标视频处理数据的步骤包括:将各个当前视频图像组进行组合,得到目标视频处理数据。
具体地,得到各个当前视频图像组后,将各个当前视频图像组进行组合,得到目标视频处理数据。当前视频图像组的组合顺序可以根据需要进行设置,例如可以按照目标视频中视频帧的显示顺序或者显示顺序的倒序。举个实际例子,当存在两个当前视频图像组时,第一个当前视频图像组的视频帧为I1P1P2,第二个当前视频图像组的视频帧为I2P3P4,则目标视频处理数据可以为I1P1P2I2P3P4
上述视频倒播数据处理方法,通过对需要进行倒播的目标视频的原始视频帧进行帧内编码以及帧间编码,将各个原始视频帧的帧内编码帧以及帧间参考帧作为一个视频图像组,根据视频图像组得到目标视频处理数据。因此当需要倒播时,可以按照目标视频的帧显示顺序的倒序从目标视频处理数据获取帧内编码帧并解码播放,在能够实现倒播的同时,由于参考帧与被编码的帧相同,因此编码后的视频帧数据量小,降低了存储的视频帧的数据量,提高了计算机资源的利用率,同时以图像组为单位进行编码也提高了设备兼容性。
如图3所示,在一个实施例中,提出了一种视频倒播方法,本实施例主要以该方法应用于上述图1中的终端110来举例说明。具体可以包括以下步骤:
步骤S302,获取倒播指令,倒播指令包括待倒播的目标视频对应的目标视频标识。
具体地,目标视频标识用于标识目标视频。目标视频标识可以是以文字、字母以及数字中的一种或多种表示的。例如,目标视频标识可以为video001。倒播指令可以是通过手势、声音以及输入的文字等方式中的一种或多种发出的。在一个实施例中,可以预先设置倒播指令对应的手势滑动操作,当在视频的播放界面上的接收到倒播对应的手势滑动操作时,获取倒播指令,并将当前播放界面对应的视频标识作为目标视频标识。或者可以通过检测用户发出的声音是否包括进行倒播对应的描述信息,当包括时,获取倒播指令。例如,当获取到用户发出的“请对A视频进行倒播”的声音时,触发倒播指令,目标视频标识为A。
在一个实施例中,当需要对目标视频的一部分进行倒播时,倒播指令中还可以包括倒播位置,倒播位置可以用播放时间表示、也可以用播放场景或者视频帧的显示顺序表示。例如,起始倒播位置可以是目标视频的第19分钟,终止倒播位置可以是目标视频的第15分钟。或者倒播位置可以是目标视频中从A演员与B演员对话开始到对话结束之间的视频数据。或者起始倒播位置可以是第25个视频帧。
步骤S304,根据目标视频标识获取对应的目标视频处理数据,目标视频处理数据包括多个已编码的视频图像组,各个已编码的视频图像组内的首帧是目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧。
具体地。目标视频处理数据中已编码的视频图像组的个数根据具体的视频确定,具体不做限定。首帧是指视频图像组的第一个视频帧。剩余帧是指视频图像组中除首帧之外的视频帧。一个视频图像组中的帧内编码帧以及帧间编码帧对应的原始图像帧为同一个原始视频帧。目标视频处理数据可以是在接收到倒播指令之前对目标视频进行处理得到的,目标视频处理数据可以是存储在其他设备例如服务器中的,也可以是在终端本地存储的。得到目标视频处理数据后,可以将目标视频处理数据存储在终端,当得到对目标视频进行倒播的倒播指令后,根据目标视频标识获取目标视频处理数据。对目标视频进行倒播数据处理,得到目标视频处理数据的方法可以根据本发明实施例提供的视频倒播数据处理方法得到,在此不再赘述。
在一个实施例中,视频图像组的形成步骤包括:获取目标视频对应的当前原始视频帧,对当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合。对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
具体地,当前原始视频帧是指当前需要得到对应的当前视频图像组的原始视频帧。目标视频处理数据中的原始视频帧有多个,因此可以将目标视频的各个待处理原始图像帧作为当前原始视频帧,得到各个当前原始视频帧分别对应的当前待编码帧集合。目标视频的待处理视频帧可以是目标视频的全部视频帧,也可以是部分视频帧。例如,当播放指令中包括倒播位置,则将倒播位置对应的原始视频帧作为待处理原始视频帧。
步骤S306,从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。
具体地,目标视频中视频帧的显示顺序的倒序是指与目标视频中视频帧的显示顺序相反。视频帧的显示顺序可以是通过视频帧的显示时间得到的。例如,目标视频中设置有各个视频帧的显示时间,则显示时间早的视频帧的显示顺序在前,显示时间晚的视频帧的显示顺序在后。对帧内编码帧进行解码并播放的顺序与目标视频中视频帧的显示顺序是相反的。可以是获取得到全部的帧内编码帧后,再根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。也可以是在获取帧内编码帧的过程中,根据目标视频中视频帧的显示顺序的倒序依次对已经获取得到帧内编码帧进行解码并播放。例如,假设目标视频处理数据包括三个视频图像组:第一视频图像组、第二视频图像组以及第三视频图像组,分别为I1P1P2、I2P3P4、I3P5P6。这三个视频图像组对应的原始视频帧在目标视频中的显示顺序为1、2以及3。则可以首先从第三视频组中提取出帧内编码帧I3,对I3进行解码并播放,然后从第二视频图像组可以获取帧内编码帧I2,对I2进行解码并播放。最后从第一视频图像组获取帧内编码帧I1,对I1进行解码并播放。因此,播放的顺序与目标视频的显示顺序相反,从而实现对目标视频的倒播。
上述视频倒播方法,在需要进行对视频进行倒播时,通过获取需要进行倒播的目标视频对应的目标视频处理数据,其中目标视频处理数据包括了多个已编码的视频图像组,各个已编码的视频图像组内的首帧是目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧,从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序对各个帧内编码帧进行解码并播放。因此,在能够实现倒播的同时,由于目标视频处理数据的视频图像组中参考帧与被编码的帧相同,目标视频处理数据的数据量小,提高了计算机资源的利用率。
在一个实施例中,如图4所示,视频倒播方法还可以包括以下步骤:
步骤S402,在视频倒播界面上显示视频发送入口。
具体地,视频倒播界面为对目标视频进行倒播的播放界面。视频发送入口用于触发发送视频,可以是显示在视频倒播界面上的操作控件,如图5所示,为对录制的目标视频进行倒播的界面,视频倒播界面上显示有“发送”控件。视频倒播界面上还可以显示其他控件。例如,图5中,“发送”控件左边的控件依次为在视频中添加文字、添加表情符号以及添加音乐。
步骤S404,响应于对视频发送入口的选择操作,根据目标视频中视频帧的显示顺序的倒序从各个视频图像组中获取对应的帧内编码帧,并依次对各个帧内编码帧进行解码后进行编码,得到目标视频对应的编码倒播视频数据。
具体地,对视频发送入口的选择操作可以为接收到对视频发送入口的点击操作。进行解码后再进行编码中的编码方式具体可以根据需要进行设置,例如可以是根据H.264标准或者HEVC(High Efficiency Video Coding,高效率视频编码)标准等。当获取到对视频发送入口的选择操作时,根据目标视频中视频帧的显示顺序的倒序从各个视频图像组中获取对应的帧内编码帧,并按照目标视频中视频帧的显示顺序的倒序依次对各个获取的帧内编码帧进行解码后重新进行编码,将编码后的各个视频帧进行组合得到编码倒播视频数据。
步骤S406,发送编码倒播视频数据。
具体地,得到编码倒播视频数据后,发送该编码倒播视频数据。例如可以是发送到服务器中进行存储,或者发送至与终端的用户在即时通信应用上存在好友关系的好友,或者可以通过近距离通信方式例如蓝牙发送至另一终端中。
本发明实施例中,在视频倒播界面上显示视频发送入口,当用户在视频倒播界面上触发视频发送入口进行视频发送操作时,发送的是目标视频的编码倒播数据,提高了对目标视频进行倒播的倒播视频数据进行发送的便捷性,同时还可以使得接收编码倒播视频数据的终端按照正常的视频解码步骤进行解码即可实现对目标视频的倒播。
在一个实施例中,倒播指令包括起始倒播位置,如图6所示,步骤S306即从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放的步骤包括:
步骤S602,根据起始倒播位置获取对应的目标帧内编码帧。
具体地,起始倒播位置是指进行倒播时播放的第一个视频帧对应的位置。起始倒播位置可以用播放时间、视频帧的显示顺序或者播放场景中一种或多种表示。播放场景是指目标视频对应的事件。目标视频对应的事件可以根据需要进行预先设置,可以将目标视频分为多个播放场景,每个播放场景对应一个场景标签,例如,哭泣场景、吃饭场景以及进行打斗的场景等。起始倒播位置可以是在对目标视频进行正向播放的过程中,检测对播放进度条的操作得到的,根据进度条拖动的位置得到起始倒播位置。也可以是根据输入的起始倒播时间、视频帧的显示顺序或者播放场景得到的。当起始倒播位置为播放时间或者视频帧的显示顺序时,获取播放时间与起始倒播时间一致的帧内编码帧作为目标帧内编码帧或者显示顺序与起始倒播顺序一致的帧内编码帧作为目标帧内编码帧。当起始倒播位置为播放场景时,获取播放场景对应的帧内视频帧中显示顺序为最后的帧内编码帧作为目标帧内编码帧。举个实际的例子,起始播放位置可以为吃饭场景中显示顺序为倒数第二个的视频帧,则可以将吃饭场景对应的帧内编码帧作为候选帧内编码帧,将候选帧内编码帧中的倒数第二个帧内编码帧作为目标帧内编码帧。当起始播放位置为播放时间为14~16秒之间的帧内编码帧中播放顺序为第二十的帧内编码帧时,则可以将播放时间为14~16秒之间的帧内编码帧对应的帧内编码帧作为候选帧内编码帧,将候选帧内编码帧中播放顺序为第二十的帧内编码帧作为目标帧内编码帧。
步骤S604,获取目标帧内编码帧所在的目标视频图像组,将目标视频图像组作为倒播起始视频图像组。
具体地,得到目标帧内编码帧后,目标帧内编码帧所在的视频图像组为倒播起始视频图像组。
步骤S606,获取倒播起始视频图像组前向的各个前向视频图像组,从前向视频图像组获取对应的前向帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对目标帧内编码帧和各个前向帧内编码帧进行解码并播放。
具体地,一个视频图像组的前向视频图像组是指目标视频中显示顺序在该视频图像组之前的视频图像组。一个视频图像组的后向视频图像组是指目标视频中显示顺序在该视频图像组之后的视频图像组。获取得到前向视频图像组后,从前向视频图像组中提取得到帧内编码帧作为前向帧内编码帧。可以是获取到所有的前向帧内编码帧后根据目标视频中视频帧的显示顺序的倒序依次进行解码并播放。也可以在获取前向帧内编码帧的同时,根据目标视频中视频帧的显示顺序的倒序依次对已经获取得到的前向帧内编码帧进行解码并播放。例如,可以根据目标视频中视频帧的显示顺序的倒序依次从前向视频图像组获取对应的前向帧内编码帧并加入到待解码队列中,同时对待解码队列的视频帧进行解码并播放。
在一个实施例中,倒播指令还可以包括终止倒播位置,当倒播指令包括终止倒播位置时,视频倒播方法还可以包括:根据终止倒播位置获取对应的终止帧内编码帧,获取终止帧内编码帧所在的终止视频图像组,将终止视频图像组作为倒播终止视频图像组。则步骤S606包括:获取为倒播终止视频图像组后向的且为倒播起始视频图像组前向的前向视频图像组,从前向视频图像组获取对应的前向帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对目标帧内编码帧、各个前向帧内编码帧以及终止帧内编码帧进行解码并播放。
具体地,终止倒播位置是进行视频倒播时,播放的最后一个视频帧对应的位置。终止倒播位置可以用播放时间、视频帧的显示顺序或者播放场景中一种或多种表示。得到终止倒播位置后,将终止倒播位置所对应的帧内编码帧作为终止帧内编码帧,获取终止帧内编码帧所在的视频图像组作为终止视频图像组。然后将在目标视频中视频帧的显示顺序在终止视频图像组之后且在倒播起始视频图像组之前的视频图像组作为前向视频帧图像组。从各个前向视频图像组中获取得到前向帧内编码帧,按照目标视频中视频帧的显示顺序的倒序依次对目标帧内编码帧、各个前向帧内编码帧以及终止帧内编码帧进行解码并播放。
在一个实施例中,如图7所示,倒播视频方法还可以包括:
步骤S702,获取对目标视频进行正向播放的正向播放指令。
具体地,正向播放是指按照目标视频的视频帧的显示顺序依次播放,正向播放指令可以是通过手势、声音以及文字等方式的一种或多种发出的。正向播放指令可以是获取倒播指令之前获取的,也可以是在获取倒播指令之后获取的。例如在根据倒播指令进行倒播的过程中,用户可以发出对目标视频进行正向播放的正向播放指令,终端获取该正向播放指令。
步骤S704,从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序依次对各个帧内编码帧进行解码并播放。
具体地,可以是获取得到全部的帧内编码帧后,再根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。也可以是在获取帧内编码帧的过程中,根据目标视频中视频帧的显示顺序的倒序依次对已经获取得到帧内编码帧进行解码并播放,具体不做限制。
在一个实施例中,视频倒播方法还可以包括:获取在目标视频的正向播放界面上的滑动操作。当滑动操作的方向为预设方向和/或滑动操作的滑动次数为预设次数时,触发倒播指令。
具体地,正向播放界面是指正向播放视频时的视频播放界面。预设方向可以根据需要进行设置,例如可以为左滑、右划、上划以及下划中的一种或多种。预设次数可以是一个具体的数值也可以是一个数值范围,具体可以根据实际需要进行设置,例如为3,或者为大于4。当正向播放目标视频时,若检测到目标视频的正向播放界面上的滑动操作,则可以获取滑动操作的操作方向以及滑动操作的次数中的一种或两种。当滑动操作的方向为预设方向时,触发倒播指令。或者当滑动操作的滑动次数满足预设次数时,触发倒播指令。或者当滑动操作的方向为预设方向且滑动操作的滑动次数为预设次数时,触发倒播指令。例如,当正向播放目标视频时,用户在播放界面上进行滑动操作,当连续2次向左滑动时,触发倒播指令,如图8所示,当要进行倒播时,可以显示进行倒播的提示符号,例如为一个箭头方向指向左边的箭头以及“倒播”的文字,以提示用户进入对目标是进行倒播的模式。
本申请实施例中,通过获取在目标视频的正向播放界面上的滑动操作,当滑动操作的方向为预设方向和/或滑动操作的滑动次数为预设次数时,触发倒播指令。因此,可以在正向播放界面上进行滑动操作发出倒播指令,操作简单。
在一个实施例中,如图9所示,视频倒播方法还可以包括以下步骤:
步骤S902,获取当前倒播模式,判断当前倒播模式是否为第二倒播模式。
具体地,倒播模式是指获取目标视频中的视频帧并对目标视频进行倒播的方式,不同的倒播模式可以是获取倒播的视频数据的获取方法不同。倒播模式的数量可以根据需要进行设置。当前倒播模式可以是预先设置的,也可以是根据进行倒播时的状态信息决定的。状态信息可以包括终端的状态信息以及目标视频的状态信息中的一种或多种。终端的状态信息可以包括终端的设备型号以及终端当前的设备资源占用率中的一种或多种。目标视频的状态信息可以是目标视频对应的视频数据的格式以及目标视频的数据量一种或多种等。例如,可以设置终端型号、目标视频的数据量或者设备资源占用率对应的当前倒播模式。或者是当已经得到对目标视频进行倒播的目标视频处理数据时,采用通过从目标视频处理数据的视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放的倒播模式。当未获取到对目标视频进行倒播的目标视频处理数据时,根据终端型号或者不同的资源占用情况获取对应的当前倒播模式。
在一个实施例中,还可以设置不同倒播模式的优先级,优先采用优先级高的倒播模式进行倒播。当采用优先级高的倒播模式进行倒播失败时,再将下一优先级的倒播模式作为当前倒播模式。
在一个实施例中,倒播模式可以包括第一倒播模式以及第二倒播模式。当当前倒播方式为第二倒播方式时,进入根据目标视频标识获取对应的目标视频处理数据步骤即步骤S304。或者当倒播模式为第一倒播模式时,进入步骤S904。
步骤S904,当当前倒播模式为第一倒播模式时,根据目标视频标识获取目标视频对应的初始视频数据,初始视频数据为进行了编码的视频数据。
具体地,初始视频数据是指对目标视频的各个原始视频帧进行了编码得到的视频帧数据。初始视频帧数据是以一个GOP(Group ofPicture,图像组)为单位进行编码的视频帧数据。编码得到的GOP可以根据其内部的编码视频帧数据进行解码得到该GOP对应的完整图像信息。初始视频数据可以是存储在其他设备例如服务器中的,也可以是在终端本地存储的。得到初始视频数据后,可以将初始视频数据存储在终端,当得到对目标视频进行倒播的倒播指令后,根据目标视频标识获取初始视频数据。
步骤S906,获取初始视频数据中关键帧的位置,根据关键帧的位置对初始视频数据进行切分,得到一组或多组子视频帧集合,子视频帧集合的首帧为关键帧。
具体地,关键帧是根据其本身的视频帧数据可以进行解码,得到完整的图像信息的视频帧,例如帧内编码帧即I帧。非关键帧需要根据对应的关键帧进行解码,才能得到完整的图像,例如为帧间编码帧,如P帧或B帧。得到初始视频数据后,可以以关键帧作为切分点,将关键帧作为子视频帧集合的第一帧,将在第一帧之后的关键帧的前向视频帧作为该子视频帧集合中的视频帧。第一帧之后的关键帧可以是第一帧之后的下一个关键帧,也可以是预设数量个关键帧之后的关键帧。如图10所示,假设初始视频数据为I0P1P2P3P4P5I6P7P8P9,其中I0帧以及I6帧为两个关键帧。其他均为非关键帧,则可以将I0P1P2P3P4P5作为第一子视频帧集合,将I6P7P8P9作为第二子视频帧集合,即第#2段为第二子视频帧集合,第#1段为第一子视频帧集合。
步骤S908,按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码并按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧。
具体地,按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧是指按照目标视频中视频帧的显示顺序的倒序逐一地播放解码后的视频帧。得到子视频帧集合后,按照目标视频中视频帧的显示顺序的倒序将各个子视频帧集合作为当前子视频帧集合。当当前子视频帧集合中的视频帧均解码完毕后,按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧。
在一个实施例中,可以将解码后的视频帧存储在视频帧缓存空间中,当当前子视频帧集合中的视频帧均解码完毕后,按照目标视频中视频帧的显示顺序的倒序从视频帧缓存空间中依次获取解码后的视频帧进行显示。
在一个实施例中,可以创建解码线程对当前子视频帧集合中的视频帧进行解码,并创建播放线程对解码后的视频帧进行显示。因此需要使得播放线程可以获取得到解码线程解码后得到的视频帧。可以通过将解码线程与播放线程的上下文信息(context)进行关联使得播放线程可以获取得到解码线程解码后得到的视频帧。上下文信息是指线程运行的环境信息,可以包括解码后的图像对应的纹理坐标信息等。以OpenGL应用为例,将解码线程与播放线程的上下文信息(context)进行关联的步骤可以为:当OpenGL初始化完毕后,创建播放线程对应的context,然后将该context的标识提供给解码线程,解码线程根据播放线程context的标识创建对应的context。调用的代码可以如下,其中,Display指显示器的标识,终端中可以有多个显示器,因此需要指定其中的一个显示器进行显示。Configs用于描述配置信息的数据类型。
步骤S910,进入按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至初始视频数据的待处理子视频帧集合获取完毕。
具体地,待处理子视频帧集合是指需要作为当前子视频帧集合对子视频帧集合中的视频帧进行解码,并按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧的子视频帧集合。待处理子视频帧集合可以是初始视频数据的全部视频帧,也可以是部分子视频帧集合。例如,当需要对目标视频的一部分视频进行倒播时,则需要进行倒播的子视频帧集合为待处理子视频帧集合。当初始视频数据的待处理子视频帧集合未获取完毕时,进入按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至待处理子视频帧集合均获取完毕。
例如,对于图10表示的初始视频数据。首先将第二子视频帧集合作为当前子视频帧集合,对第二子视频帧集合进行解码,得到I6、P7、P8、P9分别对应的解码后的视频帧。显示时,依次显示P9、P8、P7、I6对应的解码后的视频帧。第二子视频帧解码完毕后,将第一子视频帧集合作为当前子视频帧集合,第一子视频帧的解码以及播放过程可以参考第二子视频帧的过程,在此不再赘述。
本发明实施例中,通过获取当前待倒播模式,当为第一倒播模式时,根据目标视频标识获取目标视频对应的初始视频数据,初始视频数据为进行了编码的视频数据,按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码并按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧。进入按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至初始视频数据的待处理子视频帧集合获取完毕。由于根据关键帧的位置对初始视频帧数据进行切分,得到首帧为关键帧的子视频帧集合,因此各个子视频帧集合的剩余帧均可以参考所在的子视频帧集合中的关键帧进行解码得到完整的图像信息,故可以从初始视频数据的最后一组子视频帧集合开始进行解码,并根据目标视频的视频帧显示顺序的倒序依次显示解码后的视频帧,实现对目标视频的倒放的同时,提高了根据初始视频数据进行倒放的速度。
在一个实施例中,视频倒播方法还可以包括以下步骤:按照目标视频中视频帧的显示顺序的倒序依次获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码,并按照目标视频中视频帧的显示顺序的倒序对解码后的视频进行编码并排列编码后的视频帧,得到当前子视频帧集合对应的当前倒排子视频帧集合。将各个当前倒排子视频帧集合按照对应的目标视频中视频帧的帧显示顺序的倒序进行组合,得到目标视频对应的倒排视频数据。
具体地,按照目标视频中视频帧的显示顺序的倒序依次将各个子视频帧集合作为当前子视频帧集合,对当前子视频帧集合的视频帧进行解码后,按照与目标视频中视频帧的显示顺序的相反顺序对视频帧进行编码后并进行排列,得到当前倒排子视频帧集合。进行解码后再进行编码中的编码方式具体可以根据需要进行设置,例如可以是根据H.264标准、HEVC(High Efficiency Video Coding,高效率视频编码)标准等。按照与目标视频中视频帧的显示顺序的相反顺序拼接各个当前倒排子视频帧集合,得到目标视频对应的倒排视频数据。这样,当需要进行倒序播放时。可以按照倒排视频数据的排序顺序依次获取视频帧,实现对目标视频的倒序播放。
如图11A所示,假设初始视频数据由82个视频帧,图11A中的正方形小格子表示初始视频帧的关键帧的位置,箭头表示将各个子视频帧集合作为当前子视频帧集合的顺序。数字70、71、72……80、81、82等表示视频帧在目标视频中的显示顺序,其中第82帧是对应的目标视频中显示顺序为最后的视频帧。则可以将初始视频帧数据切分为5个子视频帧集合。并首先对最后一段子视频帧集合进行解码,并按照目标视频中视频帧的显示顺序的倒序对解码后的视频帧进行编码后排列,得到的倒排视频数据如图11B所示,即倒排视频数据中的第82帧排在最前。
在一个实施例中,可以创建解码线程对当前子视频帧集合中的视频帧进行解码,并创建编码线程对解码后的视频帧进行重新编码。因此需要使得编码线程可以获取得到解码线程解码后得到的视频帧。可以通过将解码线程与编码线程的上下文信息(context)进行关联使得编码线程可以获取得到解码线程解码后得到的视频帧。上下文信息是指线程运行的环境信息,可以包括解码后的图像对应的纹理坐标信息等。将解码线程与编码线程的上下文信息(context)进行关联的步骤可以为:创建编码线程对应的context,然后将该context的标识提供给解码线程,解码线程根据编码线程context的标识创建对应的context。编码线程以及解码线程调用的代码可以如下,其中,Display指显示器的标识,在终端中可以有多个显示器,因此需要指定其中的一个显示器进行显示。Configs用于描述配置信息的数据类型。
编码器线程执行的代码:
import android.opengl.EGLContext;
public EGLContext encodeGLContext=EGL14.eglGetCurrentContext();
解码器线程执行的代码:
import android.opengl;
public EGLContext createGLContext(
EGLDisplay display,
EGLConfig config,
EGLContext shareContext){
int[]attrib_list={EGL14.EGL_CONTEXT_CLIENT_VERSION,3,EGL14.EGL_NONE};
return EGL14.eglCreateContext(display,config,encodeGLContext,attrib_list,0);
以下以一个具体的实施例对本发明实施例提供的视频倒播方法进行说明。
1、即时通信应用接收用户进行视频录制的指令,录制得到目标视频。例如,用户可以点击即时通信应用中聊天界面中拍摄小视频的操作控件,录制得到目标视频。
2、在进行录制的过程中,对于每一个已经录制得到的原始视频帧,将原始视频帧进行复制,得到复制视频帧,并将该原始视频帧以及复制视频帧进行组合,得到每一个原始视频帧对应的待编码帧集合。例如,当得到A视频帧时,对A视频帧复制两次,得到由3个A视频帧得到的待编码帧集合。
3、对于待编码帧集合中的视频帧进行编码,得到对应的视频图像组,假设当前待编码帧集合有3个视频帧。则可以首先获取其中的一个视频帧进行帧内编码,得到帧内编码帧。并对其他两个视频帧进行帧间编码,帧间编码时的参考帧为当前待编码帧集合中第一个进行编码的视频帧。对于A视频帧对应的待编码帧集合,进行编码得到的视频图像组为AI1AP2AP3,其中下标I表示帧内编码帧,即I帧,下标P表示单向帧间编码帧,即P帧。
4、当录制得到的各个原始视频帧对应的待编码帧集合均编码完毕,得到视频图像组后,将各个图像组进行组合,得到目标视频处理数据。例如,假设目标视频有4个原始视频帧:A、B、C、D,显示顺序依次为1、2、3、4。则目标视频处理数据中视频帧排列顺序可以为
AI1AP2AP3BI1BP2BP3CI1CP2CP3DI1DP2DP3。其中有AI1AP2AP3、BI1BP2BP3、CI1CP2CP3、DI1DP2DP3共4个视频图像组。
5、获取对目标视频进行正向播放的正向播放指令,从各个目标视频处理数据的视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序依次对各个帧内编码帧进行解码并播放。例如,从AI1AP2AP3、BI1BP2BP3、CI1CP2CP3、DI1DP2DP3中提取出AI1、BI1、CI1、DI1,并依次播放AI1、BI1、CI1、DI1
6、在进行正向播放的过程中,获取在目标视频的正向播放界面上的滑动操作,当滑动操作为向左划2次时,触发倒播指令。
7、根据目标视频标识获取目标视频处理数据,从各个目标视频处理数据的视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。例如,依次从DI1DP2DP3、CI1CP2CP3、BI1BP2BP3、AI1AP2AP3中提取出DI1、CI1、BI1、AI1,并依次播放DI1、CI1、BI1、AI1,实现对录制的目标视频的倒序播放。
8、在进行倒播的播放界面上,显示“发送”操作控件,当接收到对“发送”操作控件的选择操作时,依次从DI1DP2DP3、CI1CP2CP3、BI1BP2BP3、AI1AP2AP3中提取出DI1、CI1、BI1、AI1,并按照DI1、CI1、BI1、AI1的顺序依次进行编码,将编码后得到的编码倒播视频数据发送给用户选择的即时通信用户,因此,接收到编码倒播视频数据的终端的播放器可以根据编码倒播视频数据直接倒序播放目标视频。
如图12所示,在一个实施例中,提供了一种视频倒播数据处理装置,该视频倒播数据处理装置可以集成于上述的终端11或者计算机设备120中,具体可以包括目标视频获取模块1202、复制模块1204、视频图像组得到模块1206、第三进入模块1208以及目标视频处理数据得到模块1210。
目标视频获取模块1202,用于获取待倒播的目标视频。
复制模块1204,用于从目标视频中获取当前原始视频帧,将当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合。
视频图像组得到模块1206,用于对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
第三进入模块1208,用于进入从目标视频中获取当前原始视频帧的步骤,直至目标视频的待处理视频帧获取完毕,得到各个当前原始视频帧对应的当前视频图像组。
目标视频处理数据得到模块1210,用于根据各个当前视频图像组得到目标视频处理数据。
在其中一个实施例中,目标视频处理数据得到模块1210用于:从各个当前视频图像组中提取出帧内编码帧。将帧内编码帧进行组合,得到目标视频处理数据。
在其中一个实施例中,目标视频处理数据得到模块1210用于:将各个当前视频图像组进行组合,得到目标视频处理数据。
如图13所示,在一个实施例中,提供了一种视频倒播装置,该视频倒播可以集成于上述的终端110中,具体可以包括倒播指令获取模块1302、目标视频处理数据获取模块1304以及解码及播放模块1306。
倒播指令获取模块1302,用于获取倒播指令,倒播指令包括待倒播的目标视频对应的目标视频标识。
目标视频处理数据获取模块1304,用于根据目标视频标识获取对应的目标视频处理数据,目标视频处理数据包括多个已编码的视频图像组,各个已编码的视频图像组内的首帧是目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧。
解码及播放模块1306,用于从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。
在其中一个实施例中,如图14所示,倒播指令包括起始倒播位置,解码及播放模块1306包括:
目标编码帧获取单元1306A,用于根据起始倒播位置获取对应的目标帧内编码帧。
起始图像组获取单元1306B,用于获取目标帧内编码帧所在的目标视频图像组,将目标视频图像组作为倒播起始视频图像组。
前向图像组获取单元1306C,用于获取倒播起始视频图像组前向的各个前向视频图像组,从前向视频图像组获取对应的前向帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对目标帧内编码帧和各个前向帧内编码帧进行解码并播放。
在其中一个实施例中,装置还包括视频图像组获取模块,用于:
获取目标视频对应的当前原始视频帧,对当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合。
对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
在其中一个实施例中,如图15所示,视频倒播装置还包括:
入口显示模块1502,用于在视频倒播界面上显示视频发送入口。
选择操作响应模块1504,用于响应于对视频发送入口的选择操作,根据目标视频中视频帧的显示顺序的倒序从各个视频图像组中获取对应的帧内编码帧,并依次对各个帧内编码帧进行解码后进行编码,得到目标视频对应的编码倒播视频数据。
发送模块1506,用于发送编码倒播视频数据。
在其中一个实施例中,视频倒播装置还包括:
倒播模式获取模块,用于获取当前倒播模式。
初始视频数据获取模块,用于当当前倒播模式为第一倒播模式时,根据目标视频标识获取目标视频对应的初始视频数据,初始视频数据为进行了编码的视频数据。
切分模块,用于获取初始视频数据中关键帧的位置,根据关键帧的位置对初始视频数据进行切分,得到一组或多组子视频帧集合,子视频帧集合的首帧为关键帧。
子视频帧集合解码模块,用于按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码并按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧。
第一进入模块,用于进入按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至初始视频数据的待处理子视频帧集合获取完毕。
或者,视频倒播装置还包括第二进入模块,用于当当前倒播方式为第二倒播方式时,进入根据目标视频标识获取对应的目标视频处理数据的步骤。
在其中一个实施例中,视频倒播装置还包括:
倒排子集合获取模块,用于按照目标视频中视频帧的显示顺序的倒序依次获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码,并按照目标视频中视频帧的显示顺序的倒序对解码后的视频进行编码并排列编码后的视频帧,得到当前子视频帧集合对应的当前倒排子视频帧集合。
组合模块,用于将各个当前倒排子视频帧集合按照对应的目标视频中视频帧的帧显示顺序的倒序进行组合,得到目标视频对应的倒排视频数据。
在其中一个实施例中,视频倒播装置还包括:
正向指令获取模块,用于获取对目标视频进行正向播放的正向播放指令。
正向播放模块,用于从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序依次对各个帧内编码帧进行解码并播放。
在其中一个实施例中,视频倒播装置还包括:
滑动操作获取模块,用于获取在目标视频的正向播放界面上的滑动操作。
指令触发模块,用于当滑动操作的方向为预设方向和/或滑动操作的滑动次数为预设次数时,触发倒播指令。
图16示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110。如图16所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现视频倒播或者视频倒播数据处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行视频倒播或者视频倒播数据处理方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
图17示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的服务器120。如图17所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现视频倒播数据处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行视频倒播数据处理方法。
本领域技术人员可以理解,图16以及17中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的视频倒播数据处理装置可以实现为一种计算机程序的形式,计算机程序可在如图16或17所示的计算机设备上运行。计算机设备的存储器中可存储组成该视频倒播数据处理装置的各个程序模块,比如,图12所示的目标视频获取模块1202、复制模块1204、视频图像组得到模块1206、第三进入模块1208以及目标视频处理数据得到模块1210。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的视频倒播数据处理方法中的步骤。
例如,图16以及17所示的计算机设备可以通过如图12所示的视频倒播数据处理中的目标视频获取模块1202获取待倒播的目标视频。通过复制模块1204从目标视频中获取当前原始视频帧,将当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合。通过视频图像组得到模块对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。通过第三进入模块1208进入从目标视频中获取当前原始视频帧的步骤,直至目标视频的待处理视频帧获取完毕,得到各个当前原始视频帧对应的当前视频图像组。通过目标视频处理数据得到模块根据各个当前视频图像组得到目标视频处理数据。
在一个实施例中,本申请提供的视频倒播装置可以实现为一种计算机程序的形式,计算机程序可在如图17所示的计算机设备上运行。计算机设备的存储器中可存储组成该视频倒播装置的各个程序模块,比如,图13所示的倒播指令获取模块1302、目标视频处理数据获取模块1304以及解码及播放模块1306。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的视频倒播方法中的步骤。
例如,图17所示的计算机设备可以通过如图13所示的视频倒播装置的倒播指令获取模块1302获取倒播指令,倒播指令包括待倒播的目标视频对应的目标视频标识。通过目标视频处理数据获取模块1304根据目标视频标识获取对应的目标视频处理数据,目标视频处理数据包括多个已编码的视频图像组,各个已编码的视频图像组内的首帧是目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧。通过解码及播放模块1306,用于从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。
在一个实施例中,提出了一种计算机设备,计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取倒播指令,倒播指令包括待倒播的目标视频对应的目标视频标识;根据目标视频标识获取对应的目标视频处理数据,目标视频处理数据包括多个已编码的视频图像组,各个已编码的视频图像组内的首帧是目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧;从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。
在其中一个实施例中,倒播指令包括起始倒播位置,处理器执行的从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放的步骤包括:根据起始倒播位置获取对应的目标帧内编码帧;获取目标帧内编码帧所在的目标视频图像组,将目标视频图像组作为倒播起始视频图像组;获取倒播起始视频图像组前向的各个前向视频图像组,从前向视频图像组获取对应的前向帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对目标帧内编码帧和各个前向帧内编码帧进行解码并播放。
在其中一个实施例中,处理器执行的视频图像组的形成步骤包括:获取目标视频对应的当前原始视频帧,对当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合;对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:在视频倒播界面上显示视频发送入口;响应于对视频发送入口的选择操作,根据目标视频中视频帧的显示顺序的倒序从各个视频图像组中获取对应的帧内编码帧,并依次对各个帧内编码帧进行解码后进行编码,得到目标视频对应的编码倒播视频数据;发送编码倒播视频数据。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:获取当前倒播模式;当当前倒播模式为第一倒播模式时,根据目标视频标识获取目标视频对应的初始视频数据,初始视频数据为进行了编码的视频数据;获取初始视频数据中关键帧的位置,根据关键帧的位置对初始视频数据进行切分,得到一组或多组子视频帧集合,子视频帧集合的首帧为关键帧;按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码并按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧;进入按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至初始视频数据的待处理子视频帧集合获取完毕;或,当当前倒播方式为第二倒播方式时,进入根据目标视频标识获取对应的目标视频处理数据步骤。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:按照目标视频中视频帧的显示顺序的倒序依次获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码,并按照目标视频中视频帧的显示顺序的倒序对解码后的视频进行编码并排列编码后的视频帧,得到当前子视频帧集合对应的当前倒排子视频帧集合;将各个当前倒排子视频帧集合按照对应的目标视频中视频帧的帧显示顺序的倒序进行组合,得到目标视频对应的倒排视频数据。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:获取对目标视频进行正向播放的正向播放指令;从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序依次对各个帧内编码帧进行解码并播放。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:获取在目标视频的正向播放界面上的滑动操作;当滑动操作的方向为预设方向和/或滑动操作的滑动次数为预设次数时,触发倒播指令。
在一个实施例中,提出了一种计算机设备,计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取待倒播的目标视频;从目标视频中获取当前原始视频帧,将当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合;对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧;进入从目标视频中获取当前原始视频帧的步骤,直至目标视频的待处理视频帧获取完毕,得到各个当前原始视频帧对应的当前视频图像组;根据各个当前视频图像组得到目标视频处理数据。
在其中一个实施例中,处理器执行的根据各个当前视频图像组得到目标视频处理数据的步骤包括:从各个当前视频图像组中提取出帧内编码帧;将帧内编码帧进行组合,得到目标视频处理数据。
在其中一个实施例中,处理器执行的根据各个当前视频图像组得到目标视频处理数据的步骤包括:将各个当前视频图像组进行组合,得到目标视频处理数据。
在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取倒播指令,倒播指令包括待倒播的目标视频对应的目标视频标识;根据目标视频标识获取对应的目标视频处理数据,目标视频处理数据包括多个已编码的视频图像组,各个已编码的视频图像组内的首帧是目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧;从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放。
在其中一个实施例中,倒播指令包括起始倒播位置,处理器执行的从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对各个帧内编码帧进行解码并播放的步骤包括:根据起始倒播位置获取对应的目标帧内编码帧;获取目标帧内编码帧所在的目标视频图像组,将目标视频图像组作为倒播起始视频图像组;获取倒播起始视频图像组前向的各个前向视频图像组,从前向视频图像组获取对应的前向帧内编码帧,并根据目标视频中视频帧的显示顺序的倒序依次对目标帧内编码帧和各个前向帧内编码帧进行解码并播放。
在其中一个实施例中,处理器执行的视频图像组的形成步骤包括:获取目标视频对应的当前原始视频帧,对当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合;对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:在视频倒播界面上显示视频发送入口;响应于对视频发送入口的选择操作,根据目标视频中视频帧的显示顺序的倒序从各个视频图像组中获取对应的帧内编码帧,并依次对各个帧内编码帧进行解码后进行编码,得到目标视频对应的编码倒播视频数据;发送编码倒播视频数据。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:获取当前倒播模式;当当前倒播模式为第一倒播模式时,根据目标视频标识获取目标视频对应的初始视频数据,初始视频数据为进行了编码的视频数据;获取初始视频数据中关键帧的位置,根据关键帧的位置对初始视频数据进行切分,得到一组或多组子视频帧集合,子视频帧集合的首帧为关键帧;按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码并按照目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧;进入按照目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至初始视频数据的待处理子视频帧集合获取完毕;或,当当前倒播方式为第二倒播方式时,进入根据目标视频标识获取对应的目标视频处理数据的步骤。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:按照目标视频中视频帧的显示顺序的倒序依次获取当前子视频帧集合,对当前子视频帧集合中的视频帧进行解码,并按照目标视频中视频帧的显示顺序的倒序对解码后的视频进行编码并排列编码后的视频帧,得到当前子视频帧集合对应的当前倒排子视频帧集合;将各个当前倒排子视频帧集合按照对应的目标视频中视频帧的帧显示顺序的倒序进行组合,得到目标视频对应的倒排视频数据。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:获取对目标视频进行正向播放的正向播放指令;从各个视频图像组中获取对应的帧内编码帧,并根据目标视频中视频帧的显示顺序依次对各个帧内编码帧进行解码并播放。
在其中一个实施例中,计算机程序还使得处理器执行如下步骤:获取在目标视频的正向播放界面上的滑动操作;当滑动操作的方向为预设方向和/或滑动操作的滑动次数为预设次数时,触发倒播指令。
在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取待倒播的目标视频;从目标视频中获取当前原始视频帧,将当前原始视频帧进行复制,得到当前复制视频帧,将当前原始视频帧以及当前复制视频帧进行组合,得到当前原始视频帧对应的当前待编码帧集合;对当前待编码帧集合进行编码,得到当前待编码帧集合对应的当前视频图像组,包括:对当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧;进入从目标视频中获取当前原始视频帧的步骤,直至目标视频的待处理视频帧获取完毕,得到各个当前原始视频帧对应的当前视频图像组;根据各个当前视频图像组得到目标视频处理数据。
在其中一个实施例中,处理器执行的根据各个当前视频图像组得到目标视频处理数据的步骤包括:从各个当前视频图像组中提取出帧内编码帧;将帧内编码帧进行组合,得到目标视频处理数据。
在其中一个实施例中,处理器执行的根据各个当前视频图像组得到目标视频处理数据的步骤包括:将各个当前视频图像组进行组合,得到目标视频处理数据。
应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (17)

1.一种视频倒播方法,所述方法包括:
获取倒播指令,所述倒播指令包括待倒播的目标视频对应的目标视频标识;
根据所述目标视频标识获取对应的目标视频处理数据,所述目标视频处理数据包括多个已编码的视频图像组,所述各个已编码的视频图像组内的首帧是所述目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧;
从所述各个视频图像组中获取对应的帧内编码帧,并根据所述目标视频中视频帧的显示顺序的倒序依次对所述各个帧内编码帧进行解码并播放。
2.根据权利要求1所述的方法,其特征在于,所述倒播指令包括起始倒播位置,所述从所述各个视频图像组中获取对应的帧内编码帧,并根据所述目标视频中视频帧的显示顺序的倒序依次对所述各个帧内编码帧进行解码并播放的步骤包括:
根据所述起始倒播位置获取对应的目标帧内编码帧;
获取所述目标帧内编码帧所在的目标视频图像组,将所述目标视频图像组作为倒播起始视频图像组;
获取所述倒播起始视频图像组前向的各个前向视频图像组,从所述前向视频图像组获取对应的前向帧内编码帧,并根据所述目标视频中视频帧的显示顺序的倒序依次对所述目标帧内编码帧和所述各个前向帧内编码帧进行解码并播放。
3.根据权利要求1所述的方法,其特征在于,所述视频图像组的形成步骤包括:
获取所述目标视频对应的当前原始视频帧,对所述当前原始视频帧进行复制,得到当前复制视频帧,将所述当前原始视频帧以及所述当前复制视频帧进行组合,得到所述当前原始视频帧对应的当前待编码帧集合;
对所述当前待编码帧集合进行编码,得到所述当前待编码帧集合对应的当前视频图像组,包括:对所述当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对所述当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在视频倒播界面上显示视频发送入口;
响应于对所述视频发送入口的选择操作,根据所述目标视频中视频帧的显示顺序的倒序从所述各个视频图像组中获取对应的帧内编码帧,并依次对所述各个帧内编码帧进行解码后进行编码,得到所述目标视频对应的编码倒播视频数据;
发送所述编码倒播视频数据。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取当前倒播模式;
当所述当前倒播模式为第一倒播模式时,根据所述目标视频标识获取所述目标视频对应的初始视频数据,所述初始视频数据为进行了编码的视频数据;
获取所述初始视频数据中关键帧的位置,根据所述关键帧的位置对所述初始视频数据进行切分,得到一组或多组子视频帧集合,所述子视频帧集合的首帧为关键帧;
按照所述目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合,对所述当前子视频帧集合中的视频帧进行解码并按照所述目标视频中视频帧的显示顺序的倒序依次显示解码后的视频帧;
进入按照所述目标视频中视频帧的显示顺序的倒序获取当前子视频帧集合的步骤,直至所述初始视频数据的待处理子视频帧集合获取完毕;或
当所述当前倒播方式为第二倒播方式时,进入根据所述目标视频标识获取对应的目标视频处理数据的步骤。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
按照所述目标视频中视频帧的显示顺序的倒序依次获取当前子视频帧集合,对所述当前子视频帧集合中的视频帧进行解码,并按照所述目标视频中视频帧的显示顺序的倒序对解码后的视频进行编码并排列编码后的视频帧,得到所述当前子视频帧集合对应的当前倒排子视频帧集合;
将所述各个当前倒排子视频帧集合按照对应的所述目标视频中视频帧的帧显示顺序的倒序进行组合,得到所述目标视频对应的倒排视频数据。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取对所述目标视频进行正向播放的正向播放指令;
从所述各个视频图像组中获取对应的帧内编码帧,并根据所述目标视频中视频帧的显示顺序依次对所述各个帧内编码帧进行解码并播放。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取在所述目标视频的正向播放界面上的滑动操作;
当所述滑动操作的方向为预设方向和/或所述滑动操作的滑动次数为预设次数时,触发所述倒播指令。
9.一种视频倒播数据处理方法,所述方法包括:
获取待倒播的目标视频;
从所述目标视频中获取当前原始视频帧,将所述当前原始视频帧进行复制,得到当前复制视频帧,将所述当前原始视频帧以及所述当前复制视频帧进行组合,得到所述当前原始视频帧对应的当前待编码帧集合;
对所述当前待编码帧集合进行编码,得到所述当前待编码帧集合对应的当前视频图像组,包括:对所述当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对所述当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧;
进入从所述目标视频中获取当前原始视频帧的步骤,直至所述目标视频的待处理视频帧获取完毕,得到所述各个当前原始视频帧对应的当前视频图像组;
根据所述各个当前视频图像组得到目标视频处理数据。
10.根据权利要求9所述的方法,其特征在于,所述根据所述各个当前视频图像组得到目标视频处理数据的步骤包括:
从所述各个当前视频图像组中提取出帧内编码帧;
将所述帧内编码帧进行组合,得到所述目标视频处理数据。
11.根据权利要求9所述的方法,其特征在于,所述根据所述各个当前视频图像组得到目标视频处理数据的步骤包括:
将所述各个当前视频图像组进行组合,得到所述目标视频处理数据。
12.一种视频倒播装置,所述装置包括:
倒播指令获取模块,用于获取倒播指令,所述倒播指令包括待倒播的目标视频对应的目标视频标识;
目标视频处理数据获取模块,用于根据所述目标视频标识获取对应的目标视频处理数据,所述目标视频处理数据包括多个已编码的视频图像组,所述各个已编码的视频图像组内的首帧是所述目标视频处理数据对应的原始视频帧对应的帧内编码帧,剩余帧是同一原始视频帧对应的帧间编码帧;
解码及播放模块,用于从所述各个视频图像组中获取对应的帧内编码帧,并根据所述目标视频中视频帧的显示顺序的倒序依次对所述各个帧内编码帧进行解码并播放。
13.一种视频倒播数据处理装置,所述装置包括:
目标视频获取模块,用于获取待倒播的目标视频;
复制模块,用于从所述目标视频中获取当前原始视频帧,将所述当前原始视频帧进行复制,得到当前复制视频帧,将所述当前原始视频帧以及所述当前复制视频帧进行组合,得到所述当前原始视频帧对应的当前待编码帧集合;
视频图像组得到模块,用于对所述当前待编码帧集合进行编码,得到所述当前待编码帧集合对应的当前视频图像组,包括:对所述当前待编码帧集合的首帧进行帧内编码,得到当前帧内编码帧,对所述当前待编码帧集合中的剩余视频帧进行帧间编码,得到当前帧间编码帧;
第三进入模块,用于进入从所述目标视频中获取当前原始视频帧的步骤,直至所述目标视频的待处理视频帧获取完毕,得到所述各个当前原始视频帧对应的当前视频图像组;
目标视频处理数据得到模块,用于根据所述各个当前视频图像组得到目标视频处理数据。
14.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至8中任一项权利要求所述视频倒播方法的步骤。
15.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求9至11中任一项权利要求所述视频倒播数据处理方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至8中任一项权利要求所述视频倒播方法的步骤。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求9至11中任一项权利要求所述视频倒播数据处理方法的步骤。
CN201810308097.0A 2018-04-08 2018-04-08 视频倒播、视频倒播数据处理方法、装置和计算机设备 Active CN110351553B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810308097.0A CN110351553B (zh) 2018-04-08 2018-04-08 视频倒播、视频倒播数据处理方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810308097.0A CN110351553B (zh) 2018-04-08 2018-04-08 视频倒播、视频倒播数据处理方法、装置和计算机设备

Publications (2)

Publication Number Publication Date
CN110351553A true CN110351553A (zh) 2019-10-18
CN110351553B CN110351553B (zh) 2023-09-22

Family

ID=68173196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810308097.0A Active CN110351553B (zh) 2018-04-08 2018-04-08 视频倒播、视频倒播数据处理方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN110351553B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083497A (zh) * 2019-12-31 2020-04-28 北京奇艺世纪科技有限公司 一种视频截图方法及装置
CN111464864A (zh) * 2020-04-02 2020-07-28 Oppo广东移动通信有限公司 倒序视频获取方法、装置、电子设备以及存储介质
CN111526404A (zh) * 2020-04-27 2020-08-11 杭州海康威视系统技术有限公司 单帧播放方法、装置、设备以及存储介质
CN111526426A (zh) * 2020-04-24 2020-08-11 Oppo广东移动通信有限公司 一种视频播放方法、终端设备及存储介质
CN111970559A (zh) * 2020-07-09 2020-11-20 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN111970560A (zh) * 2020-07-09 2020-11-20 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN113973225A (zh) * 2020-07-22 2022-01-25 阿里巴巴集团控股有限公司 视频倒播方法和装置,计算机存储介质和电子设备
CN114205668A (zh) * 2021-12-13 2022-03-18 广州博冠信息科技有限公司 视频播放方法、装置、电子设备及计算机可读介质
CN114650452A (zh) * 2022-02-28 2022-06-21 北京中交兴路信息科技有限公司 车载视频的倒播方法、装置、电子设备及介质
CN115150675A (zh) * 2022-06-30 2022-10-04 苏州市科远软件技术开发有限公司 倒序播放方法、系统以及倒序切片方法
CN114205668B (zh) * 2021-12-13 2024-06-04 广州博冠信息科技有限公司 视频播放方法、装置、电子设备及计算机可读介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020168175A1 (en) * 2001-05-14 2002-11-14 Green Dustin L. Systems and methods for playing digital video in reverse and fast forward modes
US6621979B1 (en) * 1998-06-11 2003-09-16 Koninklijke Philips Electronics N.V. Trick play signal generation for a digital video recorder using retrieved intra-encoded pictures and generated inter-encoded pictures
WO2005065030A2 (en) * 2004-01-08 2005-07-21 Videocodes, Inc. Video compression device and a method for compressing video
US20090016435A1 (en) * 2006-01-20 2009-01-15 Nxp B.V. Replacement of frame data in a video stream signal
CN102780919A (zh) * 2012-08-24 2012-11-14 乐视网信息技术(北京)股份有限公司 通过关键帧进行视频定位和播放的方法
CN105025357A (zh) * 2015-06-05 2015-11-04 北京中电兴发科技有限公司 一种视频倒放的方法
CN105898626A (zh) * 2015-12-11 2016-08-24 乐视网信息技术(北京)股份有限公司 用于生成倒播视频的方法、装置及播放设备
CN106303379A (zh) * 2015-05-20 2017-01-04 杭州海康威视数字技术股份有限公司 一种视频文件逆序播放方法及系统
CN106331718A (zh) * 2016-08-31 2017-01-11 浙江大华技术股份有限公司 一种视频倒放方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6621979B1 (en) * 1998-06-11 2003-09-16 Koninklijke Philips Electronics N.V. Trick play signal generation for a digital video recorder using retrieved intra-encoded pictures and generated inter-encoded pictures
US20020168175A1 (en) * 2001-05-14 2002-11-14 Green Dustin L. Systems and methods for playing digital video in reverse and fast forward modes
WO2005065030A2 (en) * 2004-01-08 2005-07-21 Videocodes, Inc. Video compression device and a method for compressing video
US20090016435A1 (en) * 2006-01-20 2009-01-15 Nxp B.V. Replacement of frame data in a video stream signal
CN102780919A (zh) * 2012-08-24 2012-11-14 乐视网信息技术(北京)股份有限公司 通过关键帧进行视频定位和播放的方法
CN106303379A (zh) * 2015-05-20 2017-01-04 杭州海康威视数字技术股份有限公司 一种视频文件逆序播放方法及系统
CN105025357A (zh) * 2015-06-05 2015-11-04 北京中电兴发科技有限公司 一种视频倒放的方法
CN105898626A (zh) * 2015-12-11 2016-08-24 乐视网信息技术(北京)股份有限公司 用于生成倒播视频的方法、装置及播放设备
CN106331718A (zh) * 2016-08-31 2017-01-11 浙江大华技术股份有限公司 一种视频倒放方法及装置

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083497A (zh) * 2019-12-31 2020-04-28 北京奇艺世纪科技有限公司 一种视频截图方法及装置
CN111464864A (zh) * 2020-04-02 2020-07-28 Oppo广东移动通信有限公司 倒序视频获取方法、装置、电子设备以及存储介质
CN111526426A (zh) * 2020-04-24 2020-08-11 Oppo广东移动通信有限公司 一种视频播放方法、终端设备及存储介质
CN111526404A (zh) * 2020-04-27 2020-08-11 杭州海康威视系统技术有限公司 单帧播放方法、装置、设备以及存储介质
CN111970559B (zh) * 2020-07-09 2022-07-22 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN111970560A (zh) * 2020-07-09 2020-11-20 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN111970559A (zh) * 2020-07-09 2020-11-20 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN111970560B (zh) * 2020-07-09 2022-07-22 北京百度网讯科技有限公司 视频获取方法、装置、电子设备及存储介质
CN113973225A (zh) * 2020-07-22 2022-01-25 阿里巴巴集团控股有限公司 视频倒播方法和装置,计算机存储介质和电子设备
CN114205668A (zh) * 2021-12-13 2022-03-18 广州博冠信息科技有限公司 视频播放方法、装置、电子设备及计算机可读介质
CN114205668B (zh) * 2021-12-13 2024-06-04 广州博冠信息科技有限公司 视频播放方法、装置、电子设备及计算机可读介质
CN114650452A (zh) * 2022-02-28 2022-06-21 北京中交兴路信息科技有限公司 车载视频的倒播方法、装置、电子设备及介质
CN115150675A (zh) * 2022-06-30 2022-10-04 苏州市科远软件技术开发有限公司 倒序播放方法、系统以及倒序切片方法
CN115150675B (zh) * 2022-06-30 2023-09-26 苏州市科远软件技术开发有限公司 倒序播放方法、系统以及倒序切片方法

Also Published As

Publication number Publication date
CN110351553B (zh) 2023-09-22

Similar Documents

Publication Publication Date Title
CN110351553A (zh) 视频倒播、视频倒播数据处理方法、装置和计算机设备
CN101300567B (zh) 在Web上的媒体共享和创作的方法
CN103314591B (zh) 时间可缩放性的高层句法
CN101778257B (zh) 用于数字视频点播中的视频摘要片断的生成方法
US8627206B2 (en) Image processing device and image processing method for displaying images in a spiral form
CN104754413B (zh) 基于图像搜索识别电视信号并推荐信息的方法和设备
TWI239207B (en) Method and device for coding digital images using intra-mode block prediction
CN105144728B (zh) 通过http的动态自适应流式传输中面对丢失的媒体分段的恢复力
TW200400764A (en) An object oriented video system
CN105359544B (zh) 数字视频流传输中的特技播放
CN101346719A (zh) 从视频帧中选择关键帧
CN107396138A (zh) 一种视频编解码方法及设备
WO2007056048A1 (en) Multi-view video delivery
CN105306945A (zh) 一种监控视频的可伸缩浓缩编码方法和装置
CN104685873B (zh) 编码控制设备以及编码控制方法
CN113965751B (zh) 屏幕内容编码方法、装置、设备及存储介质
CN109672893A (zh) 一种视频解码方法、装置、设备和存储介质
WO2021098151A1 (zh) 特效视频合成方法、装置、计算机设备和存储介质
CN113225585A (zh) 一种视频清晰度的切换方法、装置、电子设备以及存储介质
CN101945263A (zh) 一种在视频资源中使用信息集的方法
JP2017085495A (ja) 画像処理装置、画像処理方法、及び、プログラム
CN110572723A (zh) 一种缩略图生成的方法以及相关装置
CN101288314A (zh) 动态图像编码装置、动态图像解码装置、动态图像编码方法、动态图像解码方法、动态图像编码程序以及动态图像解码程序
CN100571401C (zh) 确定参考帧的方法及其装置
CN112019878B (zh) 一种视频解码和编辑的方法、装置、设备和存储介质

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