CN114257864B - 一种基于HLS格式视频源场景下播放器的seek方法及装置 - Google Patents
一种基于HLS格式视频源场景下播放器的seek方法及装置 Download PDFInfo
- Publication number
- CN114257864B CN114257864B CN202210169802.XA CN202210169802A CN114257864B CN 114257864 B CN114257864 B CN 114257864B CN 202210169802 A CN202210169802 A CN 202210169802A CN 114257864 B CN114257864 B CN 114257864B
- Authority
- CN
- China
- Prior art keywords
- pts
- segment
- information
- time
- nth
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 239000012634 fragment Substances 0.000 claims description 19
- 230000001172 regenerating effect Effects 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 9
- 230000001755 vocal effect Effects 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 6
- 238000012937 correction Methods 0.000 abstract description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4343—Extraction or processing of packetized elementary streams [PES]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing 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/44016—Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-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/47202—End-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 requesting content on demand, e.g. video on demand
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明提出了一种基于HLS格式视频源场景下播放器的seek方法及装置,所述方法包括:确定第n个ts片段中,第一帧图像的正确pts;获取第n个ts片段中,解复用后第一帧图像的pts数据;获取第n个ts片段中,解复用后第n帧图像的pts数据;确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量;确定第n个ts片段中,解复用后第n帧图像的pts时间;顺序播放多个ts片段。本发明实现了HLS格式视频多个拼接片段中,每一帧图像的pts时间的准确修正,使得视频得以正常播放,可以兼容非标准视频,避免编码服务器再次转码,也提供了良好的seek体验。
Description
技术领域
本发明涉及网络技术领域,具体涉及一种基于HLS格式视频源场景下播放器的seek方法及装置。
背景技术
视频点播***中,因为HLS(HTTP Live Stream,动态码率自适应技术)协议优秀的跨平台,跨终端,支持DRM的特性,被广泛用于视频流的传输和播放。教育场景中,视频seek交互是学员刚需:需要快速拖动视频,大致了解视频内容;跳转到某个时间点反复观看重要内容。部分场景中,HLS 视频由不同的视频拼接而来,或者同一个视频通过裁剪后拼接得到。
以说明书附图1为例,表中视频由movie1、movie2、movie3 三个视频剪辑而成,且每个视频只取其中一部分片段。在未修正前,视频正常顺序播放,播放到movie2_1这个ts片,进度条时间显示不准确,正确应该显示30秒,实际上会显示0秒。seek 到第31秒播放,由于movie2_1 这个ts中,没有匹配的视频帧,pts对应不上,会导致视频播放失败。
发明内容
针对现有技术的不足,本发明提出一种基于HLS格式视频源场景下播放器的seek方法及装置,解决了现有技术中HLS格式视频源播放时间显示不准确、且易出现播放失败的缺陷。
本发明的技术方案是这样实现的:一种基于HLS格式视频源场景下播放器的seek方法,包括:
确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和;
获取第n个ts片段中,解复用后第一帧图像的pts数据,记为ts_first_packet_pts;
获取第n个ts片段中,解复用后第n帧图像的pts数据,记为ts_n_packet_pts,
ts_n_packet_pts出自当前ts片段解复用后,第n个packet中的pts数据;
确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量offset_pts_value,其中:
offset_pts_value=ts_n_packet_pts-ts_first_packet_pts;
确定第n个ts片段中,解复用后第n帧图像的pts时间ok_n_packet_pts,其中:
ok_n_packet_pts=ts_start_pts+offset_pts_value;
顺序播放多个ts片段。
进一步,上述计算第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和的步骤之前,还包括:
接收用户的跨段播放操作,确定ts片段的总数量。
进一步,上述所述接收用户的跨段播放操作的步骤,包括:
接收用户于操控区域的第一触控指令;
获取用户于视频顺序播放过程中已播放的内容片段,所述已播放的内容片段包括拖动ts片段;
根据所述已播放的内容片段以及用户的第二触控指令,重新生成ts片段。
进一步,上述所述根据所述已播放内容片段以及用户的第二触控指令,重新生成ts片段的步骤,包括:
获取已播放内容片段的特征信息;
搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间;
以所述基准pts时间为中心,在播放进度条的对应位置推送于基准pts时间连续间隔时间帧的图像;
根据用户对各所述连续间隔时间帧的图像的第二触控指令,重新生成pts片段。
进一步,上述所述获取已播放内容片段的特征信息的步骤,包括:
获取播放内容片段的画面信息和声音信息,所述画面信息包括场景信息和人物信息,所述声音信息包括人声信息和背景声信息;
根据所述场景信息、人物信息、人声信息和背景声信息,确定特征信息F=S·a+C·b+V·c+B·d,其中,S为场景信息的偏移量,C为人物信息的偏移量,V为人声信息的偏移量,B为背景声信息的偏移量,a、b、c、d为对应偏移量的加权值;
所述搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间的步骤,包括:
当特征信息超出阈值时,确定超出阈值对应的ts片段,以及超出阈值时的参考pts时间;
在所述参考pts时间附近采集场景信息偏移量最大值所在帧的pts作为基准pts时间。
本发明还提供了一种基于HLS格式视频源场景下播放器的seek装置,包括:
第一确定模块,用于确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和;
第一获取模块,用于获取第n个ts片段中,解复用后第一帧图像的pts数据,记为ts_first_packet_pts;
第二获取模块,用于获取第n个ts片段中,解复用后第n帧图像的pts数据,记为ts_n_packet_pts,ts_n_packet_pts出自当前ts片段解复用后,第n个packet中的pts数据;
第二确定模块,用于确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量offset_pts_value,其中:
offset_pts_value=ts_n_packet_pts-ts_first_packet_pts;
第三确定模块,用于确定第n个ts片段中,解复用后第n帧图像的pts时间ok_n_packet_pts,其中:
ok_n_packet_pts=ts_start_pts+offset_pts_value;
处理模块,用于顺序播放多个ts片段。
进一步,上述所述装置还包括接收模块,用于接收用户的跨段播放操作,确定ts片段的总数量。
进一步,上述接收模块,包括:
接收子模块,用于接收用户于操控区域的第一触控指令;
获取子模块,用于获取用户于视频顺序播放过程中已播放的内容片段,所述已播放的内容片段包括拖动ts片段;
生成子模块,用于根据所述已播放的内容片段以及用户的第二触控指令,重新生成ts片段。
进一步,上述生成子模块,包括:
获取单元,用于获取已播放内容片段的特征信息;
确定子单元,用于搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间;
推送子单元,用于以所述基准pts时间为中心,在播放进度条的对应位置推送于基准pts时间连续间隔时间帧的图像;
生成子单元,用于根据用户对各所述连续间隔时间帧的图像的第二触控指令,重新生成pts片段。
进一步,上述获取单元,包括:
获取子单元,用于获取播放内容片段的画面信息和声音信息,所述画面信息包括场景信息和人物信息,所述声音信息包括人声信息和背景声信息;
第一确定子单元,用于根据所述场景信息、人物信息、人声信息和背景声信息,确定特征信息F=S·a+C·b+V·c+B·d,其中,S为场景信息的偏移量,C为人物信息的偏移量,V为人声信息的偏移量,B为背景声信息的偏移量,a、b、c、d为对应偏移量的加权值;
确定单元,包括:
第二确定子单元,用于当特征信息超出阈值时,确定超出阈值对应的ts片段,以及超出阈值时的参考pts时间;
采集子单元,用于在所述参考pts时间附近采集场景信息偏移量最大值所在帧的pts作为基准pts时间。
本发明实施例通过重新确定第n个ts片段中,第一帧图像的正确pts,获取第n个ts片段中,解复用后第一帧图像的pts数据,获取第n个ts片段中,解复用后第n帧图像的pts数据,而后根据第n帧图像的pts数据和第一帧图像的pts数据,确定确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量,最后确定第n个ts片段中,解复用后第n帧图像的pts时间,可以实现HLS格式视频多个拼接片段中,每一帧图像的pts时间的准确修正,使得视频得以正常播放,一方面可以兼容非标准视频,避免编码服务器再次转码,节省服务器费用,另一方面提供良好的seek 体验,满足教育场景视频seek交互刚需。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例的修正前后的ts对照表格;
图2为本发明第一实施例的一种基于HLS格式视频源场景下播放器的seek方法的流程图;
图3为本发明第二实施例的一种基于HLS格式视频源场景下播放器的seek方法的流程图;
图4为S21的详细流程图;
图5为S213的详细流程图;
图6为S2131和S2132的详细流程图;
图7为本发明第三实施例的一种基于HLS格式视频源场景下播放器的seek装置的结构框图;
图8为接收模块的详细结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
第一实施例:
请参照图1和图2所示,本发明实施例公开了一种基于HLS格式视频源场景下播放器的seek方法,包括:
S11,确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和。
通常情况下,HLS格式视频由多个(如movie1、movie2、movie3 等三个)视频剪辑而成,且每个视频只取其中一部分ts片段(如图1中movie1包含三个ts片段、movie2包含两个ts片段、movie3包含四个ts片段),各ts片段均有其对应的时长,取ts_start_pts为前n-1个ts片段的时长总和。
S12,获取第n个ts片段中,解复用后第一帧图像的pts数据,记为ts_first_packet_pts。
本步骤获取第n个ts片段中,解复用后第一帧图像的原始pts。
S13,获取第n个ts片段中,解复用后第n帧图像的pts数据,记为ts_n_packet_pts,ts_n_packet_pts出自当前ts片段解复用后,第n个packet中的pts数据。
本步骤获取第n个ts片段中,解复用后第n帧图像的原始pts。
S14,确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量offset_pts_value,其中:
offset_pts_value=ts_n_packet_pts-ts_first_packet_pts。
通过s_first_packet_pts和ts_n_packet_pts可以计算出第n帧图像的pts相对于第一帧图像的pts的时间差,记为偏移量。
S15,确定第n个ts片段中,解复用后第n帧图像的pts时间ok_n_packet_pts,其中:
ok_n_packet_pts=ts_start_pts+offset_pts_value。
ok_n_packet_pts为解复用后第n帧图像的实际pts时间。
S16,顺序播放多个ts片段。
通过图1可知,修正后的视频可以正常顺序播放,播放到movie2_1这个ts片时,进度条时间显示正确,且seek 到第31秒播放时,可以正常播放,播放时间也可以正确显示。
本发明实施例通过重新确定第n个ts片段中,第一帧图像的正确pts,获取第n个ts片段中,解复用后第一帧图像的pts数据,获取第n个ts片段中,解复用后第n帧图像的pts数据,而后根据第n帧图像的pts数据和第一帧图像的pts数据,确定确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量,最后确定第n个ts片段中,解复用后第n帧图像的pts时间,可以实现HLS格式视频多个拼接片段中,每一帧图像的pts时间的准确修正,使得视频得以正常播放,一方面可以兼容非标准视频,避免编码服务器再次转码,节省服务器费用,另一方面提供良好的seek 体验,满足教育场景视频seek交互刚需。
第二实施例:
请参照图3至图6所示,本发明实施例公开了另一种基于HLS格式视频源场景下播放器的seek方法,包括:
S21,接收用户的跨段播放操作,确定ts片段的总数量。
本步骤常用于如教育或剪辑场景中需要播放重点内容的情况下,用户通过预拖动进度条的操作,确定重点内容在进度条的大致对应位置,而后在一次顺序时间内多次间隔的拖动进度条,实现跨段播放操作,以实现人工大致确定重点内容的位置,而后通过智能锁定和人工选取相结合的方式,确定ts片段的总数量。
需要说明的是,本步骤所述的跨段播放操作可以是多次的跨段拖动操作。
请参照图4所示,作为一种优选方案而非限定,本步骤S21进一步包括步骤S211-S213:
S211,接收用户于操控区域的第一触控指令。
在本步骤中,第一触控指令可以仅是于特定触控区域如播放画面处的手势触控操作,如“Z”字形滑动操作。也可以包括“Z”字形滑动操作之前的进度条的拖动操作,也可以一般而言,“Z”字形滑动可以用于作为启动确定ts片段总数量的快捷方式。
S212,获取用户于视频顺序播放过程中已播放的内容片段,所述已播放的内容片段包括拖动ts片段。
接收到第一触控指令后,智能判断此前在视频顺序播放过程中,用户对视频的多个间隔的正向拖动操作,并记录正向拖动位置,依次确定已播放的内容的片段的数量,以及已播放内容片段所在的ts片段。通常情况下,已播放的内容片段还可以包括两次拖动ts片段之间的连续的ts片段。
S213,根据所述已播放的内容片段以及用户的第二触控指令,重新生成ts片段。
本步骤提供的一种重新生成ts片段的实现方式,不限于自动生成和智能配合人工完成,需要说明的,在本实施中,重新生成的ts片段可能与视频原始的ts片段相同或者不同,在这样的理解下,重新生成的ts片段数量可以少于视频原始被裁剪的ts片段数量,也可以等于已播放的内容片段数量。
请参照图5所示,作为对步骤S213的一种优选方案而非限定,本实施例优选采用智能配合人工的方式生成ts片段以提高ts片段的准确性,本步骤S213进一步包括步骤S2131-S2134:
S2131,获取已播放内容片段的特征信息。
S2132,搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间。
通常情况下,用户拖动的已播放的内容片段中应当含有所述基准pts,但也会出现基准pts早于或晚于已播放的内容片段的情况,故本步骤搜索已播放内容片段的当前和相邻ts片段,以最大程度上保障用户的操作便利性以及基准pts的获取可靠性,避免因用户逆向拖动而导致重置已播放的内容片段的情况发生。
S2133,以所述基准pts时间为中心,在播放进度条的对应位置推送于基准pts时间连续间隔时间帧的图像。
本步骤的连续间隔时间可以是5s或者10s,播放进度条上会出现对应时间的图像截图或动图。
S2134,根据用户对各所述连续间隔时间帧的图像的第二触控指令,重新生成pts片段。
在本步骤中,第二触控指令可以是对连续间隔时间帧的图像的唯一确认操作,或者是对对应已播放内容片段的删除操作,还可以是于特定触控区域如播放画面处的手势触控操作,如“O”字形滑动操作,以实现在步骤S27后直接循环播放。
其中,请参照图6所示,作为对步骤S2131的一种补充而非限定,本步骤S2131还包括S2131a和S2131b:
S2131a,获取播放内容片段的画面信息和声音信息,所述画面信息包括场景信息和人物信息,所述声音信息包括人声信息和背景声信息。
作为一种示例而非限定,场景信息包括文案背景颜色、图案信息,如白底、黑底或底纹、背景图案等,也可以包括人物所在场景信息,如室内、室外等;人物信息可以包括画面中出现的不限于主讲人,对话者的面部或衣物信息等。人生信息和背景声信息的原理相同,在此不作赘诉。
S2131b,根据所述场景信息、人物信息、人声信息和背景声信息,确定特征信息F=S·a+C·b+V·c+B·d,其中,S为场景信息的偏移量,C为人物信息的偏移量,V为人声信息的偏移量,B为背景声信息的偏移量,a、b、c、d为对应偏移量的加权值。
作为一种示例而非限定,当各特征信息未出现变化时,确定对应的特征信息的偏移量为0,当特征信息的变化量越大时,对应的特征信息的偏移量取值越大,最后根据场景信息、人物信息、人声信息和背景声信息对应的权重综合考量特征信息是否发生变化。
请参照图6所示,对应于步骤S2131a和S2131b,S2132还包括步骤S2132a和S2132b:
S2132a,当特征信息超出阈值时,确定超出阈值对应的ts片段,以及超出阈值时的参考pts时间。
当场景信息、人物信息、人声信息和背景声信息对应的权重变化最为显著时,考虑当前pts接近或等于基准pts,作为参考pts时间。
S2132b,在所述参考pts时间附近采集场景信息偏移量最大值所在帧的pts作为基准pts时间。
在本实施例中,优先考虑以场景信息偏移量最大值所在帧的pts作为基准pts时间。
S22,确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和。
S23,获取第n个ts片段中,解复用后第一帧图像的pts数据,记为ts_first_packet_pts。
S24,获取第n个ts片段中,解复用后第n帧图像的pts数据,记为ts_n_packet_pts,ts_n_packet_pts出自当前ts片段解复用后,第n个packet中的pts数据。
S25,确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量offset_pts_value,其中:
offset_pts_value=ts_n_packet_pts-ts_first_packet_pts。
S26,确定第n个ts片段中,解复用后第n帧图像的pts时间ok_n_packet_pts,其中:
ok_n_packet_pts=ts_start_pts+offset_pts_value。
S27,顺序播放多个ts片段。
步骤S22-S27与第一实施例的对应步骤相同,再次不再赘述。
本发明实施例通过接收用户的跨段播放操作,确定ts片段的总数量,可以实现在教育或剪辑场景中需要播放重点内容的情况下,通过智能锁定和人工选取相结合的方式,确定ts片段的总数量,提升了本发明方法的可靠性和灵活性。同时,通过智能确定已播放的内容的片段的数量,以及已播放内容片段所在的ts片段,利于根据实际需要生成ts片段,便于后续对ts片段的处理,最后,通过多种特征信息的组合确定基准pts时间,并提供根据画面取舍,最大限度的提升了本发明的易用性和可靠性,提供了良好的seek体验。
第三实施例:
请参照图7和图8所示,本发明还提供了一种基于HLS格式视频源场景下播放器的seek装置100,包括接收模块110、第一确定模块120、第一获取模块130、第二获取模块140、第二确定模块150、第三确定模块160和处理模块1070,其中:
接收模块110,与第一确定模块120和、第一获取模块130和第二获取模块140连接,用于接收用户的跨段播放操作,确定ts片段的总数量。
第一确定模块120,与第三确定模块160连接,用于确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和。
第一获取模块130,与第二确定模块150连接,用于获取第n个ts片段中,解复用后第一帧图像的pts数据,记为ts_first_packet_pts。
第二获取模块140,与第二确定模块150连接,用于解复用后第n帧图像的pts数据,记为ts_n_packet_pts,ts_n_packet_pts出自当前ts片段解复用后,第n个packet中的pts数据。
第二确定模块150,与第三确定模块160连接,用于确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量offset_pts_value,其中:
offset_pts_value=ts_n_packet_pts-ts_first_packet_pts
第三确定模块160,与处理模块1070连接,用于确定第n个ts片段中,解复用后第n帧图像的pts时间ok_n_packet_pts,其中:
ok_n_packet_pts=ts_start_pts+offset_pts_value。
处理模块1070,用于顺序播放多个ts片段。
请参照图8所示,在本实施例中,所述接收模块110,包括接收子模块111、获取子模块112和生成子模块113,其中:
接收子模块111,与获取子模块112连接,用于接收用户于操控区域的第一触控指令;
获取子模块112,与生成子模块113连接,用于获取用户于视频顺序播放过程中已播放的内容片段,所述已播放的内容片段包括拖动ts片段;
生成子模块113,用于根据所述已播放的内容片段以及用户的第二触控指令,重新生成ts片段。
作为对生成子模块113的一种优选方案而非限定,生成子模块113进一步包括获取单元1131、确定单元1132、推送单元1133和生成单元1134,其中:
获取单元1131,与确定单元1132连接,用于获取已播放内容片段的特征信息;
确定单元1132,与推送单元1133连接,用于搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间;
推送单元1133,与生成单元1134连接,用于以所述基准pts时间为中心,在播放进度条的对应位置推送于基准pts时间连续间隔时间帧的图像;
生成单元1134,用于根据用户对各所述连续间隔时间帧的图像的第二触控指令,重新生成pts片段。
其中,作为对获取单元1131的一种补充而非限定,获取单元1131还包括获取子单元1131a和第一确定子单元1131b:
获取子单元1131a,与第一确定子单元1131b连接,用于获取播放内容片段的画面信息和声音信息,所述画面信息包括场景信息和人物信息,所述声音信息包括人声信息和背景声信息;
第一确定子单元1131b,用于根据所述场景信息、人物信息、人声信息和背景声信息,确定特征信息F=S·a+C·b+V·c+B·d,其中,S为场景信息的偏移量,C为人物信息的偏移量,V为人声信息的偏移量,B为背景声信息的偏移量,a、b、c、d为对应偏移量的加权值。
对应于获取子单元1131a和第一确定子单元1131b,确定单元1132还包括第二确定子单元1132a和采集子单元1132b:
第二确定子单元1132a,与第一确定子单元1131b和采集子单元1132b连接,用于当特征信息超出阈值时,确定超出阈值对应的ts片段,以及超出阈值时的参考pts时间。
采集子单元1132b,用于在所述参考pts时间附近采集场景信息偏移量最大值所在帧的pts作为基准pts时间。
本实施例的模块和单元与上述第一、二实施例的步骤对应,这里不再赘述。
本发明实施例通过重新确定第n个ts片段中,第一帧图像的正确pts,获取第n个ts片段中,解复用后第一帧图像的pts数据,获取第n个ts片段中,解复用后第n帧图像的pts数据,而后根据第n帧图像的pts数据和第一帧图像的pts数据,确定确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量,最后确定第n个ts片段中,解复用后第n帧图像的pts时间,可以实现HLS格式视频多个拼接片段中,每一帧图像的pts时间的准确修正,使得视频得以正常播放,一方面可以兼容非标准视频,避免编码服务器再次转码,节省服务器费用,另一方面提供良好的seek 体验,满足教育场景视频seek交互刚需。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露seek方法和seek装置,可以通过其它的方式实现。例如,以上所描述的seek装置的实施例仅仅是示意性的,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (2)
1.一种基于HLS格式视频源场景下播放器的seek方法,其特征在于,包括:
确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和;
获取第n个ts片段中,解复用后第一帧图像的pts数据,记为ts_first_packet_pts;
获取第n个ts片段中,解复用后第n帧图像的pts数据,记为ts_n_packet_pts,ts_n_packet_pts出自当前ts片段解复用后,第n个packet中的pts数据;
确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量offset_pts_value,其中:
offset_pts_value=ts_n_packet_pts-ts_first_packet_pts;
确定第n个ts片段中,解复用后第n帧图像的pts时间ok_n_packet_pts,其中:
ok_n_packet_pts=ts_start_pts+offset_pts_value;
顺序播放多个ts片段;
所述确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和的步骤之前,还包括:
接收用户的跨段播放操作,确定ts片段的总数量;
所述接收用户的跨段播放操作的步骤,包括:
接收用户于操控区域的第一触控指令,所述第一触控指令包括拖动操作;
获取用户于视频顺序播放过程中已播放的内容片段,记录正向拖动位置,依次确定已播放的内容片段的数量,以及已播放内容片段所在的ts片段,所述已播放的内容片段包括拖动的 ts片段,所述已播放的内容片段还包括两次拖动的 ts片段之间的连续的ts片段;
根据所述已播放的内容片段以及用户的第二触控指令,重新生成ts片段,所述重新生成的ts片段与视频原始的ts片段相同或者不同;
所述根据所述已播放内容片段以及用户的第二触控指令,重新生成ts片段的步骤,包括:
获取已播放内容片段的特征信息;
搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间;
以所述基准pts时间为中心,在播放进度条的对应位置推送与基准pts时间连续间隔时间帧的图像;
根据用户对各所述连续间隔时间帧的图像的第二触控指令,重新生成pts片段;
所述获取已播放内容片段的特征信息的步骤,包括:
获取播放内容片段的画面信息和声音信息,所述画面信息包括场景信息和人物信息,所述声音信息包括人声信息和背景声信息;
根据所述场景信息、人物信息、人声信息和背景声信息,确定特征信息F=S·a+C·b+V·c+B·d,其中,S为场景信息的偏移量,C为人物信息的偏移量,V为人声信息的偏移量,B为背景声信息的偏移量,a、b、c、d为对应偏移量的加权值;
所述搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间的步骤,包括:
当特征信息超出阈值时,确定超出阈值对应的ts片段,以及超出阈值时的参考pts时间;
在所述参考pts时间附近采集场景信息偏移量最大值所在帧的pts作为基准pts时间。
2.一种基于HLS格式视频源场景下播放器的seek装置,其特征在于,包括:
第一确定模块,用于确定第n个ts片段中,第一帧图像的正确pts,记为ts_start_pts,ts_start_pts为前n-1个ts片段的时长总和;
第一获取模块,用于获取第n个ts片段中,解复用后第一帧图像的pts数据,记为ts_first_packet_pts;
第二获取模块,用于获取第n个ts片段中,解复用后第n帧图像的pts数据,记为ts_n_packet_pts,ts_n_packet_pts出自当前ts片段解复用后,第n个packet中的pts数据;
第二确定模块,用于确定第n个ts片段中,解复用后第n帧图像的pts时间,相对于ts片段中解复用后第一帧图像的pts时间的偏移量offset_pts_value,其中:
offset_pts_value=ts_n_packet_pts-ts_first_packet_pts;
第三确定模块,用于确定第n个ts片段中,解复用后第n帧图像的pts时间ok_n_packet_pts,其中:
ok_n_packet_pts=ts_start_pts+offset_pts_value;
处理模块,用于顺序播放多个ts片段;
接收模块,用于接收用户的跨段播放操作,确定ts片段的总数量;
所述接收模块,包括:
接收子模块,用于接收用户于操控区域的第一触控指令,所述第一触控指令包括拖动操作;
获取子模块,用于获取用户于视频顺序播放过程中已播放的内容片段,记录正向拖动位置,依次确定已播放的内容片段的数量,以及已播放内容片段所在的ts片段,所述已播放的内容片段包括拖动的 ts片段,所述已播放的内容片段还包括两次拖动的 ts片段之间的连续的ts片段;
生成子模块,用于根据所述已播放的内容片段以及用户的第二触控指令,重新生成ts片段,所述重新生成的ts片段与视频原始的ts片段相同或者不同;
生成子模块,包括:
获取单元,用于获取已播放内容片段的特征信息;
确定子单元,用于搜索已播放内容片段的当前和相邻ts片段,确定所述特征信息发生变更的基准pts时间;
推送子单元,用于以所述基准pts时间为中心,在播放进度条的对应位置推送与基准pts时间连续间隔时间帧的图像;
生成子单元,用于根据用户对各所述连续间隔时间帧的图像的第二触控指令,重新生成pts片段;
获取单元,包括:
获取子单元,用于获取播放内容片段的画面信息和声音信息,所述画面信息包括场景信息和人物信息,所述声音信息包括人声信息和背景声信息;
第一确定子单元,用于根据所述场景信息、人物信息、人声信息和背景声信息,确定特征信息F=S·a+C·b+V·c+B·d,其中,S为场景信息的偏移量,C为人物信息的偏移量,V为人声信息的偏移量,B为背景声信息的偏移量,a、b、c、d为对应偏移量的加权值;
确定单元,包括:
第二确定子单元,用于当特征信息超出阈值时,确定超出阈值对应的ts片段,以及超出阈值时的参考pts时间;
采集子单元,用于在所述参考pts时间附近采集场景信息偏移量最大值所在帧的pts作为基准pts时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210169802.XA CN114257864B (zh) | 2022-02-24 | 2022-02-24 | 一种基于HLS格式视频源场景下播放器的seek方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210169802.XA CN114257864B (zh) | 2022-02-24 | 2022-02-24 | 一种基于HLS格式视频源场景下播放器的seek方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114257864A CN114257864A (zh) | 2022-03-29 |
CN114257864B true CN114257864B (zh) | 2023-02-03 |
Family
ID=80797037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210169802.XA Active CN114257864B (zh) | 2022-02-24 | 2022-02-24 | 一种基于HLS格式视频源场景下播放器的seek方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114257864B (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7068719B2 (en) * | 2001-06-01 | 2006-06-27 | General Instrument Corporation | Splicing of digital video transport streams |
US8875199B2 (en) * | 2006-11-13 | 2014-10-28 | Cisco Technology, Inc. | Indicating picture usefulness for playback optimization |
CN103491430B (zh) * | 2012-06-12 | 2016-12-14 | 联想(北京)有限公司 | 流媒体数据处理方法和电子设备 |
CN104469487B (zh) * | 2014-12-31 | 2019-02-12 | 优酷网络技术(北京)有限公司 | 一种场景切换点的检测方法及装置 |
CN110337009A (zh) * | 2019-07-01 | 2019-10-15 | 百度在线网络技术(北京)有限公司 | 视频播放的控制方法、装置、设备及存储介质 |
CN112291634B (zh) * | 2019-07-25 | 2022-11-29 | 腾讯科技(深圳)有限公司 | 视频处理方法及装置 |
CN112414400B (zh) * | 2019-08-21 | 2022-07-22 | 浙江商汤科技开发有限公司 | 一种信息处理方法、装置、电子设备和存储介质 |
CN113613065B (zh) * | 2021-08-02 | 2022-09-09 | 北京百度网讯科技有限公司 | 视频编辑方法、装置、电子设备以及存储介质 |
-
2022
- 2022-02-24 CN CN202210169802.XA patent/CN114257864B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114257864A (zh) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6266109B2 (ja) | 動画画面の処理方法及び装置 | |
US7739584B2 (en) | Electronic messaging synchronized to media presentation | |
KR20210069711A (ko) | 코스웨어 녹화 및 재생 방법, 장치, 스마트 인터랙티브 태블릿 및 저장 매체 | |
US10242712B2 (en) | Video synchronization based on audio | |
CN112291627A (zh) | 一种视频编辑方法、装置、移动终端和存储介质 | |
US20100332959A1 (en) | System and Method of Capturing a Multi-Media Presentation for Delivery Over a Computer Network | |
WO2019192416A1 (zh) | 视频处理方法及其装置、存储介质、电子产品 | |
US10848835B2 (en) | Video summary information playback device and method and video summary information providing server and method | |
CN109905749B (zh) | 视频播放方法和装置、存储介质及电子装置 | |
US20080175559A1 (en) | Image process apparatus and method thereof | |
JP2002125199A (ja) | フレーム情報記述方法、フレーム情報生成装置及び方法、映像再生装置及び方法並びに記録媒体 | |
US8984561B2 (en) | Moving-image playing apparatus and method | |
CN114143575A (zh) | 视频剪辑方法、装置、计算设备及存储介质 | |
JP2003324678A (ja) | 画像処理装置、画像処理システム、画像処理方法、記憶媒体、及びプログラム | |
JP2011250095A (ja) | 電子機器、映像編集方法及びプログラム | |
CN104104901B (zh) | 一种数据播放方法及装置 | |
CN114257864B (zh) | 一种基于HLS格式视频源场景下播放器的seek方法及装置 | |
US10984836B2 (en) | Information processing apparatus, information processing method, and non-transitory computer readable medium | |
KR100766985B1 (ko) | 동화상 시청 시스템, 동화상 시청 장치, 그 제어 방법 및 프로그램을 기록한 기록매체 | |
CN112954426A (zh) | 视频播放方法、电子设备及存储介质 | |
WO2014129736A1 (ko) | 2d-3d 복합 차원 콘텐츠 파일을 사용하는 복합 차원 콘텐츠 서비스 제공 시스템, 그 서비스 제공 방법 및 그 복합 차원 콘텐츠 파일 | |
JP2008270908A (ja) | 情報処理装置、その制御方法、プログラム、記憶媒体 | |
JP6217221B2 (ja) | コンテンツ再生方法、装置及びプログラム | |
JP7153143B2 (ja) | 映像提供システムおよびプログラム | |
JP2006279294A (ja) | コンテンツ再生システム、コンテンツ再生方法、およびコンピュータプログラム |
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 | ||
CB02 | Change of applicant information |
Address after: Room 402, No. 66, North Street, University Town Center, Panyu District, Guangzhou City, Guangdong Province, 510006 Applicant after: Yifang Information Technology Co.,Ltd. Address before: 510006 room 402, No. 66 (innovation building), North Central Street, University City, Panyu District, Guangzhou, Guangdong Province Applicant before: GUANGZHOU EASEFUN INFORMATION TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |