CN111479165A - 软硬件解码分辨率无缝切换方法、装置及存储介质 - Google Patents

软硬件解码分辨率无缝切换方法、装置及存储介质 Download PDF

Info

Publication number
CN111479165A
CN111479165A CN201910061657.1A CN201910061657A CN111479165A CN 111479165 A CN111479165 A CN 111479165A CN 201910061657 A CN201910061657 A CN 201910061657A CN 111479165 A CN111479165 A CN 111479165A
Authority
CN
China
Prior art keywords
decoder
decoding
video
resolution
player
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
CN201910061657.1A
Other languages
English (en)
Other versions
CN111479165B (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.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN201910061657.1A priority Critical patent/CN111479165B/zh
Priority to US17/425,176 priority patent/US11930246B2/en
Priority to PCT/CN2019/125521 priority patent/WO2020151397A1/zh
Publication of CN111479165A publication Critical patent/CN111479165A/zh
Application granted granted Critical
Publication of CN111479165B publication Critical patent/CN111479165B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4382Demodulation or channel decoding, e.g. QPSK demodulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/234363Processing 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 altering the spatial resolution, e.g. for clients with a lower screen resolution
    • 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/23439Processing 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 for generating different versions
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • 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/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明涉及一种软硬件解码分辨率无缝切换方法、装置及计算机可读存储介质,属于互联网技术领域。本发明的软硬件解码分辨率无缝切换方法、装置及计算机可读存储介质,其在dash视频播放过程中,当需要进行分辨率切换时,根据原解码器收到的目标编码格式的视频流初始化软解码器,与此同时,原解码器的继续以原格式解码已存在于缓存中的原编码格式视频流,当编码格式视频流解码完成后,利用已初始化的软解码器解码具有目标编码格式的视频流,同时开始初始化与目标编码格式对应的第二硬解码器解码并解码,当第二硬解码器解码进度追上软解码器后,切换到第二硬解码器,停止软解码,从而实现分辨率之间的无缝切换,避免播放过程中产生卡顿,提高了用户体验。

Description

软硬件解码分辨率无缝切换方法、装置及存储介质
技术领域
本发明涉及互联网技术领域,特别涉及网络视频技术领域,具体是指一种软硬件解码分辨率无缝切换方法、装置及计算机可读存储介质。
背景技术
现有的移动播放器通常可以提供软件解码和硬件解码两种视频解码方案。一般情况下,播放器客户端通常优先使用硬件解码,因为硬件解码占用更低的系统资源,具有更高的运算性能。
dash视频是一种常用的网络视频格式,在dash视频播放过程中,切换视频清晰度,涉及到视频编码变化,在一定的情况下,视频解码器需要适应H.264和H.265之间切换。由于解码器初始化需要一定的时间,因此切换时容易出现卡顿,视频不流畅,用户观看体验较差。
如何提供适用于dash视频的硬件解码分辨率无缝切换方法,避免播放过程中产生卡顿,提高用户体验,成为本领域亟待解决的问题。
发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种分辨率切换时,首先初始化软解码器,利用软解码器进行对应的第二解码器解码,同时开始第二硬解码器解码,当硬解码进度赶上软解码器时,再切换到硬解码,从而实现分辨率之间的无缝切换的软硬件解码分辨率无缝切换方法、装置及存储介质。
为了实现上述的目的,本发明的软硬件解码分辨率无缝切换方法包括以下步骤:
(1)播放器接收封装视频后,解封装所述的封装视频,获得具有第一编码格式的视频流;
(2)所述的播放器采用第一硬解码器解码所述的具有第一编码格式的视频流,并开始以第一分辨率播放视频;
(3)所述的播放器接收到切换分别率指令;
(4)所述的播放器解封装所述的封装视频,获得具有第二编码格式的视频流;
(5)所述的播放器采用软解码器解码所述的具有第二编码格式的视频流,并开始以第二分辨率播放视频;
(6)所述的播放器采用第二硬解码器解码所述的具有第二编码格式的视频流;
(7)当所述的第二硬解码器的解码进度追上所述的软解码器的解码进度时,播放该第二硬解码器解码获得的第二分辨率视频,并停止所述的软解码器。
该软硬件解码分辨率无缝切换方法中,所述的封装视频为dash格式视频。
该软硬件解码分辨率无缝切换方法中,所述的第一编码格式为H.264编码格式和H.265编码格式中的任意一种,所述的第二编码格式为上述两种编码格式中除所述第一编码格式外的另一种;所述的第一硬解码器为与所述第一编码格式对应格式的硬件解码器,所述的第二硬解码器为与所述第二编码格式对应格式的硬件解码器。
该软硬件解码分辨率无缝切换方法中,所述的第一编码格式与所述的第二编码格式也可以为相同的编码格式。
该软硬件解码分辨率无缝切换方法中,所述的步骤(5)具体包括以下步骤:
(51)所述的播放器将所述的具有第二编码格式的视频流发送至软解码器;
(52)所述的播放器根据所述的第二编码格式初始化软解码器;
(53)所述的软解码器解码所述的具有第二编码格式的视频流,并输出第二分辨率视频帧;
(54)当所述的第一硬解码器完成所述的具有第一编码格式的视频流解码后,所述的播放器开始渲染所述的第二分辨率视频帧,并以第二分辨率播放视频。
该软硬件解码分辨率无缝切换方法中,所述的步骤(7)具体包括以下步骤:
(71)所述的播放器实时比较从所述的软解码器获得的第二分辨率视频帧和从所述的第二硬解码器获得的第二分辨率视频帧,对二者中时间戳更大的进行渲染;
(72)当从所述的第二硬解码器获得的第二分辨率视频帧的时间戳大于从所述的软解码器获得的第二分辨率视频帧时,开始渲染从所述的第二硬解码器获得的第二分辨率视频帧,获得的第二分辨率视频并播放;
(73)停止所述的软解码器。
该软硬件解码分辨率无缝切换方法中,所述的步骤(3)具体为:
所述的播放器实时检测接收封装视频所用网络的带宽,根据检测结果自动生成切换分别率指令。
该软硬件解码分辨率无缝切换方法中,所述的步骤(3)具体为:
所述的播放器接收到的用户操作生成相应的切换分别率指令。
该软硬件解码分辨率无缝切换方法中,所述的步骤(2)具体包括以下步骤:
(21)所述的播放器采用软解码器解码所述的具有第一编码格式的视频流,并开始以第一分辨率播放视频;
(22)所述的播放器采用第一硬解码器解码所述的具有第一编码格式的视频流;
(23)当所述的第一硬解码器的解码进度追上所述的软解码器的解码进度时,播放该第一硬解码器解码获得的第一分辨率视频,并停止所述的软解码器。
该软硬件解码分辨率无缝切换方法中,所述的播放器为iOS视频播放器,所述的解码器为VideoToolbox硬件解码器。
该软硬件解码分辨率无缝切换方法中,所述的播放器为Android视频播放器,所述的解码器为MediaCodec硬件解码器。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述的软硬件解码分辨率无缝切换方法。
本发明还提供一种软硬件解码分辨率无缝切换装置,其包括处理器和存储器,所述的存储器上存储有计算机程序,该计算机程序被所述的处理器执行时,实现上述的软硬件解码分辨率无缝切换方法。
采用了该发明的软硬件解码分辨率无缝切换方法、装置及计算机可读存储介质,其在dash视频播放过程中,当需要进行分辨率切换时,根据原解码器收到的目标编码格式的视频流初始化软解码器,与此同时,原解码器的继续以原格式解码已存在于缓存中的原编码格式视频流,当编码格式视频流解码完成后,利用已初始化的软解码器解码具有目标编码格式的视频流,同时开始初始化与目标编码格式对应的第二硬解码器解码并解码,当第二硬解码器解码进度追上软解码器后,切换到第二硬解码器,停止软解码,从而实现分辨率之间的无缝切换,避免播放过程中产生卡顿,提高了用户体验。且本发明的软硬件解码分辨率无缝切换方法、装置及计算机可读存储介质,其实现方式简便,应用成本低廉,应用范围也相当广泛。
附图说明
图1为本发明的软硬件解码分辨率无缝切换方法的步骤流程图。
图2为本发明的软硬件解码分辨率无缝切换方法在实际应用中的流程示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1所示,为本发明的软硬件解码分辨率无缝切换方法的步骤流程图。
在一种实施方式中,该软硬件解码分辨率无缝切换方法,包括以下步骤:
(1)播放器接收dash格式封装视频后,解封装所述的封装视频,获得具有第一编码格式的视频流;
(2)所述的播放器采用第一硬解码器解码所述的具有第一编码格式的视频流,并开始以第一分辨率播放视频;
(3)所述的播放器接收到切换分别率指令;
(4)所述的播放器解封装所述的封装视频,获得具有第二编码格式的视频流;
(5)所述的播放器采用软解码器解码所述的具有第二编码格式的视频流,并开始以第二分辨率播放视频;软解码解出视频帧后,需要等待第一硬解码解完缓存,并渲染完成后,再出帧,以保持画面连续;
(6)所述的播放器采用第二硬解码器解码所述的具有第二编码格式的视频流;
(7)当所述的第二硬解码器的解码进度追上所述的软解码器的解码进度时,播放该第二硬解码器解码获得的第二分辨率视频,并停止所述的软解码器。
其中,所述的封装视频可以为dash格式视频。所述的第一编码格式为H.264编码格式,所述的第二编码格式为H.265编码格式,反之亦可。所述的第一硬解码器为与所述第一编码格式对应格式的硬件解码器,所述的第二硬解码器为与所述第二编码格式对应格式的硬件解码器。另外,所述的第一编码格式与所述的第二编码格式也可以为相同的编码格式,即都为H.264编码格式或都为H.265编码格式,但二者分辨率不同,例如均为H.264编码,分辨率分别为480P和720P。
在一种优选的实施方式中,所述的步骤(5)具体包括以下步骤:
(51)所述的播放器将所述的具有第二编码格式的视频流发送至软解码器;
(52)所述的播放器根据所述的第二编码格式初始化软解码器;
(53)所述的软解码器解码所述的具有第二编码格式的视频流,并输出第二分辨率视频帧;
(54)当所述的第一硬解码器完成所述的具有第一编码格式的视频流解码后,所述的播放器开始渲染所述的第二分辨率视频帧,并以第二分辨率播放视频。
在另一种优选的实施方式中,所述的步骤(7)具体包括以下步骤:
(71)所述的播放器实时比较从所述的软解码器获得的第二分辨率视频帧和从所述的第二硬解码器获得的第二分辨率视频帧,对二者中时间戳更大的进行渲染;
(72)当从所述的第二硬解码器获得的第二分辨率视频帧的时间戳大于从所述的软解码器获得的第二分辨率视频帧时,开始渲染从所述的第二硬解码器获得的第二分辨率视频帧,获得的第二分辨率视频并播放;
(73)停止所述的软解码器。
在又一种优选的实施方式中,所述的步骤(3)可以具体为:
所述的播放器实时检测接收封装视频所用网络的带宽,根据检测结果自动生成切换分别率指令。从而实现根据带宽的自动切换。
或者步骤(3)可以为:
所述的播放器接收到的用户操作生成相应的切换分别率指令,即采用手动切换。
在更优选的实施方式中,所述的步骤(2)具体包括以下步骤:
(21)所述的播放器采用软解码器解码所述的具有第一编码格式的视频流,并开始以第一分辨率播放视频;
(22)所述的播放器采用第一硬解码器解码所述的具有第一编码格式的视频流;
(23)当所述的第一硬解码器的解码进度追上所述的软解码器的解码进度时,播放该第一硬解码器解码获得的第一分辨率视频,并停止所述的软解码器。
利用该实施方式可以实现快速出首帧效果,节省用户等待时间,提升使用体验。
在更优选的实施方式中,所述的播放器也可以为Android视频播放器,相应地,所述的解码器为MediaCodec硬件解码器。
本发明还提供一种软硬件解码分辨率无缝切换装置及一种计算机可读存储介质,该装置包括处理器和存储器。所述的存储器即为所述的计算机可读存储介质,其上存储有计算机程序。该计算机程序被所述的处理器执行时,实现上述实施方式所述的软硬件解码分辨率无缝切换方法。
在实际应用中,本发明的硬件解码动态分辨率无缝切换方法的流程如图2所示,其具体实现方式,通过以下实施例说明。
实施例1
用户利用手机等移动端播放dash视频,移动端设置为硬件解码。此时设定的播放分辨率为480P。dash视频开始解封装,获得相应的H.264编码格式的视频流。初始化H.264硬解码器,并将所述的H.264编码格式的视频流解码出帧,即可以480P分辨率开始播放视频。当用户手动切换画质,从480P切换到720P时,切换流程如图2所示。dash视频解封装输出的视频编码变为H.265格式,变化的首帧需要携带codec初始化的extradata,用于初始化解码器的数据。解码器检测到编码变化后,创建软解码器,并把解封装的视频流(720P的视频流)复制一份至软解码器。分辨率变化后的携带codec初始化的extradata的第一帧用于软解码初始化。软解码器拿到视频流,开始解码,但是不渲染。第一硬解码器把缓存的480P视频流,全部解码完成后,让软解码开始渲染。第一硬解码器停止,然后重新创建初始化第二硬解码器,开始解码720P的视频流。第二硬解码器和软解码器在把解码后的视频帧放到视频渲染队列时,进行时间戳比较,选取较大的。当硬解码解出的视频帧的时间戳大于软解码解出的视频帧的时间戳时,停止软解码,开始由硬解码正常出帧,从而完成分辨率的无缝切换。
dash视频中,1080P和720P分辨率采用H.265编码,480P和360P分辨率采用H.264编码。因此,若从360P分辨率切换到1080P分辨率与上述过程相同。而分辨率由720P切换到480P,则采用与上述过程类似的从H.265解码器转换到H.264解码器的过程。
移动端可以是Android设备,则播放器为Android视频播放器,相应地,解码器为MediaCodec硬件解码器。
采用该实施例进行画质切换(清晰度切换,例如480P切到720P)时,切换过程中,需要对解码器进行重启,这个时候启动软解码,来弥补硬解码重启过程无法出帧的情况,使视频画面看上去更流畅。
实施例2
与上述实施例1的区别在于,用户所采用的手机等移动端可以检测网络带宽。在播放dash视频的过程中,检测到带宽的变化后,可以自动判断是否需要调整分辨率。若需要调整,则根据当前分辨率和目标分辨率适用实施例1所述的切换过程完成自动切换。采用自动切换模式可以最大程度适应带宽,避免卡顿,保证用户的观看体验。
实施例3
在开始dash视频播放时,也可采取先进行软解码而后转换到硬解码的方式。具体而言,
当播放器设定采用480P分辨率时,先采用软解码器解码H.264编码格式的视频流,并开始以480P分辨率播放视频;进而播放器采用第一硬解码器解码H.264编码格式的视频流;当第一硬解码器的解码进度追上所述的软解码器的解码进度时,播放该第一硬解码器解码获得的480P分辨率视频,并停止软解码器。由此可以实现起播过程中,同时创建软解码和硬解码,软解码出帧速度更快,从而弥补硬解码出首帧慢的情况,待硬解码追上后,再切换到硬解码,硬解码省电,占用cpu少,更流畅。
采用了该发明的软硬件解码分辨率无缝切换方法、装置及计算机可读存储介质,其在dash视频播放过程中,当需要进行分辨率切换时,根据原解码器收到的目标编码格式的视频流初始化软解码器,与此同时,原解码器的继续以原格式解码已存在于缓存中的原编码格式视频流,当编码格式视频流解码完成后,利用已初始化的软解码器解码具有目标编码格式的视频流,同时开始初始化与目标编码格式对应的第二硬解码器解码并解码,当第二硬解码器解码进度追上软解码器后,切换到第二硬解码器,停止软解码,从而实现分辨率之间的无缝切换,避免播放过程中产生卡顿,提高了用户体验。且本发明的软硬件解码分辨率无缝切换方法、装置及计算机可读存储介质,其实现方式简便,应用成本低廉,应用范围也相当广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (12)

1.一种软硬件解码分辨率无缝切换方法,其特征在于,包括以下步骤:
(1)播放器接收封装视频后,解封装所述的封装视频,获得具有第一编码格式的视频流;
(2)所述的播放器采用第一硬解码器解码所述的具有第一编码格式的视频流,并开始以第一分辨率播放视频;
(3)所述的播放器接收到切换分别率指令;
(4)所述的播放器解封装所述的封装视频,获得具有第二编码格式的视频流;
(5)所述的播放器采用软解码器解码所述的具有第二编码格式的视频流,并开始以第二分辨率播放视频;
(6)所述的播放器采用第二硬解码器解码所述的具有第二编码格式的视频流;
(7)当所述的第二硬解码器的解码进度追上所述的软解码器的解码进度时,播放该第二硬解码器解码获得的第二分辨率视频,并停止所述的软解码器。
2.根据权利要求1所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的封装视频为dash格式视频。
3.根据权利要求2所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的第一编码格式为H.264编码格式和H.265编码格式中的任意一种,所述的第二编码格式为上述两种编码格式中除所述第一编码格式外的另一种;所述的第一硬解码器为与所述第一编码格式对应格式的硬件解码器,所述的第二硬解码器为与所述第二编码格式对应格式的硬件解码器。
4.根据权利要求2所述的软硬件解码分辨率无缝切换方法,其特征在于,第一编码格式与所述的第二编码格式为相同的编码格式。
5.根据权利要求1所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的步骤(5)具体包括以下步骤:
(51)所述的播放器将所述的具有第二编码格式的视频流发送至软解码器;
(52)所述的播放器根据所述的第二编码格式初始化软解码器;
(53)所述的软解码器解码所述的具有第二编码格式的视频流,并输出第二分辨率视频帧;
(54)当所述的第一硬解码器完成所述的具有第一编码格式的视频流解码后,所述的播放器开始渲染所述的第二分辨率视频帧,并以第二分辨率播放视频。
6.根据权利要求1所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的步骤(7)具体包括以下步骤:
(71)所述的播放器实时比较从所述的软解码器获得的第二分辨率视频帧和从所述的第二硬解码器获得的第二分辨率视频帧,对二者中时间戳更大的进行渲染;
(72)当从所述的第二硬解码器获得的第二分辨率视频帧的时间戳大于从所述的软解码器获得的第二分辨率视频帧时,开始渲染从所述的第二硬解码器获得的第二分辨率视频帧,获得的第二分辨率视频并播放;
(73)停止所述的软解码器。
7.根据权利要求1所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的步骤(3)具体为:
所述的播放器实时检测接收封装视频所用网络的带宽,根据检测结果自动生成切换分别率指令。
8.根据权利要求1所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的步骤(3)具体为:
所述的播放器接收到的用户操作生成相应的切换分别率指令。
9.根据权利要求1所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的步骤(2)具体包括以下步骤:
(21)所述的播放器采用软解码器解码所述的具有第一编码格式的视频流,并开始以第一分辨率播放视频;
(22)所述的播放器采用第一硬解码器解码所述的具有第一编码格式的视频流;
(23)当所述的第一硬解码器的解码进度追上所述的软解码器的解码进度时,播放该第一硬解码器解码获得的第一分辨率视频,并停止所述的软解码器。
10.根据权利要求1所述的软硬件解码分辨率无缝切换方法,其特征在于,所述的播放器为Android视频播放器,所述的解码器为MediaCodec硬件解码器。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现权利要求1至10中任一项所述的软硬件解码分辨率无缝切换方法。
12.一种软硬件解码分辨率无缝切换装置,其包括处理器和存储器,所述的存储器上存储有计算机程序,其特征在于,该计算机程序被所述的处理器执行时,实现权利要求1至10中任一项所述的软硬件解码分辨率无缝切换方法。
CN201910061657.1A 2019-01-23 2019-01-23 软硬件解码分辨率无缝切换方法、装置及存储介质 Active CN111479165B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910061657.1A CN111479165B (zh) 2019-01-23 2019-01-23 软硬件解码分辨率无缝切换方法、装置及存储介质
US17/425,176 US11930246B2 (en) 2019-01-23 2019-12-16 Seamless switching method, device and storage medium of software and hardware decoding resolution
PCT/CN2019/125521 WO2020151397A1 (zh) 2019-01-23 2019-12-16 软硬件解码分辨率无缝切换方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910061657.1A CN111479165B (zh) 2019-01-23 2019-01-23 软硬件解码分辨率无缝切换方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN111479165A true CN111479165A (zh) 2020-07-31
CN111479165B CN111479165B (zh) 2021-08-06

Family

ID=71736674

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910061657.1A Active CN111479165B (zh) 2019-01-23 2019-01-23 软硬件解码分辨率无缝切换方法、装置及存储介质

Country Status (3)

Country Link
US (1) US11930246B2 (zh)
CN (1) CN111479165B (zh)
WO (1) WO2020151397A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112911335A (zh) * 2021-02-03 2021-06-04 烽火通信科技股份有限公司 一种基于视频编码的服务调度方法、视频服务器和机顶盒
CN113301346A (zh) * 2021-05-11 2021-08-24 随锐科技集团股份有限公司 基于安卓终端软硬解码混合播放多路视频的方法及装置
CN113676769A (zh) * 2021-08-23 2021-11-19 北京字跳网络技术有限公司 视频解码方法、设备、存储介质及程序产品
CN114363637A (zh) * 2021-12-08 2022-04-15 广州方硅信息技术有限公司 视频预解码方法、电子设备及计算机可读存储介质
CN114422799A (zh) * 2022-01-24 2022-04-29 北京百度网讯科技有限公司 视频文件的解码方法、装置、电子设备、程序产品

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114025170A (zh) * 2021-11-30 2022-02-08 深圳Tcl新技术有限公司 视频播放方法、装置、计算机设备和计算机可读存储介质
CN114339430B (zh) * 2021-12-10 2023-04-28 中国船舶重工集团公司第七0九研究所 一种基于硬解码的视频重定位播放方法及系统
CN116055715B (zh) * 2022-05-30 2023-10-20 荣耀终端有限公司 编解码器的调度方法及电子设备

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101778259A (zh) * 2009-12-25 2010-07-14 深圳中兴力维技术有限公司 一种网络视频监控系统及其视频显示效率的提高方法
EP2716337A2 (en) * 2007-12-05 2014-04-09 OL2, Inc. Real-time streaming of interactive video
US8868999B1 (en) * 2011-01-06 2014-10-21 Marvell International Ltd. Systems and methods for erasure correction of iterative codes
US9251855B2 (en) * 2011-01-28 2016-02-02 Apple Inc. Efficient media processing
CN105992056A (zh) * 2015-01-30 2016-10-05 腾讯科技(深圳)有限公司 一种视频解码的方法和装置
WO2017007659A1 (en) * 2015-07-08 2017-01-12 Google Inc. Single-stream transmission method for multi-user video conferencing
US20170127074A1 (en) * 2015-10-29 2017-05-04 Microsoft Technology Licensing, Llc Video bit stream decoding
CN107249144A (zh) * 2017-05-12 2017-10-13 北京小鸟看看科技有限公司 多媒体文件解码的方法、多媒体播放器和播放设备
CN107396123A (zh) * 2017-09-25 2017-11-24 南京荣膺软件科技有限公司 便携式智能动态软硬件切换转码系统
CN107707976A (zh) * 2017-09-29 2018-02-16 维沃移动通信有限公司 一种视频解码方法及移动终端
CN107786890A (zh) * 2017-10-30 2018-03-09 深圳Tcl数字技术有限公司 视频切换方法、装置及存储介质
CN109168078A (zh) * 2018-09-10 2019-01-08 苏宁智能终端有限公司 一种视频清晰度切换方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2613552A3 (en) * 2011-11-17 2016-11-09 Axell Corporation Method for moving image reproduction processing and mobile information terminal using the method
KR20160065504A (ko) * 2014-12-01 2016-06-09 엘지전자 주식회사 멀티미디어 디바이스 및 그 제어 방법
US10616583B2 (en) * 2016-06-30 2020-04-07 Sony Interactive Entertainment Inc. Encoding/decoding digital frames by down-sampling/up-sampling with enhancement information
JP6732337B2 (ja) * 2016-12-09 2020-07-29 株式会社アクセル 画像データ処理方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2716337A2 (en) * 2007-12-05 2014-04-09 OL2, Inc. Real-time streaming of interactive video
CN101778259A (zh) * 2009-12-25 2010-07-14 深圳中兴力维技术有限公司 一种网络视频监控系统及其视频显示效率的提高方法
US8868999B1 (en) * 2011-01-06 2014-10-21 Marvell International Ltd. Systems and methods for erasure correction of iterative codes
US9251855B2 (en) * 2011-01-28 2016-02-02 Apple Inc. Efficient media processing
CN105992056A (zh) * 2015-01-30 2016-10-05 腾讯科技(深圳)有限公司 一种视频解码的方法和装置
WO2017007659A1 (en) * 2015-07-08 2017-01-12 Google Inc. Single-stream transmission method for multi-user video conferencing
US20170127074A1 (en) * 2015-10-29 2017-05-04 Microsoft Technology Licensing, Llc Video bit stream decoding
CN107249144A (zh) * 2017-05-12 2017-10-13 北京小鸟看看科技有限公司 多媒体文件解码的方法、多媒体播放器和播放设备
CN107396123A (zh) * 2017-09-25 2017-11-24 南京荣膺软件科技有限公司 便携式智能动态软硬件切换转码系统
CN107707976A (zh) * 2017-09-29 2018-02-16 维沃移动通信有限公司 一种视频解码方法及移动终端
CN107786890A (zh) * 2017-10-30 2018-03-09 深圳Tcl数字技术有限公司 视频切换方法、装置及存储介质
CN109168078A (zh) * 2018-09-10 2019-01-08 苏宁智能终端有限公司 一种视频清晰度切换方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吕卫国: ""一种高分辨率视频切换矩阵研究与设计"", 《计算机测量与控制》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112911335A (zh) * 2021-02-03 2021-06-04 烽火通信科技股份有限公司 一种基于视频编码的服务调度方法、视频服务器和机顶盒
CN113301346A (zh) * 2021-05-11 2021-08-24 随锐科技集团股份有限公司 基于安卓终端软硬解码混合播放多路视频的方法及装置
CN113676769A (zh) * 2021-08-23 2021-11-19 北京字跳网络技术有限公司 视频解码方法、设备、存储介质及程序产品
WO2023024801A1 (zh) * 2021-08-23 2023-03-02 北京字跳网络技术有限公司 视频解码方法、设备、存储介质及程序产品
CN114363637A (zh) * 2021-12-08 2022-04-15 广州方硅信息技术有限公司 视频预解码方法、电子设备及计算机可读存储介质
CN114422799A (zh) * 2022-01-24 2022-04-29 北京百度网讯科技有限公司 视频文件的解码方法、装置、电子设备、程序产品
CN114422799B (zh) * 2022-01-24 2024-04-19 北京百度网讯科技有限公司 视频文件的解码方法、装置、电子设备、程序产品

Also Published As

Publication number Publication date
WO2020151397A1 (zh) 2020-07-30
US11930246B2 (en) 2024-03-12
US20220124403A1 (en) 2022-04-21
CN111479165B (zh) 2021-08-06

Similar Documents

Publication Publication Date Title
CN111479165B (zh) 软硬件解码分辨率无缝切换方法、装置及存储介质
CN109327728B (zh) 一种一对多同屏方法、装置和系统、同屏设备及存储介质
CN111479164A (zh) 硬件解码动态分辨率无缝切换方法、装置及存储介质
KR101008764B1 (ko) 쌍방향 미디어 응답 시스템에서 시각 단서를 제공하는 방법
WO2017219896A1 (zh) 视频流的传输方法及装置
CN110430441B (zh) 一种云手机视频采集方法、系统、装置及存储介质
CN111355976B (zh) 一种基于hevc标准的视频直播方法及系统
WO2019170073A1 (zh) 媒体播放
JP6499324B2 (ja) ビデオを再生するための方法、クライアント及びコンピュータ記憶媒体
CN108737893B (zh) 基于混合解码实现快速首帧出图的视频播放方法、装置和介质
CN107517400B (zh) 流媒体播放方法及流媒体播放器
US9509940B2 (en) Image output device, image output method, and recording medium
US11438645B2 (en) Media information processing method, related device, and computer storage medium
CN109862409A (zh) 视频解码、播放方法、装置、系统、终端及存储介质
US9055272B2 (en) Moving image reproduction apparatus, information processing apparatus, and moving image reproduction method
WO2017185609A1 (zh) 一种视频处理方法及设备
US20220021872A1 (en) Video encoding method and apparatus, video decoding method and apparatus, storage medium, and electronic device
CN115643449B (zh) 云服务的视频显示方法、装置、设备、存储介质和系统
CN106878290B (zh) 音视频的播放方法及装置
WO2021057686A1 (zh) 视频解码方法和装置、视频编码方法和装置、存储介质及电子装置
JP2016525297A (ja) グラフィクスプロセッサを使用するビデオ復号化のためのピクチャ参照コントロール
US20140297720A1 (en) Client apparatus, server apparatus, multimedia redirection system, and method thereof
CN115484494A (zh) 一种数字孪生视频流的处理方法、装置及设备
CN113709447B (zh) 一种终端设备播放性能的检测方法和装置
CN115190359A (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