CN110213659A - 一种可在不同视频流间快速切换播放器的实现方法 - Google Patents

一种可在不同视频流间快速切换播放器的实现方法 Download PDF

Info

Publication number
CN110213659A
CN110213659A CN201910586778.8A CN201910586778A CN110213659A CN 110213659 A CN110213659 A CN 110213659A CN 201910586778 A CN201910586778 A CN 201910586778A CN 110213659 A CN110213659 A CN 110213659A
Authority
CN
China
Prior art keywords
player
video
decoder
video stream
information
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
CN201910586778.8A
Other languages
English (en)
Other versions
CN110213659B (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.)
Hangzhou Dang Hong Polytron Technologies Inc
Hangzhou Arcvideo Technology Co ltd
Original Assignee
Hangzhou Dang Hong Polytron Technologies Inc
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 Hangzhou Dang Hong Polytron Technologies Inc filed Critical Hangzhou Dang Hong Polytron Technologies Inc
Priority to CN201910586778.8A priority Critical patent/CN110213659B/zh
Publication of CN110213659A publication Critical patent/CN110213659A/zh
Application granted granted Critical
Publication of CN110213659B publication Critical patent/CN110213659B/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/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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • H04N21/4586Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
    • 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/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8193Monomedia components thereof involving executable data, e.g. software dedicated tools, e.g. video decoder software or IPMP tool

Landscapes

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

Abstract

本发明公开了一种可在不同视频流间快速切换播放器的实现方法。它将播放器的释放、播放器的创建和对解码器实例的处理进行三者分离且进行并行化处理,具体操作步骤如下:播放器的释放:关闭播放器和视频流接收;播放器的创建:创建播放器,开始接收视频流,获得视频编码信息,获取关键帧,实现视频流接收;对解码器实例的处理:预读取视频流信息,视频流信息比对,判断信息是否匹配,如果不匹配,先释放关闭解码器后,创建并初始化解码器;后与匹配一致,进入解码状态,解码并产生输出。本发明的有益效果是:使得用户在终端上在不同视频间切换时可以得到更快的体验,解码器的初始化可以不再依赖于数据接收,把串行的过程变为并行,达到加速目的。

Description

一种可在不同视频流间快速切换播放器的实现方法
技术领域
本发明涉及视频播放相关技术领域,尤其是指一种可在不同视频流间快速切换播放器的实现方法。
背景技术
在传统的播放器实现下,当用户正在观看一个视频时,如果要切换到下一播放器,通常需要先关闭释放前一个播放器所占用的资源(解码器、解复用器、网络资源等),然后分配一个新的播放器实例来接收新的视频流数据。在硬件的不断更新换代之下,这个过程正变得越来越小,但是由于视频技术规格以及硬件的一些特性,使得这个过程不可能完全消除,在不同终端设备上这个过程通常会耗费几百毫秒到数秒的时间,这对于观看视频的用户来说是一种非常不好的体验。
正常情况下,一个视频播放器的生命周期如下:
1.设置并解析视频流地址,与服务器交互;
2.获取视频流地址,并读取视频解码所需要的基本信息;
3.初始化视频解码器和视频输出设备;
4.持续接收并解析视频流,送入解码器解码;
5.解码器开始输出数据,到输出设备完成渲染(用户看到第一帧画面);
6.接收到关闭指令,开始释放相关资源(流接收、解复用);
7.关闭视频解码器和输出设备;
8.释放播放器其余资源,完成关闭。
这个业界通用的流程有其合理性:不同视频流一般来说会采用不同的编码方式和参数,这种情况下解码器和输出设备必须重新初始化不然无法正常工作;网络连接等流接收资源就更不用说了,肯定是无法复用的。但是正因为其通用的特性,使得其无法实现高效的切换效果。而且由于解码器厂家的差异,关闭-重新初始化的耗时有可能相当大,造成整体体验下降。
发明内容
本发明是为了克服现有技术中存在上述的不足,提供了一种能够实现高效切换效果的可在不同视频流间快速切换播放器的实现方法。
为了实现上述目的,本发明采用以下技术方案:
一种可在不同视频流间快速切换播放器的实现方法,将播放器的释放、播放器的创建和对解码器实例的处理进行三者分离,具体操作步骤如下:
(1)播放器的释放:先关闭播放器,后关闭视频流接收,完成关闭;
(2)播放器的创建:先创建播放器,后开始接收视频流,获得视频编码信息,获取关键帧,实现视频流接收;
(3)对解码器实例的处理:先预读取视频流信息,后视频流信息比对,判断信息是否匹配,如果不匹配,则释放关闭解码器后,创建并初始化解码器,进入解码状态,解码并产生输出;如果匹配,则直接进入解码状态,解码并产生输出;
其中:步骤(1)、步骤(2)和步骤(3)三者互不干扰,并同时进行实现并行化处理。
本发明对播放器流程进行优化,将解码器/输出设备实例与播放器实例进行分离,也就是说,一条流播放结束的时候,我们并不会关闭/释放视频解码器和输出设备。这样做的好处是,当切换到下一个视频流,并且这个视频流的编码信息与原先播放的流其实是一样的,那么我们就无需进行比较耗时的关闭解码器-重新创建和初始化解码器操作(在特定设备上,耗时可能达到几百毫秒),直接利用现有解码实例解码即可,从而使得用户在终端上在不同视频间切换时可以得到更快的体验。通过预读取视频流信息,解码器的初始化可以不再依赖于数据接收,把串行的过程变为并行,从而达到加速目的。
作为优选,在步骤(3)中,针对视频流信息比对:为了能提前知道上一个视频流或者下一个视频流的编码信息进行快速比对,引入了频道信息缓存机制,通过这个缓存机制,所有视频流的编码格式以及解码所需参数信息都被保存在本地数据库内,使用时可在无需接收数据的情况下直接通过查询本地数据库得到任意已知视频流的相关信息。
作为优选,本地数据库的更新由EPG更新或者每次播放该视频触发,同时播放器在播放过程中仍然会对数据进行检测。
作为优选,播放器在播放过程中对数据进行检测时,检测到解码参数变更,将会退出解码状态,然后释放关闭解码器,创建并初始化解码器并且更新本地数据库,进入解码状态,解码并产生输出。
作为优选,在步骤(2)中,将获取的视频编码信息跟步骤(3)中的本地数据库缓存的视频信息进行比对匹配,在匹配命中成功时,则直接复用解码器。
本发明的有益效果是:使得用户在终端上在不同视频间切换时可以得到更快的体验,解码器的初始化可以不再依赖于数据接收,把串行的过程变为并行,从而达到加速目的。
附图说明
图1是本发明的结构示意图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步的描述。
如图1所述的实施例中,一种可在不同视频流间快速切换播放器的实现方法,将播放器的释放、播放器的创建和对解码器实例的处理进行三者分离,具体操作步骤如下:
(1)播放器的释放:先关闭播放器,后关闭视频流接收,完成关闭;
(2)播放器的创建:先创建播放器,后开始接收视频流,获得视频编码信息,获取关键帧,实现视频流接收;将获取的视频编码信息跟步骤(3)中的本地数据库缓存的视频信息进行比对匹配,在匹配命中成功时,则直接复用解码器。
(3)对解码器实例的处理:先预读取视频流信息,后视频流信息比对,判断信息是否匹配,如果不匹配,则释放关闭解码器后,创建并初始化解码器,进入解码状态,解码并产生输出;如果匹配,则直接进入解码状态,解码并产生输出;
针对视频流信息比对:为了能提前知道上一个视频流或者下一个视频流的编码信息进行快速比对,引入了频道信息缓存机制,通过这个缓存机制,所有视频流的编码格式以及解码所需参数信息都被保存在本地数据库内,使用时可在无需接收数据的情况下直接通过查询本地数据库得到任意已知视频流的相关信息;通过这个机制,解码器的初始化可以不再依赖于数据接收,把串行的过程变为并行,从而达到加速目的。为了保证播放器的可靠性,本地数据库的更新由EPG更新或者每次播放该视频触发,同时播放器在播放过程中仍然会对数据进行检测;这样即使数据库中并没有这条流的信息,或者说存的是错误的信息,都不会影响视频流的正常播放,只是让视频流的切换速度回落到正常情况而已。播放器在播放过程中对数据进行检测时,检测到解码参数变更,将会退出解码状态,然后释放关闭解码器,创建并初始化解码器并且更新本地数据库,进入解码状态,解码并产生输出。
其中:步骤(1)、步骤(2)和步骤(3)三者互不干扰,并同时进行实现并行化处理。
本发明对播放器流程进行优化,将解码器/输出设备实例与播放器实例进行分离,也就是说,一条流播放结束的时候,我们并不会关闭/释放视频解码器和输出设备。这样做的好处是,当切换到下一个视频流,并且这个视频流的编码信息与原先播放的流其实是一样的,那么我们就无需进行比较耗时的关闭解码器-重新创建和初始化解码器操作(在特定设备上,耗时可能达到几百毫秒),直接利用现有解码实例解码即可。
从图1可见,前一个播放器的释放,下一个播放器的创建,以及对解码器实例的处理,三者互不干扰,可同时进行,把耗时的#T3.4/3.5,#T2.3/2.4实现了并行化处理。另外,解码器这块自己实现了本地数据库缓存视频信息进行比对匹配,在匹配命中成功时,可直接复用解码器。在一些特定场景下可实现非常高的命中率,比如:IPTV直播、内容高度规格化的视频网站。

Claims (5)

1.一种可在不同视频流间快速切换播放器的实现方法,其特征是,将播放器的释放、播放器的创建和对解码器实例的处理进行三者分离,具体操作步骤如下:
(1)播放器的释放:先关闭播放器,后关闭视频流接收,完成关闭;
(2)播放器的创建:先创建播放器,后开始接收视频流,获得视频编码信息,获取关键帧,实现视频流接收;
(3)对解码器实例的处理:先预读取视频流信息,后视频流信息比对,判断信息是否匹配,如果不匹配,则释放关闭解码器后,创建并初始化解码器,进入解码状态,解码并产生输出;如果匹配,则直接进入解码状态,解码并产生输出;
其中:步骤(1)、步骤(2)和步骤(3)三者互不干扰,并同时进行实现并行化处理。
2.根据权利要求1所述的一种可在不同视频流间快速切换播放器的实现方法,其特征是,在步骤(3)中,针对视频流信息比对:为了能提前知道上一个视频流或者下一个视频流的编码信息进行快速比对,引入了频道信息缓存机制,通过这个缓存机制,所有视频流的编码格式以及解码所需参数信息都被保存在本地数据库内,使用时可在无需接收数据的情况下直接通过查询本地数据库得到任意已知视频流的相关信息。
3.根据权利要求2所述的一种可在不同视频流间快速切换播放器的实现方法,其特征是,本地数据库的更新由EPG更新或者每次播放该视频触发,同时播放器在播放过程中仍然会对数据进行检测。
4.根据权利要求3所述的一种可在不同视频流间快速切换播放器的实现方法,其特征是,播放器在播放过程中对数据进行检测时,检测到解码参数变更,将会退出解码状态,然后释放关闭解码器,创建并初始化解码器并且更新本地数据库,进入解码状态,解码并产生输出。
5.根据权利要求2或3或4所述的一种可在不同视频流间快速切换播放器的实现方法,其特征是,在步骤(2)中,将获取的视频编码信息跟步骤(3)中的本地数据库缓存的视频信息进行比对匹配,在匹配命中成功时,则直接复用解码器。
CN201910586778.8A 2019-07-01 2019-07-01 一种可在不同视频流间快速切换播放器的实现方法 Active CN110213659B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910586778.8A CN110213659B (zh) 2019-07-01 2019-07-01 一种可在不同视频流间快速切换播放器的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910586778.8A CN110213659B (zh) 2019-07-01 2019-07-01 一种可在不同视频流间快速切换播放器的实现方法

Publications (2)

Publication Number Publication Date
CN110213659A true CN110213659A (zh) 2019-09-06
CN110213659B CN110213659B (zh) 2021-06-08

Family

ID=67795840

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910586778.8A Active CN110213659B (zh) 2019-07-01 2019-07-01 一种可在不同视频流间快速切换播放器的实现方法

Country Status (1)

Country Link
CN (1) CN110213659B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463335A (zh) * 2020-12-03 2021-03-09 Oppo广东移动通信有限公司 一种应用程序运行方法、装置和存储介质
CN112637636A (zh) * 2020-12-23 2021-04-09 新华三大数据技术有限公司 一种视频流处理方法及装置
CN113225605A (zh) * 2020-02-05 2021-08-06 腾讯科技(深圳)有限公司 视频播放处理方法、装置、电子设备及存储介质
CN113810741A (zh) * 2021-10-25 2021-12-17 华动高车(无锡)科技有限公司 一种直录播视频混合编排播放控制系统及方法
CN114222182A (zh) * 2021-12-15 2022-03-22 湖南快乐阳光互动娱乐传媒有限公司 一种视频播放方法及装置
CN114302172A (zh) * 2021-12-28 2022-04-08 威创集团股份有限公司 无缝切换方法、分布式拼接系统、存储介质及计算机设备
WO2022237744A1 (zh) * 2021-05-13 2022-11-17 北京字跳网络技术有限公司 视频的展示方法、装置、设备及介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101335883A (zh) * 2007-06-29 2008-12-31 国际商业机器公司 在数字视频广播系统中对视频流进行处理的方法和设备
CN101442586A (zh) * 2008-12-31 2009-05-27 中兴通讯股份有限公司 一种多媒体播放方法及播放终端
CN103856806A (zh) * 2012-11-28 2014-06-11 腾讯科技(北京)有限公司 视频流切换方法、装置及系统
CN104219579A (zh) * 2014-08-20 2014-12-17 北京奇艺世纪科技有限公司 一种视频切换方法和装置
CN104768051A (zh) * 2015-03-06 2015-07-08 深圳市九洲电器有限公司 多编码格式节目流的自适应切换方法及系统
CN105407407A (zh) * 2014-06-26 2016-03-16 广州市动景计算机科技有限公司 视频的播放方法和装置
CN105657524A (zh) * 2016-01-13 2016-06-08 上海视云网络科技有限公司 一种视频间无缝切换的方法
CN106961634A (zh) * 2017-03-31 2017-07-18 青岛海信电器股份有限公司 Vod视频结束播放后启动dtv信号的方法、装置和终端设备
CN107071549A (zh) * 2017-05-05 2017-08-18 深圳Tcl数字技术有限公司 单解码器下多播放器快速切换方法、装置及存储介质
US20180159732A1 (en) * 2011-12-30 2018-06-07 Sonos, Inc. Configuring a New Playback Device for a Bonded Zone
CN108882038A (zh) * 2018-06-25 2018-11-23 苏宁易购集团股份有限公司 一种基于Android的多路视频播放方法
CN109246462A (zh) * 2018-10-11 2019-01-18 苏宁易购集团股份有限公司 一种视频流无缝切换方法及装置
CN109891899A (zh) * 2016-10-25 2019-06-14 伊瑟有限公司 视频内容切换和同步系统及用于在多种视频格式之间切换的方法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101335883A (zh) * 2007-06-29 2008-12-31 国际商业机器公司 在数字视频广播系统中对视频流进行处理的方法和设备
CN101442586A (zh) * 2008-12-31 2009-05-27 中兴通讯股份有限公司 一种多媒体播放方法及播放终端
US20180159732A1 (en) * 2011-12-30 2018-06-07 Sonos, Inc. Configuring a New Playback Device for a Bonded Zone
CN103856806A (zh) * 2012-11-28 2014-06-11 腾讯科技(北京)有限公司 视频流切换方法、装置及系统
CN105407407A (zh) * 2014-06-26 2016-03-16 广州市动景计算机科技有限公司 视频的播放方法和装置
CN104219579A (zh) * 2014-08-20 2014-12-17 北京奇艺世纪科技有限公司 一种视频切换方法和装置
CN104768051A (zh) * 2015-03-06 2015-07-08 深圳市九洲电器有限公司 多编码格式节目流的自适应切换方法及系统
CN105657524A (zh) * 2016-01-13 2016-06-08 上海视云网络科技有限公司 一种视频间无缝切换的方法
CN109891899A (zh) * 2016-10-25 2019-06-14 伊瑟有限公司 视频内容切换和同步系统及用于在多种视频格式之间切换的方法
CN106961634A (zh) * 2017-03-31 2017-07-18 青岛海信电器股份有限公司 Vod视频结束播放后启动dtv信号的方法、装置和终端设备
CN107071549A (zh) * 2017-05-05 2017-08-18 深圳Tcl数字技术有限公司 单解码器下多播放器快速切换方法、装置及存储介质
CN108882038A (zh) * 2018-06-25 2018-11-23 苏宁易购集团股份有限公司 一种基于Android的多路视频播放方法
CN109246462A (zh) * 2018-10-11 2019-01-18 苏宁易购集团股份有限公司 一种视频流无缝切换方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黄海路,蒋念东: "基于CPLD的多路视频帧切换技术研究", 《微计算机信息》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113225605A (zh) * 2020-02-05 2021-08-06 腾讯科技(深圳)有限公司 视频播放处理方法、装置、电子设备及存储介质
CN113225605B (zh) * 2020-02-05 2024-03-01 腾讯科技(深圳)有限公司 视频播放处理方法、装置、电子设备及存储介质
CN112463335A (zh) * 2020-12-03 2021-03-09 Oppo广东移动通信有限公司 一种应用程序运行方法、装置和存储介质
CN112637636A (zh) * 2020-12-23 2021-04-09 新华三大数据技术有限公司 一种视频流处理方法及装置
CN112637636B (zh) * 2020-12-23 2022-02-22 新华三大数据技术有限公司 一种视频流处理方法及装置
WO2022237744A1 (zh) * 2021-05-13 2022-11-17 北京字跳网络技术有限公司 视频的展示方法、装置、设备及介质
CN113810741A (zh) * 2021-10-25 2021-12-17 华动高车(无锡)科技有限公司 一种直录播视频混合编排播放控制系统及方法
CN113810741B (zh) * 2021-10-25 2024-02-02 华动高车(无锡)科技有限公司 一种直录播视频混合编排播放控制系统及方法
CN114222182A (zh) * 2021-12-15 2022-03-22 湖南快乐阳光互动娱乐传媒有限公司 一种视频播放方法及装置
CN114222182B (zh) * 2021-12-15 2024-02-09 湖南快乐阳光互动娱乐传媒有限公司 一种视频播放方法及装置
CN114302172A (zh) * 2021-12-28 2022-04-08 威创集团股份有限公司 无缝切换方法、分布式拼接系统、存储介质及计算机设备
CN114302172B (zh) * 2021-12-28 2023-08-18 威创集团股份有限公司 无缝切换方法、分布式拼接系统、存储介质及计算机设备

Also Published As

Publication number Publication date
CN110213659B (zh) 2021-06-08

Similar Documents

Publication Publication Date Title
CN110213659A (zh) 一种可在不同视频流间快速切换播放器的实现方法
KR100406122B1 (ko) 디지털 데이터 방송을 위한 동기화 데이터 삽입 장치 및그 방법
CN111277854A (zh) 一种虚拟直播间的展示方法、装置、电子设备和存储介质
CN104094540B (zh) 服务使用报告数据传输
CN101473653B (zh) 用于识别并同步视频的指纹、器件、方法
CN104246874B (zh) 媒体同步系统
CN105359544B (zh) 数字视频流传输中的特技播放
CN105657524A (zh) 一种视频间无缝切换的方法
JP2009521169A (ja) コンテンツストリームから決定されたフィンガープリントを使用したスクリプト同期
KR20060039728A (ko) 오디오/비디오 서비스와 데이터 서비스의 동기화를 위한지상파 디지털멀티미디어방송 송/수신 시스템
US20150358507A1 (en) Timing recovery for embedded metadata
CA2553708A1 (en) Information processing device, information processing method, program, and data structure
EP1536644A1 (en) Multiplexing device and demultiplexing device
TW201626803A (zh) 可拼接與被拼接之音源資料流以及拼接器及其方法、以及音源編碼與解碼裝置及方法
US20130107118A1 (en) System and method for transport stream sync byte detection with transport stream having multiple emulated sync bytes
CN106851326A (zh) 一种播放方法和装置
CN109905763A (zh) 优化播放器音频播放卡顿的方法
CN113596545A (zh) 音轨切换方法、装置、媒体播放设备和计算机存储介质
CN105208395A (zh) 对安卓系统硬件视频解码的时间戳进行纠错的方法及系统
CN113099282B (zh) 一种数据处理方法、装置及设备
US11336935B1 (en) Detecting audio-video desyncrhonization
CN101218819A (zh) 数字多媒体广播中同步数据服务和视频服务的方法和装置
CN113784094B (zh) 视频数据处理方法、网关、终端设备及存储介质
US20080068496A1 (en) Broadcast program summary generation system, method and medium
CN106454547B (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