CN107634928A - 一种码流数据的处理方法及装置 - Google Patents

一种码流数据的处理方法及装置 Download PDF

Info

Publication number
CN107634928A
CN107634928A CN201610567461.6A CN201610567461A CN107634928A CN 107634928 A CN107634928 A CN 107634928A CN 201610567461 A CN201610567461 A CN 201610567461A CN 107634928 A CN107634928 A CN 107634928A
Authority
CN
China
Prior art keywords
object knowledge
synusia section
fragment
synusia
section
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
CN201610567461.6A
Other languages
English (en)
Other versions
CN107634928B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201610567461.6A priority Critical patent/CN107634928B/zh
Priority to PCT/CN2017/073623 priority patent/WO2018014545A1/zh
Publication of CN107634928A publication Critical patent/CN107634928A/zh
Application granted granted Critical
Publication of CN107634928B publication Critical patent/CN107634928B/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/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例公开了一种码流数据的处理方法及装置,所述方法包括:客户端获取目标知识层片段的管理数据,目标知识层片段为码流中包含的至少一个知识层片段中的一个,目标知识层片段被所述码流中包含的至少两个不连续的序列层片段依赖,管理数据用于确定预设有效时间;客户端解析所述管理数据,获取目标知识层片段的预设有效时间,其中,所述至少两个不连续的序列层片段在所述预设有效时间内被解码;客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻;客户端在所述目标知识层片段的被删除时刻删除所述目标知识层片段。采用本发明实施例,具有可增强知识层片段的存储时间的可控性,提高码流数据管理的适用性的优点。

Description

一种码流数据的处理方法及装置
技术领域
本发明涉及流媒体数据处理领域,尤其涉及一种码流数据的处理方法及装置。
背景技术
传统视频编码中,为了使编码后的视频支持随机访问功能,在编码视频中会插入一些随机访问点(英文:random access point)。视频由随机访问点分割成多个具有随机访问功能的视频片段,简称为随机访问片段。在传统技术中,一个随机访问片段中的图像只能作为该随机访问片段中的其他图像的参考图像/参考帧(英文:reference picture/reference frame)),即不允许跨随机访问点的帧间预测(英文:Interprediction),较大地限制了视频编/解码的效率。
为了挖掘和利用多个随机访问片段之间的图像在编码时相互参考的信息(简称互信息(英文:mutual information)),在编码(或解码)一幅图像时,编码器(或解码器)可以从数据库中选择与当前编码图像(或解码图像)纹理内容相近的图像作为参考图像,这种参考图像称为知识库图像,存储上述参考图像的集合的数据库称为知识库,这种视频中至少一幅图像参考至少一幅知识库图像进行编解码的方法称为基于知识库的视频编码(英文:library-based video coding,LBVC)。采用LBVC对一个视频序列进行编码会产生一个包含知识库图像的知识层码流和一个包含视频序列各帧图像、参考知识库图像编码得到的图像的序列层码流。序列层码流中的多个不连续片段可能会参考同一个知识层片段,客户端解码多个不连续的序列层片段都需要参考同一个知识层片段。
现有技术中,客户端对不同序列层片段的数据进行解码时都是独立解码,在前的序列层片段参考的知识层片段在后一个序列层片段开始解码后都会被清除,客户端无法根据需求对知识层片段进行保存。若后面的序列层片段参考的知识层片段与之前的序列层片段参考的知识层片段相同,客户端则需要再次请求同一个知识层片段。客户端重复多次请求同一个知识层片段浪费了数据传输带宽,重复存储多次同一个知识层片段浪费了客户端的存储空间。
发明内容
本申请提供了一种码流数据的处理方法及装置,可增强知识层片段的存储时间的可控性,提高码流数据管理的适用性。
第一方面提供了一种码流数据的处理方法,其可包括:
客户端获取目标知识层片段的管理数据,所述目标知识层片段为码流中包含的至少一个知识层片段中的一个,所述目标知识层片段被所述码流中包含的至少两个不连续的序列层片段依赖,所述管理数据用于确定预设有效时间;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间,其中,所述至少两个不连续的序列层片段在所述预设有效时间内被解码;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻;
所述客户端在所述目标知识层片段的被删除时刻删除所述目标知识层片段。
在本申请中,客户端通过目标知识层片段的预设有效时间管理目标知识层片段,在目标知识层片段的被删除时刻将目标知识层片段删除,通过目标知识层片段的预设有效时间确定其被删除时间可保证该预设有效时间内,依赖目标知识层片段的序列层片段的解码,无需重新加载,避免了数据传输的带宽浪费。在目标知识层片段的被删除时刻将其删除,也减少目标知识层片段对客户端本地存储空间的占用,增强了码流数据的管理的适用性。
结合第一方面,在第一种可能的实现方式中,所述目标知识层片段的管理数据为所述码流的初始化片段或者所述码流的媒体表达描述MPD;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间包括:
所述客户端获取所述初始化片段中携带的所述目标知识层片段的有效持续时间,或者所述MPD中描述的所述目标知识层片段的有效持续时间,作为所述目标知识层片段的预设有效时间L;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻包括:
所述客户端获取所述目标知识层片段被目标序列层片段依赖的被依赖时刻T1,所述目标序列层片段为所述至少两个不连续的序列层片段中的第一个;
计算T2,其中,T2=T1+L,并将所述T2确定为所述目标知识层片段的被删除时刻。
在本申请中,客户端可从码流的初始化片段中获取得到目标知识层片段的有效持续时间,根据目标知识层片段的有效持续时间来管理目标知识层片段在客户端的本地存储的时间,可保证目标知识层片段的有效持续时间范围内完成依赖目标知识层片段的序列层片段的解码,无需重复加载,避免了知识层片段的重复下载造成的带宽浪费。本申请也可在码流的MPD中获取目标知识层片段的有效持续时间,数据传输更简便,节省了数据传输资源,增强了知识层片段的管理的适用性。
结合第一方面,在第二种可能的实现方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间包括:
所述客户端获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的起始有效时刻T3和所述目标知识层片段的有效持续时间L1,所述T3和所述L1作为所述目标知识层片段的预设有效时间;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻包括:
所述客户端计算T4,其中,T4=T3+L1,并将所述T4确定为所述知识层片段的被删除时刻。
在本申请中,客户端可在目标知识层片段中获取得到目标知识层片段的起始有效时刻和有效持续时间之后,可依据起始有效时刻和有效持续时间确定目标知识层片段的被删除时刻,提高了目标知识层片段的客户端本地存储时间的管理精确性,减少了客户端在目标知识层片段的管理上的内存浪费,增强了知识层片段的管理的适用性。
结合第一方面,在第三种可能的实现方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间包括:
所述客户端获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的失效时刻T5,所述T5作为所述目标知识层片段的预设有效时间的终止时刻;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻包括:
所述客户端将所述T5确定为所述知识层片段的被删除时刻。
本申请客户端可在目标知识层片段的片段信息中获取得到目标知识层片段的失效时刻,将目标知识层片段的失效时刻确定为其被删除时间,操作简便,提高了知识层片段的保存时间管理的精确性。进一步的可被删除时刻将目标知识层片段删除,减少了客户端在知识层片段的管理上的内存浪费,增强了知识层片段的管理的适用性。
结合第一方面第三种可能的实现方式,在第四种可能的实现方式中,所述至少两个不连续的序列层片段在所述T5之前被解码。
本申请将目标知识层片段的被删除时间设置在依赖目标知识层片段的序列层片段解码完成之后,在依赖目标知识层片段的序列层片段解码之后删除目标知识层片段,既可保证序列层片段的正确解码,又增强了码流数据的处理的适用性。
第二方面提供了一种码流数据的处理装置,其可包括:
获取单元,用于获取目标知识层片段的管理数据,所述目标知识层片段为码流中包含的至少一个知识层片段中的一个,所述目标知识层片段被所述码流中包含的至少两个不连续的序列层片段依赖,所述管理数据用于确定预设有效时间;
解析单元,用于解析所述获取单元获取的所述管理数据,获取所述目标知识层片段的预设有效时间,其中,所述至少两个不连续的序列层片段在所述预设有效时间内被解码;
确定单元,用于根据所述解析单元获取的所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻;
删除单元,用于在所述确定单元确定的所述目标知识层片段的被删除时刻删除所述目标知识层片段。
结合第二方面,在第一种可能的实现方式中,所述目标知识层片段的管理数据为所述码流的初始化片段或者所述码流的媒体表达描述MPD;
所述解析单元具体用于:
解析所述获取单元获取的所述目标知识层片段的管理数据,获取所述初始化片段中携带的所述目标知识层片段的有效持续时间,或者所述MPD中描述的所述目标知识层片段的有效持续时间,作为所述目标知识层片段的预设有效时间L;
所述确定单元具体用于:
获取所述目标知识层片段被目标序列层片段依赖的被依赖时刻T1,所述目标序列层片段为所述至少两个不连续的序列层片段中的第一个;
结合所述解析单元获取的所述L计算T2,其中,T2=T1+L,并将所述T2确定为所述目标知识层片段的被删除时刻。
结合第二方面,在第二种可能的实现方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述解析单元具体用于:
解析所述获取单元获取的所述目标知识层片段的管理数据,获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的起始有效时刻T3和所述目标知识层片段的有效持续时间L1,所述T3和所述L1作为所述目标知识层片段的预设有效时间;
所述确定单元具体用于:
根据所述解析单元获取的所述T3和所述L1计算T4,其中,T4=T3+L1,并将所述T4确定为所述知识层片段的被删除时刻。
结合第二方面,在第三种可能的实现方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述解析单元具体用于:
解析所述获取单元获取的所述目标知识层片段的管理数据,获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的失效时刻T5,所述T5作为所述目标知识层片段的预设有效时间的终止时刻;
所述确定单元具体用于:
将所述解析单元获取的所述T5确定为所述知识层片段的被删除时刻。
结合第二方面第三种可能的实现方式,在第四种可能的实现方式中,所述至少两个不连续的序列层片段在所述解析单元获取的所述T5之前被解码。
在本申请中,码流数据的处理装置通过目标知识层片段的预设有效时间管理目标知识层片段,在目标知识层片段的被删除时刻将目标知识层片段删除,通过目标知识层片段的预设有效时间确定其被删除时间可保证该预设有效时间内,依赖目标知识层片段的序列层片段的解码,无需重新加载,避免了数据传输的带宽浪费。在目标知识层片段的被删除时刻将其删除,也减少目标知识层片段对客户端本地存储空间的占用,增强了码流数据的管理的适用性。
第三方面提供了一种客户端,其可包括:存储器和处理器,所述存储器和所述处理器相连;
所述存储器用于存储一组程序代码;
所述处理器用于调用所述存储器中存储的程序代码执行上述第一方面提供的码流数据的处理方法。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是系统层视频流媒体传输采用的DASH标准传输的框架实例示意图;
图2是系统层视频流媒体传输采用的DASH标准传输的MPD的结构示意图;
图3是多个相互独立的随机访问片段的示意图;
图4是知识库为随机访问片段提供编码参考的示意图;
图5是本发明实施例提供的码流数据的处理方法的流程示意图;
图6是本发明实施例提供的码流数据的处理装置的结构示意图;
图7是本发明实施例提供的客户端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前以客户端为主导的系统层视频流媒体传输方案可采用基于通过超文本传输协议(英文:hypertext transfer protocol,HTTP)动态自适应流(英文:dynamic adaptivestreaming over HTTP,DASH)标准框架,如图1,图1是系统层视频流媒体传输采用的DASH标准传输的框架实例示意图。系统层视频流媒体传输方案的数据传输过程包括两个过程:服务器端(如HTTP服务器,以下简称服务器)为视频内容生成媒体数据的过程,和客户端(如HTTP流媒体客户端)向服务器请求并获取媒体数据的过程。其中,服务器上的媒体表达中包括多个描述层,每个描述层描述多个片段。客户端的HTTP流媒体请求控制模块获取服务器发送的媒体表达描述(英文:Media Presentation Description,MPD),并对MPD进行分析确定要请求的片段,通过HTTP请求接收端向服务器请求相应的片段,并通过媒体播放器进行解码播放。
1)在上述服务器为视频内容生成媒体数据的过程中,服务器为视频内容生成的媒体数据包括同一视频内容的不同版本的视频码流,以及码流的MPD。例如,服务器为同一集电视剧的视频内容生成低分辨率低码率低帧率(如360p分辨率、300kbps码率、15fps帧率)的码流,中分辨率中码率高帧率(如720p分辨率、1200kbps码率、25fps帧率)的码流,高分辨率高码率高帧率(如1080p分辨率、3000kbps码率、25fps帧率)的码流等。
此外,服务器还可为该集电视剧的视频内容生成码流的MPD。其中,如图2,图2是系统传输方案DASH标准的MPD的结构示意图。上述码流的MPD包含多个描述层(英文:Representation),例如,图2的媒体表达(英文:Media Presentation)中的period start=100s部分可包含Representation1、Representation2,…等多个描述层。每个描述层描述上述码流的一个或者多个片段。其中,上述码流中的MPD包含的各个描述层之间可以相互独立、也可以相互依赖。其中,上述各个描述层之间相互独立表示各个描述层的编解码不参考其他描述层(例如描述知识层片段的描述层,该知识层片段的编解码不参考其他片段),各个描述层之间相互依赖表示各个描述层的编解码需要参考其他描述层(例如描述序列层片段的描述层,该序列层片段的编解码需要参考知识层片段)。每个描述层按照时序描述若干个片段(英文:Segment)的信息,例如初始化片段(英文:Initialization segment)、MediaSegment1、Media Segment1,…,Media Segment20等,所有片段在时间上首尾相接。每个片段包含一个时间段内的视频码流,片段在描述层中的描述包括播放起始时刻、播放持续时长、网络存储地址(例如以统一资源定位符(英文:Universal Resource Locator,URL)的形式表示的网络存储地址)等片段信息。
进一步的,片段还允许被细分为多个子片段(英文:Subsegment),每个子片段包含片段的一部分,子片段的信息包括播放起始时刻、播放持续时长、该子片段在其所属片段的码流中的字节范围(英文:Byte Range)等。上述子片段的信息由片段索引(英文:SegmentIndex)描述,每个片段索引描述一个片段中所有的子片段的信息;片段索引可以和片段合并、存储在片段的起始位置,也可以独立存储在索引片段(英文:Index Segment)中。上述子片段的更多描述可参见系统传输方案DASH标准中提供的信息,在此不做限制。
2)在客户端向服务器请求并获取媒体数据的过程中,用户选择播放视频时,客户端根据用户点播的视频内容向服务器获取相应的MPD,进而根据MPD中描述的视频内容的片段信息生成片段列表。上述片段列表记录了每个片段的播放时段和每个片段的网络存储地址。客户端根据用户点播的点播时刻从片段列表中获取播放时刻覆盖该点播时刻的一个或多个片段的网络存储地址,向服务器发送下载网络存储地址对应的视频片段数据的请求,服务器根据接收到的请求向客户端发送视频片段数据。客户端获取得到服务器发送的视频片段数据之后,则可通过媒体播放器进行解码、播放等操作。
系统层视频流媒体传输方案采用DASH标准,通过客户端分析MPD、按需向服务器请求视频数据并接收服务器发送的数据的方式实现视频数据的传输。系统层视频流媒体传输方案采用DASH标准主要适用于传统视频编码(例如H.264、HEVC(英文全称:HighEfficiency Video Coding)等编码标准)产生的视频码流。如图3,图3是多个相互独立的随机访问片段的示意图。其中,圆点代表随机访问点,方块代表随机访问点后的随机访问片段,带有x号的虚线箭头表示箭头指向的随机访问片段在编码时不能参考虚线起始的随机访问片段的信息。即,在传统视频的编解码技术中,一个随机访问片段中的图像只能作为该随机访问片段中的其他图像的参考图像/参考帧,即不允许跨随机访问点的帧间预测,较大地限制了视频编/解码的效率。
LBVC将多个随机访问片段中的公共图像信息(包含了随机访问片段间的互信息(英文:mutual information),即随机访问片段间的图像在编解码时相互参考的信息)提取组织成知识库,这些公共图像信息仅编码一次,各随机访问片段中的图像允许参考这些公共图像信息进行编码(和解码),从而使得编码器(或解码器)利用随机访问片段之间的互信息,进一步去除视频序列的冗余信息,提升整个视频序列的编码效率,降低存储空间,节省传输带宽。如图4,图4是基于知识库的视频编码中以一个知识库为其他随机访问片段提供编码参考的示意图。其中,圆点代表随机访问点,方块代表随机访问点后的随机访问片段,箭头表示多个随机访问片段在编码时以知识库(英文:Library)提供的信息作为参考。
这种基于知识库的编码方法将视频中多次出现的相似内容提取放入知识库中,通过参考知识库中的图像提高视频的编码效率。此时,随机访问点图像可以参考知识库中图像进行编码/解码,也可以直接使用传统的帧内编码方法。随机访问点图像不依赖于视频序列中的其它图像进行编码/解码,各随机访问片段之间仍然相互独立。
在现有的DASH标准中,知识层片段和序列层片段之间的依赖关系(或称参考关系)在MPD中描述。在MPD中,每个描述层都有独立的ID。MPD的描述层级(即representation级)的语法(即用于描述描述层属性信息的语法)中包含一个属性dependencyId,用于指示该属性所在的描述层解码或者描述需要依赖的另一个描述层的ID。客户端在请求携带dependencyId属性的representation的segment(假设为segment1)数据时需要将segment1所依赖的segment(假设为segment2)也获取得到才能正确解码或者描述segment1。下面将结合MPD中部分representation的描述对各个representation中的segment的依赖关系进行描述,其中,在representation的上面层级的信息不做赘述:
其中,上述描述表明Id为“tag6”的representation依赖于Id为“tag5”的representation,即上述Id为“tag6”的representation中描述的segment解码依赖于Id为“tag5”的representation中描述的segment。上述描述通过一个索引分段(即indexsegment)来描述segment的URL。
其中,上述index segment中的语法格式在ISO/IEC 14496-12中的描述如下:
其中,上述描述中包含的语法元素表示的含义如下:
reference_ID:码流的ID;
timescale:时间单位;
earliest_presentation_time:index segment中描述的码流的最早呈现时间,以timescale为单位;
first_offset:第一个segment在index segment后的起始偏移;
reference_count:index segment中描述的segment的个数;
reference_type;1表示segment是index segment,0表示segment是媒体内容;
referenced_size:segment的大小;
subsegment_duration:以timescale为单位的segment持续时长;
starts_with_SAP:segment的流接入类型;
SAP_delta_time:第一个流接入点的最早呈现时间。
针对上述的MPD中描述的信息,客户端获取码流数据的流程如下步骤:
1、客户端接收到服务器发送的含有上述信息的MPD,解析上述MPD中包含的信息以获得representation之间的依赖关系和index segment的信息。
2、客户端根据用户点播视频时选择的点播时刻等信息选择要请求的representation,比如,id="tag5"的representation。
3、在确定了要请求的representation后,客户端根据MPD中的indexRange信息构造请求index segment的URL,比如http://example.com/video-512k.mp4/0-4332,进而可根据index segment的URL请求index segment。
4、客户端获取到index segment,解析index segment的sidx box信息,获得segment的信息,进而可根据segment的信息构造segment的URL,并根据segment的URL请求segment。其中,上述sidx box为分段名为index segment的分段中的具体语法盒子。
5、客户端请求id="tag6"的representation的segment。具体的,客户端首先请求id="tag6"的representation的index segment,解析index segment获得segment的信息,进而可根据segment的信息构造segment的URL,并根据segment的URL请求segment。
具体的,客户端根据要切换码流的时间点信息,包括id="tag5"的representation的第i个segment信息和id="tag6"的representation的第i个segment的信息,确定要下载的id="tag5"的representation中第i个segment的URL和id="tag6"的representation中第i个segment的URL。比如,客户端切换的码流时间点是客户端播放器的播放进度时间轴中进度为1分钟的时间点,该时间点对应的id="tag5"的representation中第i个segment的range信息是10000-10500,那么该segment的URL为http://example.com/video-512k.mp4/10000-10500;该时间点对应的id="tag6"的representation中第i个segment的range信息是9000-9400,那么该segment的URL为http://example.com/video-768k.mp4/9000-9400。其中,客户端解码时tag6的segment依赖于tag5的segment的数据。
客户端确定了两个segment的URL之后,则可向服务器发出segment请求,请求的两个segment的URL分别为http://example.com/video-512k.mp4/10000-10500和http://example.com/video-768k.mp4/9000-9400。服务器接收到客户端的请求之后,则可将上述两个segment的数据发送给客户端。
6、客户端将接收到的segment数送入解码器进行解码。
在上述实现方式中,客户端对不同segment的数据进行解码时都是独立解码。客户端对segment1解码之后,segment1依赖的segment2在客户端解码下一个segment(假设为segment3)之前就会被清除。若后续segment(假设为segment4)也依赖segment2,则需要再次请求segment2,客户端无法根据segment2的被依赖状态(即segment2被多个其他segment依赖)确定segment2的保存时长,导致segment2的重复请求和下载,进而造成客户端的带宽浪费。对此,本发明实施例提供了一种码流数据的处理方法,可根据知识层码流中的知识层片段的保存时间信息对知识层片段进行保存或者管理,减少知识层片段的重复请求次数,节省客户端的数据传输带宽。
参见图5,是本发明实施例提供的码流数据的处理方法的流程示意图。本发明实施例提供的方法,包括步骤:
S101,客户端获取目标知识层片段管理数据。
在一些可行的实施方式中,服务器生成视频码流的媒体数据时,可预先根据依赖目标知识层片段的序列层片段的被编码时段,设定目标知识层片段的预设有效时间。其中,依赖目标知识层片段的序列层片段在目标知识层片段的预设有效时间内被编码。客户端解码视频数据时,在目标知识层片段的预设有效时间内解码依赖目标知识层片段的序列层片段。
具体实现中,上述目标知识层片段为知识层码流切分得到的多个知识层片段中的一个,目标知识层片段被至少两个不连续的序列层片段所依赖。序列层码流切分得到的多个片段称为序列层片段。序列层片段中包含连续的序列层片段和不连续的序列层片段,即时间上连续的片段和时间上不连续的序列层片段,并且至少一个序列层片段的编码以某一个或者多个知识层片段为参考片段。服务器可将被至少两个不连续的序列层片段依赖的知识层片段确定为目标知识层片段。例如,目标知识层片段被序列层片段1、序列层片段2、序列层片段4和序列层片段5依赖,其中,序列层片段1和序列层片段2为时间上连续的序列层片段,序列层片段4和序列层片段5也为时间上连续的序列层片段,序列层片段1和序列层片段4、序列层片段2和序列层片段4均为时间上不连续的序列层片段等,序列层片段1和序列层片段5、序列层片段2和序列层片段5也均为时间上不连续的序列层片段。目标知识层片段也可为被序列层片段2和序列层片段4依赖的片段,即依赖目标知识层片段的序列层片段至少包含两个不连续的片段。
具体实现中,被至少两个不连续的序列层片段的知识层片段可包括多个,本发明实施例将以其中任一个知识层片段作为目标知识层片段为例进行说明。服务器可将目标知识层片段的预设有效时间等信息封装在码流的媒体数据中,进而可在客户端发送获取媒体数据的请求时将上述码流及其媒体数据等信息反馈给客户端。
在一些可行的实施方式中,客户端可获取服务器发送的码流及其媒体数据,通过解析上述码流及其媒体数据获取目标知识层片段的管理数据。其中,上述目标知识层片段的管理数据用于确定知识层片段的预设有效时间。具体实现中,上述目标知识层片段的管理数据可包括码流的初始化片段、码流的MPD或者码流的知识层片段等,具体可根据实际应用场景确定,在此不做限制。
S102,客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间。
具体实现中,上述目标知识层片段的预设有效时间可为码流的初始化片段中携带的目标知识层片段的有效持续时间,或者码流的MPD中描述的目标知识层片段的有效持续时间。进一步的,上述目标知识层片段的预设有效时间也可为目标知识层片段的片段信息中携带的起始有效时刻和有效持续时间,或者失效时刻等信息。具体可根据实际应用场景确定,在此不做限制。下面将结合步骤S103对目标知识层片段的预设有效时间确定进行描述。
S103,客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻。
在一些可行的实施方式中,上述目标知识层片段的管理数据可为码流的初始化片段(英文:initialization segment),其中,上述初始化片段中携带目标知识层片段的有效持续时间。具体实现中,上述知识层码流切分得到的知识层片段可为码流中的一帧数据,一个知识层片段为一个视频帧。具体的,客户端可对上述管理数据进行解析,获取上述初始化片段中包含的有效持续时间。其中,上述目标知识层片段的有效持续时间可采用如下语法格式在码流的初始化片段中添加,客户端可解析如下语法格式描述的初始化片段获取有效持续时间。
语法格式:
其中,上述语法格式中包含的语法元素表示的含义如下:
timescale:时间单位或者时间尺度;
duration:以timescale为单位的有效持续时间。
其中,上述语法元素表示的知识层片段的有效持续时间为duration/timescale的比值。例如,假设timescale=1000,duration=100000,则知识层片段的有效持续时间为100000/1000秒,即知识层片段的有效持续时间为100秒。在具体应用中timescale也可以不在edur box中,可以采用文件中的其他timescale。
客户端可向服务器请求获取码流的初始化片段。当客户端获取到上述码流的初始化片段时,可对其进行解析,从上述初始化片段中获取目标知识层片段的有效持续时间(设为L)。进一步的,客户端可根据用户点播或者序列层片段的解码需求等实际应用场景需求向服务器端请求获取目标知识层片段。服务器可根据客户端的请求向客户端反馈的目标知识层片段。客户端获取得到服务器发送的目标知识层片段之后,可记录目标知识层片段的第一次被参考的时刻。其中,上述目标知识层片段的第一次被参考的时刻具体可为目标知识层片段被目标序列层片段依赖的被依赖时刻(设为T1),其中,上述目标序列层片段为依赖该目标知识层片段的至少两个序列层片段中第一个被解码的片段。其中,上述目标知识层片段的被依赖时刻具体体现可为目标知识层片段被送入解码器的时刻。进一步的,客户端可计算T2,其中,T2=T1+L,并将T2作为目标知识层片段的被删除时刻。例如,客户端可在知识层片段被送入解码器时开始计时,当计时时间长度等于上述语法元素中记载的知识层片段的有效持续时间L时停止计时,并将停止计时的时刻确定为目标知识层片段的被删除时间。
在上述实现方式中,客户端获取得到码流的初始化分段后,则可确定目标知识层片段的有效持续时间。当目标知识层片段被下载到客户端本地存储后,客户端可通过最大有效时间(即目标知识层片段的有效持续时间)管理在客户端本地存储中的目标知识层片段。客户端通过最大有效时间管理目标知识层片段,可保证目标知识层片段的有效持续时间范围内,如果非知识层片段(即序列层片段)解码需要上述目标知识层片段,客户端则可首先在本地存储中查找目标知识层片段,无需重新请求获取,可重复使用本地所管理的知识层片段,避免了知识层片段的重复下载造成的带宽浪费。
进一步的,在一些可行的实施方式中,上述目标知识层片段的有效持续时间也可携带在码流的MPD中。服务器在生成码流的MPD时,可在码流的MPD中添加目标知识层片段的有效持续时间。具体的,服务器可在MPD中的描述层中添加新的语法元素,例如@EffectiveDuration。上述语法元素@EffectiveDuration表示其所在的描述层描述的知识层片段的有效持续时间为EffectiveDuration的值,其中,上述EffectiveDuration的值以MPD中的timescale属性为单位。例如,假设上述EffectiveDuration的值为100000,MPD中的timescale的值为1000,则EffectiveDuration所在的描述层描述的知识层片段的有效持续时间为100秒。
客户端可向服务器请求获取码流的MPD,进而可对获取的MPD进行解析,获取上述码流的MPD中携带的目标知识层片段的有效持续时间(例如上述以timescale属性为单位的EffectiveDuration的值)。客户端获取得到服务器发送的目标知识层片段时,可记录目标知识层片段的第一次被参考的时刻。其中,上述目标知识层片段的第一次被参考的时刻具体可为目标知识层片段被目标序列层片段依赖的被依赖时刻(设为T1),其中,上述目标序列层片段为依赖该目标知识层片段的至少两个序列层片段中第一个被解码的片段。其中,上述目标知识层片段的被依赖时刻具体体现可为目标知识层片段被送入解码器的时刻。进一步的,客户端可计算T2,其中,T2=T1+L,并将T2作为目标知识层片段的被删除时刻。例如,客户端可在知识层片段被送入解码器时开始计时,当计时时间长度大于或者等于上述以timescale属性为单位的EffectiveDuration的值对应的知识层片段的有效持续时间时停止计时,并将停止计时的时刻确定为知识层片段的被删除时间。
上述实现方式在MPD中描述目标知识层片段的有效持续时间,数据传输更简便,节省了数据传输资源,增强了知识层片段的管理的适用性。
进一步的,在上述实现方式中,服务器在初始化片段中添加知识层片段的有效持续时间时可设定每个知识层片段的有效持续时间一致。在实际应用中,每个知识层片段的使用时间不同,比如,假如知识层片段2的有效使用时间(解码或者被依赖的时间段)是5秒。服务器在初始化片段中添加的每个知识层片段的有效持续时间均为50秒,知识层片段2在被送入解码器的5秒后将不再被使用,则知识层片段2还会被继续在客户端保存45s,容易造成客户端的本地存储空间的浪费。为此,在一些可行的实施方式中,在知识层片段的封装中,服务器可将每个知识层片段单独封装,在每个知识层片段的片段信息中携带该知识层片段的预设有效时间。具体的,可在目标知识层片段的片段信息中添加目标知识层片段的预设有效时间。其中,上述目标知识层片段的预设有效时间可包括目标知识层片段的起始有效时刻(设为T3)和目标知识层片段的有效持续时间(设为L1)等。具体的,服务器可采用如下封装语法格式对目标知识层片段进行封装,并在目标知识层片段中携带起始有效时刻和有效持续时间。
语法格式:
其中,上述语法格式中包含的语法元素表示的含义如下:
timescale:时间单位或者时间尺度;
start_time:以timescale为单位的起始有效时刻;
duration:以timescale为单位的有效持续时间。
具体实现中timescale语法可以没有。
具体实现中,客户端可根据用户点播或者序列层片段的解码需求等实际应用场景需求向服务器请求获取目标知识层片段。客户端获取得到服务器发送的目标知识层片段之后,可解析上述目标知识层片段中的efdu box信息,从中获取目标知识层片段的片段信息中包含的start_time和duration等信息。进一步的,客户端可根据上述start_time和duration等信息确定知识层片段的预设有效时间。其中,上述start_time可为目标知识层片段第一次被参考的时刻,例如目标知识层片段被送入解码器的时刻,具体可根据时间应用场景确定,在此不做限制。进一步的,客户端也可计算目标知识层片段的起始有效时刻T3和有效持续时间L1的累计值T4,即T4=T3+L1,将上述T4确定为知识层片段的被删除时刻。例如,客户端可直接计算知识层片段的最后有效时刻为start_time+duration,进而可将上述最后有效时刻确定为知识层片段的被删除时刻。此外,客户端还可根据知识层片段的起始有效时刻start_time(也可标记为T3)和当前媒体数据处理时刻T31(例如媒体数据的解码时刻等),计算目标知识层片段的剩余有效持续时间L11,其中,上述剩余有效持续时间L11=duration-(T31-start_time)。上述公式中的时间计算在统一的时间单位中计算。
需要说明的是,若具体实现中,上述知识层片段中的efdu box信息中只包含知识层片段的duration数据,则可将上述duration数据的值确定为知识层片段的有效持续时间,并将当前媒体数据处理时刻确定知识层片段的start_time。具体可根据实际应用场景确定,在此不做限制。
在上述实现方式中,客户端获取得到目标知识层片段的起始有效时刻和有效持续时间之后,则可依据起始有效时刻或者当前媒体数据处理时刻,以及有效持续时间管理客户端本地存储的目标知识层片段,提高了目标知识层片段的管理的精确性,进一步降低客户端带宽的浪费,减少了客户端在知识层片段的管理上的内存浪费,增强了知识层片段的管理的适用性。
进一步的,在一些可行的实施方式中,在知识层片段的封装中,服务器还可将每个知识层片段单独封装,在每个知识层片段的片段信息中携带知识层片段的失效时刻(或称超时时间),通过知识层片段的失效时刻来指示客户端对知识层片段进行管理。具体的,可在目标知识层片段的片段信息中携带目标知识层片段的失效时刻。服务器可采用如下封装语法格式对目标知识层片段进行封装,并在目标知识层片段中携带目标知识层片段的失效时刻。
语法格式:
其中,上述语法格式中包含的语法元素表示的含义如下:
timescale:时间单位或者时间尺度;
Expiredate:失效时刻。
具体实现中timescale语法可以没有。
具体实现中,客户端获取得到目标知识层片段之后,可解析上述知识层片段中的expd box信息,从中获取知识层片段的Expiredate等信息。进一步的,客户端可将上述Expiredate指示的时刻(即失效时刻T5)确定知识层片段的被删除时刻。具体实现中,依赖目标知识层片段的至少两个序列层片段在目标知识层片段的失效时刻之前被解码完成。
在上述实现方式中,客户端获取得到每个知识层片段的失效时刻,将每个知识层片段的失效时刻确定为其被删除时间,操作简便,提高了知识层片段的管理的精确性,进一步降低客户端带宽的浪费,减少了客户端在知识层片段的管理上的内存浪费,增强了知识层片段的管理的适用性。
需要说明的是,在具体实现中,客户端可根据实际应用需求从上述各个实现方式中选择任一种或者多种,在此不做限制。
S104,客户端在所述目标知识层片段的被删除时刻删除所述目标知识层片段。
在一些可行的实施方式中,客户端根据上述任一实现方式确定了知识层片段的被删除时刻之后,可在上述被删除时刻将上述知识层片段删除,减少客户端的存储空间浪费。
在本发明实施例中,客户端可根据码流的初始化分段或者MPD确定知识层码流中的目标知识层片段的预设有效时间,也可根据目标知识层片段中携带的信息确定目标知识层片段的预设有效时间。进一步的,可根据目标知识层片段的预设有效时间确定目标知识层片段的最后有效时时刻,即目标知识层片段的被删除时刻,并可在上述被删除时刻将目标知识层片段删除,否则将目标知识层片段保存中客户端的本地存储中。客户端通过目标知识层片段的预设有效时间管理目标知识层片段,可保证该预设有效时间内,如果非知识层片段(即序列层片段)解码需要上述目标知识层片段,客户端则可首先在本地存储中查找所需要的目标知识层片段,无需重新请求获取,可重复使用本地所管理的知识层片段,避免了知识层片段的重复下载,避免了带宽浪费。在知识层片段的被删除时刻将其删除,也减少知识层片段对客户端本地存储空间的占用。
参见图6,是本发明实施例提供的码流数据的处理装置的结构示意图。本发明实施例提供的处理装置包括:
获取单元61,用于获取目标知识层片段的管理数据,所述目标知识层片段为码流中包含的至少一个知识层片段中的一个,所述目标知识层片段被所述码流中包含的至少两个不连续的序列层片段依赖,所述管理数据用于确定预设有效时间。
解析单元62,用于解析所述获取单元61获取的所述管理数据,获取所述目标知识层片段的预设有效时间,其中,所述至少两个不连续的序列层片段在所述预设有效时间内被解码。
确定单元63,用于根据所述解析单元62获取的所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻。
删除单元64,用于在所述确定单元63确定的所述目标知识层片段的被删除时刻删除所述目标知识层片段。
在一些可行的实施方式中,所述目标知识层片段的管理数据为所述码流的初始化片段或者所述码流的媒体表达描述MPD;
所述解析单元62具体用于:
解析所述获取单元61获取的所述目标知识层片段的管理数据,获取所述初始化片段中携带的所述目标知识层片段的有效持续时间,或者所述MPD中描述的所述目标知识层片段的有效持续时间,作为所述目标知识层片段的预设有效时间L;
所述确定单元63具体用于:
获取所述目标知识层片段被目标序列层片段依赖的被依赖时刻T1,所述目标序列层片段为所述至少两个不连续的序列层片段中的第一个;
结合所述解析单元62获取的所述L计算T2,其中,T2=T1+L,并将所述T2确定为所述目标知识层片段的被删除时刻。
在一些可行的实施方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述解析单元62具体用于:
解析所述获取单元61获取的所述目标知识层片段的管理数据,获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的起始有效时刻T3和所述目标知识层片段的有效持续时间L1,所述T3和所述L1作为所述目标知识层片段的预设有效时间;
所述确定单元63具体用于:
根据所述解析单元62获取的所述T3和所述L1计算T4,其中,T4=T3+L1,并将所述T4确定为所述知识层片段的被删除时刻。
在一些可行的实施方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述解析单元62具体用于:
解析所述获取单元61获取的所述目标知识层片段的管理数据,获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的失效时刻T5,所述T5作为所述目标知识层片段的预设有效时间的终止时刻;
所述确定单元63具体用于:
将所述解析单元62获取的所述T5确定为所述知识层片段的被删除时刻。
在一些可行的实施方式中,所述至少两个不连续的序列层片段在所述解析单元62获取的所述T5之前被解码。
具体实现中,本发明实施例提供的码流数据的处理装置具体可为上述实施例提供的客户端。其中,上述处理装置包含的获取单元61、解析单元62、确定单元63和删除单元64可为上述客户端的功能模块,例如HTTP流媒体客户端中的HTTP流媒体请求控制模块等,具体可根据实际应用场景需求确定,在此不再赘述。上述处理装置可通过其内置的各个单元执行上述码流数据的处理方法中客户端所执行的实现方式,在此不再赘述。
在本发明实施例中,客户端可根据码流的初始化分段或者MPD确定知识层码流中的目标知识层片段的预设有效时间,也可根据目标知识层片段中携带的信息确定目标知识层片段的预设有效时间。进一步的,可根据目标知识层片段的预设有效时间确定目标知识层片段的最后有效时时刻,即目标知识层片段的被删除时刻,并可在上述被删除时刻将目标知识层片段删除,否则将目标知识层片段保存中客户端的本地存储中。客户端通过目标知识层片段的预设有效时间管理目标知识层片段,可保证该预设有效时间内,如果非知识层片段(即序列层片段)解码需要上述目标知识层片段,客户端则可首先在本地存储中查找所需要的目标知识层片段,无需重新请求获取,可重复使用本地所管理的知识层片段,避免了知识层片段的重复下载,避免了带宽浪费。在知识层片段的被删除时刻将其删除,也减少知识层片段对客户端本地存储空间的占用。
参见图7,是本发明实施例提供的客户端的结构示意图。本发明实施例提供的客户端可包括存储器71和处理器72,上述存储器71和处理器72相连。
上述存储器71用于存储一组程序代码。
上述处理器72用于调用上述存储器71中存储的程序代码执行如下操作:
获取目标知识层片段的管理数据,所述目标知识层片段为码流中包含的至少一个知识层片段中的一个,所述目标知识层片段被所述码流中包含的至少两个不连续的序列层片段依赖,所述管理数据用于确定预设有效时间;
解析所述管理数据,获取所述目标知识层片段的预设有效时间,其中,所述至少两个不连续的序列层片段在所述预设有效时间内被解码;
根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻;
在所述目标知识层片段的被删除时刻删除所述目标知识层片段。
在一些可行的实施方式中,所述目标知识层片段的管理数据为所述码流的初始化片段或者所述码流的媒体表达描述MPD;
上述处理器72具体用于:
获取所述初始化片段中携带的所述目标知识层片段的有效持续时间,或者所述MPD中描述的所述目标知识层片段的有效持续时间,作为所述目标知识层片段的预设有效时间L;
获取所述目标知识层片段被目标序列层片段依赖的被依赖时刻T1,所述目标序列层片段为所述至少两个不连续的序列层片段中的第一个;
计算T2,其中,T2=T1+L,并将所述T2确定为所述目标知识层片段的被删除时刻。
在一些可行的实施方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
上述处理器72具体用于:
获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的起始有效时刻T3和所述目标知识层片段的有效持续时间L1,所述T3和所述L1作为所述目标知识层片段的预设有效时间;
计算T4,其中,T4=T3+L1,并将所述T4确定为所述知识层片段的被删除时刻。
在一些可行的实施方式中,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
上述处理器72具体用于:
获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的失效时刻T5,所述T5作为所述目标知识层片段的预设有效时间的终止时刻;
将所述T5确定为所述知识层片段的被删除时刻。
在一些可行的实施方式中,所述至少两个不连续的序列层片段在所述T5之前被解码。
具体实现中,客户端可通过其处理器72执行上述实施例提供的码流数据的处理方法中客户端所执行的实现方式,在此不再赘述。
在本发明实施例中,客户端可根据码流的初始化分段或者MPD确定知识层码流中的目标知识层片段的预设有效时间,也可根据目标知识层片段中携带的信息确定目标知识层片段的预设有效时间。进一步的,可根据目标知识层片段的预设有效时间确定目标知识层片段的最后有效时时刻,即目标知识层片段的被删除时刻,并可在上述被删除时刻将目标知识层片段删除,否则将目标知识层片段保存中客户端的本地存储中。客户端通过目标知识层片段的预设有效时间管理目标知识层片段,可保证该预设有效时间内,如果非知识层片段(即序列层片段)解码需要上述目标知识层片段,客户端则可首先在本地存储中查找所需要的目标知识层片段,无需重新请求获取,可重复使用本地所管理的知识层片段,避免了知识层片段的重复下载,避免了带宽浪费。在知识层片段的被删除时刻将其删除,也减少知识层片段对客户端本地存储空间的占用。
本发明的说明书、权利要求书以及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或者单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或者单元,或可选地还包括对于这些过程、方法、系统、产品或设备固有的其他步骤或单元。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种码流数据的处理方法,其特征在于,包括:
客户端获取目标知识层片段的管理数据,所述目标知识层片段为码流中包含的至少一个知识层片段中的一个,所述目标知识层片段被所述码流中包含的至少两个不连续的序列层片段依赖,所述管理数据用于确定预设有效时间;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间,其中,所述至少两个不连续的序列层片段在所述预设有效时间内被解码;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻;
所述客户端在所述目标知识层片段的被删除时刻删除所述目标知识层片段。
2.如权利要求1所述的方法,其特征在于,所述目标知识层片段的管理数据为所述码流的初始化片段或者所述码流的媒体表达描述MPD;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间包括:
所述客户端获取所述初始化片段中携带的所述目标知识层片段的有效持续时间,或者所述MPD中描述的所述目标知识层片段的有效持续时间,作为所述目标知识层片段的预设有效时间L;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻包括:
所述客户端获取所述目标知识层片段被目标序列层片段依赖的被依赖时刻T1,所述目标序列层片段为所述至少两个不连续的序列层片段中的第一个;
计算T2,其中,T2=T1+L,并将所述T2确定为所述目标知识层片段的被删除时刻。
3.如权利要求1所述的方法,其特征在于,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间包括:
所述客户端获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的起始有效时刻T3和所述目标知识层片段的有效持续时间L1,所述T3和所述L1作为所述目标知识层片段的预设有效时间;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻包括:
所述客户端计算T4,其中,T4=T3+L1,并将所述T4确定为所述知识层片段的被删除时刻。
4.如权利要求1所述的方法,其特征在于,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述客户端解析所述管理数据,获取所述目标知识层片段的预设有效时间包括:
所述客户端获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的失效时刻T5,所述T5作为所述目标知识层片段的预设有效时间的终止时刻;
所述客户端根据所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻包括:
所述客户端将所述T5确定为所述知识层片段的被删除时刻。
5.如权利要求4所述的方法,其特征在于,所述至少两个不连续的序列层片段在所述T5之前被解码。
6.一种码流数据的处理装置,其特征在于,包括:
获取单元,用于获取目标知识层片段的管理数据,所述目标知识层片段为码流中包含的至少一个知识层片段中的一个,所述目标知识层片段被所述码流中包含的至少两个不连续的序列层片段依赖,所述管理数据用于确定预设有效时间;
解析单元,用于解析所述获取单元获取的所述管理数据,获取所述目标知识层片段的预设有效时间,其中,所述至少两个不连续的序列层片段在所述预设有效时间内被解码;
确定单元,用于根据所述解析单元获取的所述目标知识层片段的预设有效时间确定所述目标知识层片段的被删除时刻;
删除单元,用于在所述确定单元确定的所述目标知识层片段的被删除时刻删除所述目标知识层片段。
7.如权利要求6所述的处理装置,其特征在于,所述目标知识层片段的管理数据为所述码流的初始化片段或者所述码流的媒体表达描述MPD;
所述解析单元具体用于:
解析所述获取单元获取的所述目标知识层片段的管理数据,获取所述初始化片段中携带的所述目标知识层片段的有效持续时间,或者所述MPD中描述的所述目标知识层片段的有效持续时间,作为所述目标知识层片段的预设有效时间L;
所述确定单元具体用于:
获取所述目标知识层片段被目标序列层片段依赖的被依赖时刻T1,所述目标序列层片段为所述至少两个不连续的序列层片段中的第一个;
结合所述解析单元获取的所述L计算T2,其中,T2=T1+L,并将所述T2确定为所述目标知识层片段的被删除时刻。
8.如权利要求6所述的处理装置,其特征在于,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述解析单元具体用于:
解析所述获取单元获取的所述目标知识层片段的管理数据,获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的起始有效时刻T3和所述目标知识层片段的有效持续时间L1,所述T3和所述L1作为所述目标知识层片段的预设有效时间;
所述确定单元具体用于:
根据所述解析单元获取的所述T3和所述L1计算T4,其中,T4=T3+L1,并将所述T4确定为所述知识层片段的被删除时刻。
9.如权利要求6所述的处理装置,其特征在于,所述目标知识层片段的管理数据为所述目标知识层片段的片段信息;
所述解析单元具体用于:
解析所述获取单元获取的所述目标知识层片段的管理数据,获取所述目标知识层片段的片段信息中携带的所述目标知识层片段的失效时刻T5,所述T5作为所述目标知识层片段的预设有效时间的终止时刻;
所述确定单元具体用于:
将所述解析单元获取的所述T5确定为所述知识层片段的被删除时刻。
10.如权利要求9所述的处理装置,其特征在于,所述至少两个不连续的序列层片段在所述解析单元获取的所述T5之前被解码。
CN201610567461.6A 2016-07-18 2016-07-18 一种码流数据的处理方法及装置 Active CN107634928B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610567461.6A CN107634928B (zh) 2016-07-18 2016-07-18 一种码流数据的处理方法及装置
PCT/CN2017/073623 WO2018014545A1 (zh) 2016-07-18 2017-02-15 一种码流数据的处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610567461.6A CN107634928B (zh) 2016-07-18 2016-07-18 一种码流数据的处理方法及装置

Publications (2)

Publication Number Publication Date
CN107634928A true CN107634928A (zh) 2018-01-26
CN107634928B CN107634928B (zh) 2020-10-23

Family

ID=60991728

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610567461.6A Active CN107634928B (zh) 2016-07-18 2016-07-18 一种码流数据的处理方法及装置

Country Status (2)

Country Link
CN (1) CN107634928B (zh)
WO (1) WO2018014545A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020043003A1 (zh) * 2018-08-29 2020-03-05 浙江大学 处理传输媒体数据和指定参考图像的方法和装置
CN110876083A (zh) * 2018-08-29 2020-03-10 浙江大学 指定参考图像的方法及装置及处理参考图像请求的方法及装置
WO2020156054A1 (zh) * 2019-02-03 2020-08-06 华为技术有限公司 视频解码方法、视频编码方法、装置、设备及存储介质
CN115396691A (zh) * 2021-05-21 2022-11-25 北京金山云网络技术有限公司 一种数据流处理方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553071B1 (en) * 1999-03-09 2003-04-22 Lg Electronics Inc. Motion compensation coding apparatus using wavelet transformation and method thereof
CN101529914A (zh) * 2006-10-24 2009-09-09 汤姆逊许可证公司 用于多视角视频编码的图像管理
CN102215116A (zh) * 2010-04-02 2011-10-12 三星电子株式会社 在数字广播系统中提供时间偏移服务的方法、设备及系统
CN102577307A (zh) * 2009-09-22 2012-07-11 高通股份有限公司 使用url模板和构造规则的增强型块请求流送
CN104768011A (zh) * 2015-03-31 2015-07-08 浙江大学 图像编解码方法和相关装置
CN104902279A (zh) * 2015-05-25 2015-09-09 浙江大学 一种视频处理方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150264404A1 (en) * 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
CN104053012B (zh) * 2014-05-28 2017-08-29 北京大学深圳研究生院 一种基于字典库的视频编解码方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553071B1 (en) * 1999-03-09 2003-04-22 Lg Electronics Inc. Motion compensation coding apparatus using wavelet transformation and method thereof
CN101529914A (zh) * 2006-10-24 2009-09-09 汤姆逊许可证公司 用于多视角视频编码的图像管理
CN102577307A (zh) * 2009-09-22 2012-07-11 高通股份有限公司 使用url模板和构造规则的增强型块请求流送
CN102215116A (zh) * 2010-04-02 2011-10-12 三星电子株式会社 在数字广播系统中提供时间偏移服务的方法、设备及系统
CN104768011A (zh) * 2015-03-31 2015-07-08 浙江大学 图像编解码方法和相关装置
CN104902279A (zh) * 2015-05-25 2015-09-09 浙江大学 一种视频处理方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020043003A1 (zh) * 2018-08-29 2020-03-05 浙江大学 处理传输媒体数据和指定参考图像的方法和装置
CN110876083A (zh) * 2018-08-29 2020-03-10 浙江大学 指定参考图像的方法及装置及处理参考图像请求的方法及装置
CN110876083B (zh) * 2018-08-29 2021-09-21 浙江大学 指定参考图像的方法及装置及处理参考图像请求的方法及装置
US11716505B2 (en) 2018-08-29 2023-08-01 Zhejiang University Methods and apparatus for media data processing and transmitting and reference picture specifying
WO2020156054A1 (zh) * 2019-02-03 2020-08-06 华为技术有限公司 视频解码方法、视频编码方法、装置、设备及存储介质
CN115396691A (zh) * 2021-05-21 2022-11-25 北京金山云网络技术有限公司 一种数据流处理方法、装置及电子设备

Also Published As

Publication number Publication date
CN107634928B (zh) 2020-10-23
WO2018014545A1 (zh) 2018-01-25

Similar Documents

Publication Publication Date Title
CN102055717B (zh) 快速播放的方法、终端及服务器
CN101247511B (zh) Iptv内容相关信息展现方法及系统
CN109565620A (zh) 低延迟http实时流传输
CN107634928A (zh) 一种码流数据的处理方法及装置
US10360694B2 (en) Methods and devices for image loading and methods and devices for video playback
CN103650482B (zh) 发送和接收广播服务的方法及其接收装置
CN109982154A (zh) 用于再现空间区域的图像的方法、设备及存储介质
CN107547933B (zh) 播放画面生成方法、装置及系统
CN101919244A (zh) 用于播放部分可用多媒体内容的系统和方法
CN110545456B (zh) 媒体文件的同步播放方法、装置及存储介质
CN101415069A (zh) 一种服务器及其在线播放视频的发送方法
CN104244079A (zh) 一种视频下载方法及装置
CN110267117B (zh) 一种流媒体数据的处理方法及流媒体处理服务器
CN104284238A (zh) 一种基于二维码的视频播放方法和装置
WO2017140165A1 (zh) 一种存储资源的方法、装置及电子设备
CN103686454A (zh) 一种信息获取方法和装置
CN103491427A (zh) 一种视频的处理方法和装置
CN112995698A (zh) 一种视频播放方法、客户端、服务平台及智能会议系统
TWI536817B (zh) 網路互動協定資料記錄的方法以及裝置
CN110545469A (zh) 非流媒体文件的网页播放方法、装置及存储介质
CN111346377A (zh) 用于网络游戏的记录、回放方法及装置、服务器、终端
US11575951B2 (en) Method, device, and computer program for signaling available portions of encapsulated media content
WO2018014546A1 (zh) 一种视频数据的处理方法及装置
CN108616768B (zh) 多媒体资源的同步播放方法、装置、存储位置及电子装置
CN113099270B (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