CN103747366B - 一种hls媒体文件播放进度的显示方法和播放器 - Google Patents

一种hls媒体文件播放进度的显示方法和播放器 Download PDF

Info

Publication number
CN103747366B
CN103747366B CN201310733407.0A CN201310733407A CN103747366B CN 103747366 B CN103747366 B CN 103747366B CN 201310733407 A CN201310733407 A CN 201310733407A CN 103747366 B CN103747366 B CN 103747366B
Authority
CN
China
Prior art keywords
playing
media file
time
instruction
pause
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310733407.0A
Other languages
English (en)
Other versions
CN103747366A (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.)
Xinle Visual Intelligent Electronic Technology Tianjin Co ltd
Leshi Zhixin Electronic Technology Tianjin Co Ltd
Original Assignee
Leshi Zhixin Electronic Technology Tianjin 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 Leshi Zhixin Electronic Technology Tianjin Co Ltd filed Critical Leshi Zhixin Electronic Technology Tianjin Co Ltd
Priority to CN201310733407.0A priority Critical patent/CN103747366B/zh
Publication of CN103747366A publication Critical patent/CN103747366A/zh
Application granted granted Critical
Publication of CN103747366B publication Critical patent/CN103747366B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Television Signal Processing For Recording (AREA)

Abstract

本发明提供一种HLS媒体文件播放进度的显示方法和播放器,涉及信息技术领域,能够避免进度条显示的播放进度与真实播放时间之间的紊乱。包括:接收媒体文件播放指令;播放媒体文件并启动计时器;获取播放器控制指令;判断控制指令的类型;若控制指令为跳转播放指令,确定媒体文件在第一特定时刻的播放进度T1并显示,以及指示计时器从播放媒体文件片段的时刻起重新计时;若控制指令为暂停播放指令,暂停播放媒体文件,并确定媒体文件在第二特定时刻的播放进度T2并显示;若控制指令为暂停终止指令,继续播放媒体文件,并确定媒体文件在第三特定时刻的播放进度T3并显示。所述HLS媒体文件播放进度的显示方法和播放器用于媒体文件的播放。

Description

一种HLS媒体文件播放进度的显示方法和播放器
技术领域
本发明涉及信息技术领域,尤其涉及一种HLS媒体文件播放进度的显示方法和播放器。
背景技术
目前安卓系统的播放器支持HLS(HTTP Live Streaming,基于HTTP的流媒体网络传输协议)媒体文件的播放,通过HLS可以向客户端提供接近实时的音视频流,但在HLS使用的过程中是使用标准的HTTP(Hypertext transfer protocol,超文本传输协议),所以只要采用HLS,就能在普通的HTTP的应用上直接提供音视频的点播和直播。
在安卓系统中,播放器播放HLS媒体文件时,通常通过进度条显示当前播放的音视频的播放进度,该进度条显示的时间是根据当前播放的音视频的PTS(presentation timestamp,显示时间戳)换算得到的,但是由于PTS是不连续的,当出现较为复杂的播放需求时,利用时间戳换算得到的播放进度时间与显示的播放进度不相符。例如,当用户指示播放器进行跳转(seek)播放时,由于播放的媒体文件的PTS不是连续的,获取的PTS可能无法对应跳转播放后的正确时间,导致播放进度计算错误,因此进度条显示的播放进度与真实播放时间之间出现紊乱。
发明内容
本发明提供一种HLS媒体文件播放进度的显示方法和播放器,能够避免进度条显示的播放进度与真实播放时间之间的紊乱。
为达到上述目的,本发明的实施例采用如下技术方案:
一方面,本发明提供一种HLS媒体文件播放进度的显示方法,包括:
接收媒体文件播放指令;
播放媒体文件并启动计时器,所述计时器用于从所述媒体文件的开始播放时刻起开始计时;
获取播放器控制指令;
判断所述控制指令的类型;
若所述控制指令为跳转播放指令,则从所述媒体文件中,查找到与所述跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放,并确定所述媒体文件在第一特定时刻的播放进度T1并显示,以及指示所述计时器从播放所述媒体文件片段的时刻起重新计时;其中,所述第一特定时刻为播放所述媒体文件片段的时刻;
若所述控制指令为暂停播放指令,则暂停播放所述媒体文件,并确定所述媒体文件在第二特定时刻的播放进度T2并显示;其中,所述第二特定时刻为所述暂停播放所述媒体文件的时刻;
若所述控制指令为暂停终止指令,则继续播放所述媒体文件,并确定所述媒体文件在第三特定时刻的播放进度T3并显示;其中,所述第三特定时刻为所述继续播放所述媒体文件的时刻;
其中,确定所述T1,包括:
从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与所述预跳转时刻最接近;
获取所述累加和作为所述跳转播放的媒体文件播放时间X;
所述T1=X。
一方面,本发明提供一种播放器,包括:
接收单元,用于接收媒体文件播放指令;
播放单元,用于播放媒体文件并启动计时器,所述计时器用于从所述媒体文件的开始播放时刻起开始计时;
获取单元,用于获取播放器控制指令;
判断单元,用于判断所述控制指令的类型;
第一处理单元,用于在所述控制指令为跳转播放指令时,从所述媒体文件中,查找到与所述跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放,并确定所述媒体文件在第一特定时刻的播放进度T1并显示,以及指示所述计时器从播放所述媒体文件片段的时刻起重新计时;其中,所述第一特定时刻为播放所述媒体文件片段的时刻;
第二处理单元,用于在所述控制指令为暂停播放指令时,暂停播放所述媒体文件,并确定所述媒体文件在第二特定时刻的播放进度T2并显示;其中,所述第二特定时刻为所述暂停播放所述媒体文件的时刻;
第三处理单元,用于在所述控制指令为暂停终止指令,继续播放所述媒体文件,并确定所述媒体文件在第三特定时刻的播放进度T3并显示;其中,所述第三特定时刻为所述继续播放所述媒体文件的时刻;
其中,确定所述T1,包括:
从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与所述预跳转时刻最接近;
获取所述累加和作为所述跳转播放的媒体文件播放时间X;
所述T1=X。
本发明提供一种HLS媒体文件播放进度的显示方法和播放器,包括:接收媒体文件播放指令;播放媒体文件并启动计时器,所述计时器用于从所述媒体文件的开始播放时刻起开始计时;获取播放器控制指令;判断所述控制指令的类型;若所述控制指令为跳转播放指令,则从所述媒体文件中,查找到与所述跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放,并确定所述媒体文件在第一特定时刻的播放进度T1并显示,以及指示所述计时器从播放所述媒体文件片段的时刻起重新计时;其中,所述第一特定时刻为播放所述媒体文件片段的时刻;若所述控制指令为暂停播放指令,则暂停播放所述媒体文件,并确定所述媒体文件在第二特定时刻的播放进度T2并显示;其中,所述第二特定时刻为所述暂停播放所述媒体文件的时刻;若所述控制指令为暂停终止指令,则继续播放所述媒体文件,并确定所述媒体文件在第三特定时刻的播放进度T3并显示;其中,所述第三特定时刻为所述继续播放所述媒体文件的时刻;其中,确定所述T1,包括:从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与所述预跳转时刻最接近;获取所述累加和作为所述跳转播放的媒体文件播放时间X;所述T1=X。这样一来,由于播放器可以判断控制指令的类型,并针对不同类型的控制指令执行相应的动作,确定相应的播放进度,每种类型的控制指令所对应的播放进度都与PTS不相关,因此即使PTS不是连续的,进度的计算也不受影响,因而能够避免进度条显示的播放进度与真实播放时间之间的紊乱。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种HLS媒体文件播放进度的显示方法流程图;
图2为本发明实施例提供的另一种HLS媒体文件播放进度的显示方法流程图;
图3为本发明实施例提供的一种视频文件的进度条显示示意图;
图4为本发明实施例提供的一种播放器结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供一种HLS媒体文件播放进度的显示方法,如图1所示,包括:
步骤101、接收媒体文件播放指令。
步骤102、播放媒体文件并启动计时器,该计时器用于从该媒体文件的开始播放时刻起开始计时。
步骤103、获取播放器控制指令。
步骤104、判断该控制指令的类型。
步骤105、若该控制指令为跳转播放指令,则从该媒体文件中,查找到与该跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放,并确定该媒体文件在第一特定时刻的播放进度T1并显示,以及指示该计时器从播放该媒体文件片段的时刻起重新计时;其中,该第一特定时刻为播放该媒体文件片段的时刻。
步骤106、若该控制指令为暂停播放指令,则暂停播放该媒体文件,并确定该媒体文件在第二特定时刻的播放进度T2并显示;其中,该第二特定时刻为该暂停播放该媒体文件的时刻。
步骤107、若该控制指令为暂停终止指令,则继续播放该媒体文件,并确定该媒体文件在第三特定时刻的播放进度T3并显示;其中,该第三特定时刻为该继续播放该媒体文件的时刻。
其中,确定该T1,包括:从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与该预跳转时刻最接近;获取该累加和作为该跳转播放的媒体文件播放时间X;该T1=X。
这样一来,由于播放器可以判断控制指令的类型,并针对不同类型的控制指令执行相应的动作,确定相应的播放进度,每种类型的控制指令所对应的播放进度都与PTS不相关,因此即使PTS不是连续的,进度的计算也不受影响,因而能够避免进度条显示的播放进度与真实播放时间之间的紊乱。
实施例二
具体的,本发明实施例提供一种HLS媒体文件播放进度的显示方法,应用于播放器,该HLS媒体文件为音频文件或视频文件,该方法具体包括:
步骤201、接收媒体文件播放指令。执行步骤202。
HLS媒体文件可以是音频文件也可以是视频文件,主要包三个部分:一个m3u(8)的索引文件,TS(Transport Stream,传输流)媒体分片文件和密钥(key)加密串文件。需要说明的是,该m3u(8)指的是索引文件的格式,m3u(8)的索引文件只是存储多媒体播放列表,提供了一个指向其他位置的音视文件的索引,播放器播放的是该索引指向的文件,当打开m3u(8)文件可以查看索引指向文件的地址及文件的属性,如该索引对应的片段的时长,该多媒体播放列表依次存储有多个片段文件,各个片段文件的时长不同。终端设备可以根据该索引文件选用合适播放器播放音视频,其中,m3u8也是一种m3u,只是它的编码格式是UTF(Unicode Transformation Format,统一码转换格式)-8。
步骤202、播放媒体文件并启动计时器。执行步骤203。
该计时器用于从该媒体文件的开始播放时刻起开始计时。例如,当该媒体文件为视频文件时,该媒体文件的开始播放时刻为该视频文件的第一帧数据被渲染的时刻。
对于视频文件,播放器中的一个视频文件要播放出来,至少要经过三个模块的处理,分别为分离器、解码器和渲染器。其中,分离器的作用为正确识别文件封装格式,将其中所含的视频编码、音频编码以及可能包含的字幕等不同的信息流分离出来,交由不同的解码器来处理;而解码器将这些通常经过压缩的数据还原出来,必要的时候还要利用GPU(Graphic Processing Unit,图形处理器)的运算能力进行解压缩,即硬解。渲染器用于选择不同的方式来控制屏幕显示,即将解码器还原出来的视频流,正确地“画”在屏幕上。
播放器在视频文件的第一帧数据经过分离器的分离和解码器的解码后,在渲染器被渲染时,启动计时器,该计时器是针对该视频的相对时钟,启动时刻计时器的时间为00:00。
步骤203、获取播放器控制指令。执行步骤204。
该播放器控制指令的类型可以有多种,如跳转播放指令、暂停播放指令或暂停终止指令。
播放器可以监测播放器的数据量,当该数据量小于预定值时,生成播放器控制指令,获取该生成的播放器控制指令;也可以获取用户输入的播放器控制指令。
示例的,当上述控制指令为暂停播放指令时,播放器可以在播放器的数据量不足,进行自动暂停缓冲数据时,生成暂停播放指令,也可以获取用户输入的暂停播放指令。
步骤204、判断该控制指令的类型。若该控制指令为跳转播放指令,执行步骤205;若该控制指令为暂停播放指令,执行步骤206;若该控制指令为暂停终止指令,执行步骤207。
步骤205、从该媒体文件中,查找到与该跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放。执行步骤208。
该跳转播放指令可以是在播放器中通过执行Seek函数实现的,使得播放的视频文件的播放内容跳转至用户指示的播放位置,该跳转播放指令可以指示当前播放前进也可以指示播放后退,因此跳转后播放的媒体文件片段和跳转前播放的媒体文件片段通常是间断的,不连续的,因此需要查找到与该跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放。示例的,可以通过该m3u(8)文件进行相应的媒体文件片段的查找。
步骤206、暂停播放该媒体文件。执行步骤210。
步骤207、继续播放该媒体文件。执行步骤211。
步骤208、确定该媒体文件在第一特定时刻的播放进度T1并显示。执行步骤209。
播放器可以从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与该预跳转时刻最接近;获取该累加和作为该跳转播放的媒体文件播放时间X;该T1=X。
实际应用中,首先获取前x个片段的累加和,该x大于或等于2;获取该前x个片段的累加和与该预跳转时间的差的绝对值;将该前x个片段的累加和与该预跳转时间的差的绝对值分别与前x-1个片段的累加和与该预跳转时间的差的绝对值、前x+1个片段的累加和与该预跳转时间的差的绝对值进行比较,若该前x个片段的累加和与该预跳转时间的差的绝对值最小,则将该前x个片段的累加作为最接近该预跳转时间的累加和。
需要说明的是,HLS视频文件对应的多媒体播放列表中依次记录了从该视频文件开始播放到播放结束的多个片段文件,如表1所示,假设片段1的时长为10s,片段2的时长为5s,片段3的时长为30s,片段4的时长为10s,片段5的时长为10s,该预跳转时间为40s,则累加片段1和片段2的时长得到累加和15s,累加片段1、片段2和片段3的时长得到累加和45s,累加片段1、片段2、片段3和片段4的时长得到累加和55s,由于15s、45s、55s与40s的差的绝对值分别为25s、5s、15s,则累加片段1、片段2和片段3的时长得到累加和为最接近该预跳转时间的累加和,则将45s作为媒体文件播放时间,在跳转播放动作执行后,可以直接从45s播放视频。
表1
片段编号 片段时长
1 10s
2 5s
3 30s
4 10s
5 10s
该多媒体播放列表为索引文件中的列表,该索引文件为m3u(8)的索引文件,由于m3u(8)的索引文件本身与PTS不相关,则获取的媒体文件播放时间也与PTS不相关。
步骤209、指示该计时器从播放该媒体文件片段的时刻起重新计时。
需要说明的是,该第一特定时刻为播放该媒体文件片段的时刻。每次跳转播放结束时刻计时器进行清零并重新计时。
步骤210、确定该媒体文件在第二特定时刻的播放进度T2并显示。
其中,该第二特定时刻为暂停播放该媒体文件的时刻,即该T2为接收到暂停播放指令的时刻。
需要说明的是,正常播放时,该媒体文件显示的播放进度T=T1+t-H;其中,T1为执行暂停播放指令最近的一次跳转播放指令时该媒体文件显示的播放进度,t为该计时器的计时时间,H为所有暂停时长之和,该暂停时长为该暂停终止指令时刻与该暂停播放时刻该计时器的时间差,且每次执行跳转播放指令,总暂停时长清零。当从接收媒体文件播放指令到当前显示时刻播放器没有获取跳转播放指令,则该T1=0;当从接收媒体文件播放指令到当前显示时刻播放器没有获取暂停播放指令,或者从最近的一次跳转播放指令到当前显示时刻播放器没有获取暂停播放指令,H=0。
由于该T2为接收到暂停播放指令的时刻,即在这一时刻,媒体文件还在正常播放,那么该媒体文件显示的播放进度T2=T1+t-H;其中,T1为执行暂停播放指令最近的一次跳转播放指令时该媒体文件显示的播放进度,t为该计时器的计时时间,H为所有暂停时长之和,该暂停时长为该暂停终止指令时刻与该暂停播放时刻该计时器的时间差,且每次执行跳转播放指令,总暂停时长清零。当从接收媒体文件播放指令到当前显示时刻播放器没有获取跳转播放指令,则该T1=0;当从接收媒体文件播放指令到T2时刻播放器没有获取暂停播放指令,即在本次暂停播放之前没有进行过暂停播放,或者从最近的一次跳转播放指令到T2时刻播放器没有获取暂停播放指令,即在最近的一次跳转播放指令之后本次暂停播放之前没有进行过暂停播放,H=0。
步骤211、确定该媒体文件在第三特定时刻的播放进度T3并显示。
其中,该第三特定时刻为该继续播放该媒体文件的时刻。
示例的,播放器可以获取该暂停终止指令时刻与该暂停播放时刻该计时器的时间差作为暂停时长,获取所有暂停时长之和作为总暂停时长H,且每次执行跳转播放指令,总暂停时长清零;该T3=T1+t-H,其中t为该计时器的计时时间。
示例的,如图3所示,图3表示播放器的进度条,本实施例假设视频文件播放时,在O点第一帧数据被渲染时,启动计时器,则进度条在O点显示时间为00:00,如图3-a所示,若播放器持续正常播放该视频文件,该视频文件在Q点结束,播放时长为40分钟,即在Q点显示时间为40:00。如图3-b所示,假设根据用户的指示,在M点第一次接收跳转播放指令,跳转至N点,假设此次跳转播放为快进,由于M点进行的是正常播放,当视频正常播放时,进度条的显示时间为:T=T1+t-H,而执行暂停播放指令最近的一次跳转播放指令时该媒体文件显示的播放进度T1为0,总暂停时长H为0,因此M点的时钟等于计时器的时间,假设当前计时器的时间为08:00,则进度条显示的M点的时钟为08:00,然后开始跳转播放,计时器清零,假设播放器在N点结束跳转播放时,计时器的时间为00:05,则在N点已经发生了第一次跳转播放,但未发生过暂停播放,总暂停时长为0,因此N点的时钟T=T1+t-H,总暂停时长H为0,该媒体文件显示的播放进度T1通过从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与该预跳转时刻最接近;获取该累加和作为该跳转播放的媒体文件播放时间X;该T1=X得到的,假设第一次媒体文件显示的播放进度T1为13:00,则进度条显示的N点的时钟为13:05,需要说明的是,M点至N点间的点划线表示该段视频未播放;假设在H点接收了第一次暂停播放指令,在L点再开始进行正常播放,若H点对应的计时器的时间为08:00,即NH段计时器走了7分55秒,则进度条显示的H点的时钟为21:00,H点至L点间的虚线表示该段视频暂停播放,当视频暂停播放时,进度条的显示时间为:该暂停播放开始时刻的进度条的时间,即H点至L点间任意一点的时间都指示21:00,在实际显示中,H点和L点重合,进度条在暂停播放时一直显示21:00,直至暂停播放结束,L点显示的时间便发生跳转,假设H点至L点的暂停播放时间为5分钟,则暂停播放结束时刻,进度条的L点的显示时间T3的获取过程包括:获取该暂停终止指令时刻与该暂停播放时刻该计时器的时间差作为暂停时长,获取所有暂停时长之和作为总暂停时长H,且每次执行跳转播放指令,总暂停时长清零;该T3=T1+t-H,其中t为该计时器的计时时间。,假设计时器的时间为17:00,则t为17:00,H为5:00,T1为13:00,进度条的L点的显示时间为:25:00;假设W点为正常播放,则进度条的显示时间为:T=T1+t-H,由于在最近的一次跳转播放指令后至时间N点只收到一次暂停播放指令,则总暂停时长即这一次暂停播放的暂停时间为5分钟,执行暂停播放指令最近的一次跳转播放指令时该媒体文件显示的播放进度T1为13:00,假设计时器的时间从M点清零后到W点的时钟为22:00,H为5:00,则进度条显示的H点的时钟为30:00。特定,由于音频文件的进度条显示方式与视频相同,本实施例就不再详述。
本发明实施例提供的HLS媒体文件播放进度的显示方法,由于播放器可以判断控制指令的类型,并针对不同类型的控制指令执行相应的动作,确定相应的播放进度,每种类型的控制指令所对应的播放进度都与PTS不相关,因此即使PTS不是连续的,进度的计算也不受影响,因而能够避免进度条显示的播放进度与真实播放时间之间的紊乱。
实施例三
本发明实施例提供一种播放器40,如图4所示,包括:
接收单元401,用于接收媒体文件播放指令;
播放单元402,用于播放媒体文件并启动计时器,该计时器用于从该媒体文件的开始播放时刻起开始计时;
获取单元403,用于获取播放器控制指令;
判断单元404,用于判断该控制指令的类型;
第一处理单元405,用于在该控制指令为跳转播放指令时,从该媒体文件中,查找到与该跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放,并确定该媒体文件在第一特定时刻的播放进度T1并显示,以及指示该计时器从播放该媒体文件片段的时刻起重新计时;其中,该第一特定时刻为播放该媒体文件片段的时刻;
第二处理单元406,用于在该控制指令为暂停播放指令时,暂停播放该媒体文件,并确定该媒体文件在第二特定时刻的播放进度T2并显示;其中,该第二特定时刻为该暂停播放该媒体文件的时刻;
第三处理单元407,用于在该控制指令为暂停终止指令,继续播放该媒体文件,并确定该媒体文件在第三特定时刻的播放进度T3并显示;其中,该第三特定时刻为该继续播放该媒体文件的时刻;
其中,确定该T1,包括:
从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与该预跳转时刻最接近;
获取该累加和作为该跳转播放的媒体文件播放时间X;
该T1=X。
这样一来,由于判断单元可以判断控制指令的类型,并由第一处理单元、第二处理单元和第三处理单元针对不同类型的控制指令分别执行相应的动作,确定相应的播放进度,每种类型的控制指令所对应的播放进度都与PTS不相关,因此即使PTS不是连续的,进度的计算也不受影响,因而能够避免进度条显示的播放进度与真实播放时间之间的紊乱。
需要说明的是,该T2为接收到暂停播放指令的时刻。
该第三处理单元406具体用于:
获取该暂停终止指令时刻与该暂停播放时刻该计时器的时间差作为暂停时长,获取所有暂停时长之和作为总暂停时长H,且每次执行跳转播放指令,总暂停时长清零;
该T3=T1+t-H,
其中t为该计时器的计时时间。
正常播放时,该媒体文件显示的播放进度T=T1+t-H;
其中,T1为执行暂停播放指令最近的一次跳转播放指令时该媒体文件显示的播放进度,t为该计时器的计时时间,H为所有暂停时长之和,该暂停时长为该暂停终止指令时刻与该暂停播放时刻该计时器的时间差,且每次执行跳转播放指令,总暂停时长清零。
该获取单元403具体用于:
监测播放器的数据量,当该数据量小于预定值时,生成播放器控制指令,获取该生成的播放器控制指令;
或者,
获取用户输入的播放器控制指令。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上该,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (8)

1.一种HLS媒体文件播放进度的显示方法,其特征在于,包括:
接收媒体文件播放指令;
播放媒体文件并启动计时器,所述计时器用于从所述媒体文件的开始播放时刻起开始计时;
获取播放器控制指令;
判断所述控制指令的类型;
若所述控制指令为跳转播放指令,则从所述媒体文件中,查找到与所述跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放,并确定所述媒体文件在第一特定时刻的播放进度T1并显示,以及指示所述计时器从播放所述媒体文件片段的时刻起重新计时;其中,所述第一特定时刻为播放所述媒体文件片段的时刻;
若所述控制指令为暂停播放指令,则暂停播放所述媒体文件,并确定所述媒体文件在第二特定时刻的播放进度T2并显示;其中,所述第二特定时刻为所述暂停播放所述媒体文件的时刻;
若所述控制指令为暂停终止指令,则继续播放所述媒体文件,并确定所述媒体文件在第三特定时刻的播放进度T3并显示;其中,所述第三特定时刻为所述继续播放所述媒体文件的时刻;
其中,确定所述T1,包括:
从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与预跳转时刻最接近;
获取所述累加和作为所述跳转播放的媒体文件播放时间X;
所述T1=X;
正常播放时,所述媒体文件显示的播放进度T=T1+t-H;
其中,T1为执行暂停播放指令最近的一次跳转播放指令时所述媒体文件显示的播放进度,t为所述计时器的计时时间,H为所有暂停时长之和,所述暂停时长为所述暂停终止指令时刻与所述暂停播放时刻所述计时器的时间差,且每次执行跳转播放指令,总暂停时长清零。
2.根据权利要求1所述的方法,其特征在于,所述T2为接收到暂停播放指令的时刻。
3.根据权利要求1所述的方法,其特征在于,确定所述T3,包括:
获取所述暂停终止指令时刻与所述暂停播放时刻所述计时器的时间差作为暂停时长,获取所有暂停时长之和作为总暂停时长H,且每次执行跳转播放指令,总暂停时长清零;
所述T3=T1+t-H,
其中t为所述计时器的计时时间。
4.根据权利要求1所述的方法,其特征在于,所述获取播放器控制指令包括:
监测播放器的数据量,当所述数据量小于预定值时,生成播放器控制指令,获取所述生成的播放器控制指令;
或者,
获取用户输入的播放器控制指令。
5.一种播放器,其特征在于,包括:
接收单元,用于接收媒体文件播放指令;
播放单元,用于播放媒体文件并启动计时器,所述计时器用于从所述媒体文件的开始播放时刻起开始计时;
获取单元,用于获取播放器控制指令;
判断单元,用于判断所述控制指令的类型;
第一处理单元,用于在所述控制指令为跳转播放指令时,从所述媒体文件中,查找到与所述跳转播放指令中包含的跳转时刻相匹配的媒体文件片段并进行播放,并确定所述媒体文件在第一特定时刻的播放进度T1并显示,以及指示所述计时器从播放所述媒体文件片段的时刻起重新计时;其中,所述第一特定时刻为播放所述媒体文件片段的时刻;
第二处理单元,用于在所述控制指令为暂停播放指令时,暂停播放所述媒体文件,并确定所述媒体文件在第二特定时刻的播放进度T2并显示;其中,所述第二特定时刻为所述暂停播放所述媒体文件的时刻;
第三处理单元,用于在所述控制指令为暂停终止指令,继续播放所述媒体文件,并确定所述媒体文件在第三特定时刻的播放进度T3并显示;其中,所述第三特定时刻为所述继续播放所述媒体文件的时刻;
其中,确定所述T1,包括:
从媒体文件对应的多媒体播放列表中的第一个片段开始顺序累加各个片段的时长直至累加和与预跳转时刻最接近;
获取所述累加和作为所述跳转播放的媒体文件播放时间X;
所述T1=X;
正常播放时,所述媒体文件显示的播放进度T=T1+t-H;
其中,T1为执行暂停播放指令最近的一次跳转播放指令时所述媒体文件显示的播放进度,t为所述计时器的计时时间,H为所有暂停时长之和,所述暂停时长为所述暂停终止指令时刻与所述暂停播放时刻所述计时器的时间差,且每次执行跳转播放指令,总暂停时长清零。
6.根据权利要求5所述的播放器,其特征在于,所述T2为接收到暂停播放指令的时刻。
7.根据权利要求5所述的播放器,其特征在于,所述第三处理单元具体用于:
获取所述暂停终止指令时刻与所述暂停播放时刻所述计时器的时间差作为暂停时长,获取所有暂停时长之和作为总暂停时长H,且每次执行跳转播放指令,总暂停时长清零;
所述T3=T1+t-H,
其中t为所述计时器的计时时间。
8.根据权利要求5所述的播放器,其特征在于,所述获取单元具体用于:
监测播放器的数据量,当所述数据量小于预定值时,生成播放器控制指令,获取所述生成的播放器控制指令;
或者,
获取用户输入的播放器控制指令。
CN201310733407.0A 2013-12-23 2013-12-23 一种hls媒体文件播放进度的显示方法和播放器 Active CN103747366B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310733407.0A CN103747366B (zh) 2013-12-23 2013-12-23 一种hls媒体文件播放进度的显示方法和播放器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310733407.0A CN103747366B (zh) 2013-12-23 2013-12-23 一种hls媒体文件播放进度的显示方法和播放器

Publications (2)

Publication Number Publication Date
CN103747366A CN103747366A (zh) 2014-04-23
CN103747366B true CN103747366B (zh) 2018-04-27

Family

ID=50504348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310733407.0A Active CN103747366B (zh) 2013-12-23 2013-12-23 一种hls媒体文件播放进度的显示方法和播放器

Country Status (1)

Country Link
CN (1) CN103747366B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701131A (zh) * 2014-11-28 2016-06-22 腾讯科技(深圳)有限公司 文件浏览展示方法及装置
CN104703036B (zh) 2015-02-13 2018-12-11 广东欧珀移动通信有限公司 一种同步媒体文件播放进度的方法、装置及系统
CN105208463B (zh) * 2015-08-31 2017-12-15 暴风集团股份有限公司 针对m3u8文件进行帧确定的方法和系统
CN105392040B (zh) * 2015-11-05 2019-02-19 Oppo广东移动通信有限公司 一种多设备同步暂停和播放的控制方法及控制系统
CN107547922B (zh) * 2016-10-28 2019-12-17 腾讯科技(深圳)有限公司 信息处理方法、装置、系统及计算机可读存储介质
CN107360469B (zh) * 2017-07-12 2020-03-27 青岛海信电器股份有限公司 终端预设时间内接收多条调整播放进度指令的进度定位方法及装置
CN109767771A (zh) * 2019-03-04 2019-05-17 出门问问信息科技有限公司 一种播放进度控制方法、智能穿戴设备及多媒体显示设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1852425A (zh) * 2006-05-19 2006-10-25 北京中星微电子有限公司 在播放多媒体文件时获得当前播放时间的方法和装置
CN1972407A (zh) * 2006-11-30 2007-05-30 中兴通讯股份有限公司 一种移动多媒体广播视音频同步播放的方法
CN101106637A (zh) * 2006-07-13 2008-01-16 中兴通讯股份有限公司 通过机顶盒实现对外接存储设备的媒体文件播放的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4134164B2 (ja) * 2003-07-10 2008-08-13 富士通株式会社 メディア再生装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1852425A (zh) * 2006-05-19 2006-10-25 北京中星微电子有限公司 在播放多媒体文件时获得当前播放时间的方法和装置
CN101106637A (zh) * 2006-07-13 2008-01-16 中兴通讯股份有限公司 通过机顶盒实现对外接存储设备的媒体文件播放的方法
CN1972407A (zh) * 2006-11-30 2007-05-30 中兴通讯股份有限公司 一种移动多媒体广播视音频同步播放的方法

Also Published As

Publication number Publication date
CN103747366A (zh) 2014-04-23

Similar Documents

Publication Publication Date Title
CN103747366B (zh) 一种hls媒体文件播放进度的显示方法和播放器
US11594028B2 (en) Video processing for enabling sports highlights generation
US9578366B2 (en) Companion device services based on the generation and display of visual codes on a display device
US11895348B2 (en) Systems and methods for providing variable speeds in a trick-play mode
US11546643B2 (en) Systems and methods for providing audio content during trick-play playback
US9332313B2 (en) Personalized augmented A/V stream creation
US9986267B2 (en) Methods and systems for dynamically editing, encoding, posting and updating live video content
WO2017092327A1 (zh) 一种播放方法及装置
CN110198494B (zh) 一种视频播放方法、装置、设备和存储介质
US20230421867A1 (en) Systems and methods for summarizing missed portions of storylines
CN103491430B (zh) 流媒体数据处理方法和电子设备
CN115002505A (zh) 一种中断重连直播流的时移控制方法及装置
US8576923B2 (en) Bitstream navigation techniques
US9959298B2 (en) Method, apparatus and system for indexing content based on time information
KR100631783B1 (ko) 멀티미디어 데이터와 메타데이터를 동기화하는 시스템 및방법
KR20150093509A (ko) 비디오 클리핑 장치 및 방법

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
CP03 Change of name, title or address

Address after: Room 301-1, Room 301-3, Area B2, Animation Building, No. 126 Animation Road, Zhongxin Eco-city, Tianjin Binhai New Area, Tianjin

Patentee after: LE SHI ZHI XIN ELECTRONIC TECHNOLOGY (TIANJIN) Ltd.

Address before: 300453 Tianjin Binhai New Area, Tianjin Eco-city, No. 126 Animation and Animation Center Road, Area B1, Second Floor 201-427

Patentee before: Xinle Visual Intelligent Electronic Technology (Tianjin) Co.,Ltd.

Address after: 300453 Tianjin Binhai New Area, Tianjin Eco-city, No. 126 Animation and Animation Center Road, Area B1, Second Floor 201-427

Patentee after: Xinle Visual Intelligent Electronic Technology (Tianjin) Co.,Ltd.

Address before: 300467 Tianjin Binhai New Area, Tianjin ecological city animation Middle Road, building, No. two, B1 District, 201-427

Patentee before: LE SHI ZHI XIN ELECTRONIC TECHNOLOGY (TIANJIN) Ltd.

CP03 Change of name, title or address
PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20210201

Granted publication date: 20180427

PD01 Discharge of preservation of patent
PD01 Discharge of preservation of patent

Date of cancellation: 20240201

Granted publication date: 20180427

PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20240201

Granted publication date: 20180427