基于可伸缩视频编码的动态丢包控制方法、系统及装置的制作方法

文档序号:7898380阅读:186来源:国知局
专利名称:基于可伸缩视频编码的动态丢包控制方法、系统及装置的制作方法
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于可伸缩视频编码(SVC)的动态丢包控制方法、系统及装置。
背景技术
随着视频编码技术的发展以及用户要求的提高,用户不仅对视频编码的压缩效率提出了很高的要求,并且还要求视频编码结果可以满足不同的质量要求。因此为了使对视频资源的编码结果可以满足不同的质量要求,在现有技术中,根据码率、帧率以及分辨率的不同要求,分别编码多次,达到满足不同质量要求的目的。但是上述实现方式中,由于需要对视频资源编码多次,会生成多个不同的编码文件。因此该实现方式需要浪费较大的存储空间,并且由于需要分别编码,因此编码的效率较低。为了解决上述问题可以采用SVC技术对视频资源进行编码,SVC可以提供时间、质量和空间三个层面的可伸缩性。基于SVC对视频资源进行一次编码,可以根据用户的不同需求,根据三个层面的可伸缩性对编码文件进行提取,即可满足用户的不同需求。例如当视频资源传输的网络中的带宽较低时,就可以只传输编码后的视频资源的基本层的数据,即丢弃增强层的数据包;当要求显示的视频资源的分辨率较高时,则可以将部分增强层的数据包一起传输过去并进行解码,从而满足分辨率的要求。但是目前虽然提出了 SVC的概念,并且基于SVC也提供了相应的丢包可能性,但是并没有提供与实际的传输过程及用户的实时需求相匹配的丢包策略以及丢包机制,因此该 SVC并不能在传输过程中进行实际的丢包控制。

发明内容
有鉴于此,本发明实施例提供一种基于SVC的动态丢包控制方法、系统及装置,用以解决现有技术中SVC不同的实际传输过程中进行丢包控制的问题。本发明实施例提供的一种基于SVC的动态丢包控制方法,包括服务器接收客户端发送的控制信令,其中所述控制信令为所述客户端根据对自身播放的视频资源的质量的监控结果生成,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;服务器解析获取所述参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值;根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的 NalType信息的值,判断对该数据包是否进行丢包处理。本发明实施例提供的一种基于SVC的动态丢包控制系统,包括客户端,用于根据对自身播放的视频资源的质量的监控结果生成控制信令,并将所述控制信令发送到服务器,其中,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;服务器,用于接收所述控制信令,解析获得该控制信令中携带的对采用SVC的视频资源的相应层进行调整的参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值,根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。本发明实施例提供的一种基于SVC的动态丢包控制装置,包括接收模块,用于接收客户端发送的控制信令,其中所述控制信令为所述客户端根据对自身播放的视频资源的质量的监控结果生成,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;确定模块,用于解析获取所述参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值;丢包处理模块,用于根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。本发明实施例提供了一种基于SVC的动态丢包控制方法、系统及装置,方法中通过客户端检测播放的视频资源的质量,并向服务器发送对质量进行控制的控制命令,服务器通过控制命令及待传输的数据包的NalType信息值,判断对该数据包是否进行丢包处理,本发明实施例中由于客户端通过检测播放的视频资源的质量,生成对数据包进行丢包处理的控制命令,因此服务器可以实时根据客户端的播放状态进行动态丢包处理。


图1为本发明实施例提供的基于SVC的动态丢包控制流程图;图2为本发明实施例提供的基于SVC的动态丢包控制系统的结构示意图;图3为本发明实施例提供的当该数据包的NalType信息值为14时,对应的动态丢包控制过程;图4为本发明实施例提供的当该数据包的NalType信息值为1或5时,对应的动态丢包控制过程;图5为本发明实施例提供的当该数据包的NalType信息值为20时,对应的动态丢包控制过程;图6为本发明实施例提供的一种基于可伸缩视频编码SVC的动态丢包控制装置的结构示意图。
具体实施例方式本发明实施例为了在传输过程中,根据数据包的不同进行相应的丢包控制,提供了一种基于SVC的动态丢包控制方法,在该方法中,客户端根据实际的传输需求,生成包含调整参数的控制信令,将该控制信令发送到服务器端,服务器根据该控制信令,对接收到的每个数据包,根据该数据包的NalType信息的值采用相应的丢包控制策略。下面结合说明书附图,对本发明实施例进行详细说明。图1为本发明实施例提供的基于SVC的动态丢包控制过程,在该过程中包括以下步骤SlOl 客户端根据对视频资源的播放质量的监控结果,生成控制信令,其中该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息。S102 客户端将生成的该控制信令发送到服务器。S103 服务器接收该控制信令,解析获得该控制信令中携带的对采用SVC的视频资源的相应层进行调整的参数信息。S104:根据解析获取的所述参数信息,及保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值。S105:服务器根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。在本发明实施例中为了实现基于SVC的动态丢包控制方法,对实时流协议(Real Time Streaming Protocol, RTSP)的一个域进行了扩展,通过该扩展到的域实现客户端与服务器之间的信息传输,并且当服务器接收到客户端发送的信息后,根据该信息进行待发送的相应数据包进行丢包控制。图2为本发明实施例提供的基于SVC的动态丢包控制系统的结构示意图,在该系统中包括客户端21和服务器22。其中,客户端21,用于根据对自身播放的视频资源的质量的监控结果生成控制信令,并将所述控制信令发送到服务器22,其中,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;服务器22,用于接收所述控制信令,解析获得该控制信令中携带的对采用SVC的视频资源的相应层进行调整的参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值,根据确定的所述相应层的截断阈值, 及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。该客户端21中包括控制信令生成模块,用于根据对自身播放的视频资源的播放质量的监控结果生成控制信令,其中,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;发送模块,用于将控制信令生成模块生成的控制信令发送到服务器。在本发明实施例中,客户端的控制信令生成模块在根据对自身播放的视频资源的质量的监控结果,生成控制信令时,可以根据用户向该客户端发送的质量监控结果,确定自身播放的视频资源的质量的监控结果,从而生成控制信令,当然也可以根据对自身播放的视频资源的质量的监控结果,从而生成控制信令。在客户端根据对自身播放的视频资源的质量的监控结果,生成控制信令时,由于客户端缓冲区内该播放的视频资源的占用率,可以反映该视频资源的播放质量。即当该缓冲区内该播放的视频资源的数据信息的占有率较大时,说明服务器与客户端之间的传输质量较好,为了给用户提供清晰的视频资源,可以适当提高视频资源的播放质量,当该缓冲区内的该播放的视频资源的数据信息的占用率较低时,说明当前服务器与客户端之间的传输质量较差,为了保证用户观赏的流畅性,需要适当降低视频资源的播放质量。因此在本发明实施例中,客户端可以检测自身缓冲区该播放的视频资源的数据信
7息的占有率,从而确定对采用SVC的视频资源的相应层进行调整的参数信息,根据确定的该参数信息,生成携带该参数信息的控制信令。例如当缓冲区的占用率低于设定的第一阈值区间时,则确定该播放的采用SVC的视频资源的质量层阈值降低,或空间层或时间层阈值降低,并确定对该采用SVC的视频资源的质量层阈值降低一个单位,因此生成控制信令, 该控制信令中携带对该采用SVC的视频资源的质量层阈值降低一个单位的参数信息。或者客户端也可以根据对网络当前的传输速率,根据该传输速率对应的阈值区间,生成对该播放的采用SVC的视频资源的相应层进行调整的参数信息,根据确定的该参数信息,生成携带该参数信息的控制信令。通过客户端具体实现控制信令生成时,可以通过应用程序接口直接对客户端的网络消息处理模块(Source Filter)进行操作,从而实现控制信令的生成。在本发明实施例中由于对RSTP的一个域进行了扩展,该扩展后的域可以在不影响现有RSTP视频播放状态的同时,通过该域携带的信息,实现服务器端对该视频资源的传输质量的控制。具体的在本发明实施例中客户端通过发送模块进行控制信令的发送时,可以在 RSTP的播放(PLAY)信息中扩展一个参数域,例如该参数域可以为X-Send-Qid。通过对该参数域的编码可以实现对控制信令的嵌入,并且在该控制信令中携带有对采用SVC的视频资源的相应层的进行调整的参数信息。当该扩展后的参数域嵌入了控制信令后,即可按照传统RTSP中参数的发送方式进行发送。由于客户端可以根据自身播放的视频资源的质量的监控结果,实时生成携带对采用SVC的视频资源的相应层进行调整的参数信息的控制信令,当该控制信令传输到服务器端时,服务器可以根据实时接收的该控制信令携带的参数信息,对待传输的视频资源的每个数据包进行相应的丢包控制。当服务器接收到客户端发送的控制信令后,获取该控制信令中携带的对采用SVC 的视频资源的相应层进行调整的参数信息,根据该参数信息,及待传输的该视频资源的数据包的NalType信息的值,对采用SVC的视频资源的相应数据包进行是否丢包的判断处理。 即当服务器接收到包含该χ-knd-Qid参数域的PLAY信息后,获取该参数域中嵌入的控制信令,提取该控制信令中携带的对采用SVC的视频资源的相应层进行调整的参数信息,根据该参数信息,及待传输的该视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。服务器获取了该控制信令中携带的对采用SVC的视频资源的相应层进行调整的参数信息后,由于该参数的信息标识对SVC的相应层阈值进行调整的信息。因此当该服务器获取了该参数信息后,根据该参数信息对传输的采用SVC后的视频资源的空间层、时间层和质量层的备用截断阈值进行调整。具体包括当接收到该参数信息后,根据保存的上一时刻的视频资源的相应层的截断阈值,及该控制信令中对视频资源的相应层进行调整的参数信息,确定当前时刻视频资源的相应层的截断阈值。采用当前时刻确定的视频资源的相应层的截断阈值,对上一时刻保存的视频资源的相应层的截断阈值进行更新。例如在上一个时刻由于视频资源的播放质量比较高,因此对该视频资源的空间层、质量层和时间层的截断阈值都比较高,例如都为最大值3,该视频资源的空间层、质量层和时间层的截断阈值都保存在服务器中。而此刻,由于客户端缓冲区内该视频资源的占用率下降,并且根据该占用率对应的阈值区间,确定对该采用SVC的视频资源的时间层、空间层及质量层分别向下调整一个单位。客户端将该确定的对该采用SVC的视频资源的时间层、空间层及质量层的备用截断阈值分别向下调整一个单位的参数信息携带在控制信令中,发送到服务器。接收到该控制信令的服务器,解析获取该控制信令中携带的参数信息,确定此时刻该视频资源的时间层、空间层和质量层的截断阈值向下调整一个单位,即此时,服务器确定该视频资源的时间层、空间层和质量层的备用截断阈值都为2。服务器采用该确定的此时刻的该视频资源的时间层、空间层和质量层的备用截断阈值对保存对应时间层、空间层和质量层的备用截断阈值进行更新,并结合每个待传输的数据包的NalType信息的值,判断对每个该待传输的数据包是否进行丢包处理。针对进行传输的视频资源,由于在该视频资源的每个数据帧内包括多个数据包, 每个数据包都有归属于自身的NalType信息,并且视频资源的数据包中包含的NalType信息的值一般为1,5,14,20二4,28。因此在本发明实施例中可以根据待传输的每个数据包包含的NalType信息的值,以及本地保存的备用截断阈值信息,判断对每个待传输的数据包是否进行丢包处理。并且,在本发明实施例中由于客户端会根据自身实际播放的视频资源的质量情况,实时生成携带参数信息的控制信令,因此当服务器当接收到该参数信息后,在该时刻确定视频资源的时间层、空间层和质量层对应的备用截断阈值,并采用该备用截断阈值更新本地保存的上一时刻的相应的备用截断阈值。当下一个时刻存在待传输的新的数据包时, 即采用该更新后的备用截断阈值,及该待传输的数据包的NalType信息的值,判断对该数据包是否进行丢包处理。当服务器保存了该时刻对视频资源的空间层、质量层和时间层的备用截断阈值后,根据待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。由于在视频资源包括多个数据帧,每个数据帧中包括多个数据包,并且在同一数据帧中每个数据包都包含相应的NalType信息的值。并且每个数据包中包含其时间层信息,以及空间层信息,即可以认为每个数据包都存在其时间层标记和空间层标记。主要是因为采用SVC的视频资源,其在空间域、时间域以及质量域上具有可扩展性,因此对于视频资源其在空间域、时间域以及质量域中包括多个层,不同的数据包对应不同的空间层、时间层和质量层,而数据包对应的空间层和时间层即可认为该数据包的空间层标记和时间层标记。并且服务器在对每个待传输的数据包进行传输时,可以获取到数据包中存在的时间层标记以及空间层标记。当此时刻带传输的视频资源的数据包的NalType信息的值为14时,即该待传输的视频资源的数据包为该数据帧的第一数据包时,服务器采用本地保存的视频资源的空间层、质量层和时间层对应的备用截断阈值,替换该视频资源的空间层、质量层和时间层对应的截断阈值。将截断标记设置为假,并重新确定是否将截断标记设置为真。其中截断标记的确定,应根据上一时刻确定的时间层截断阈值和空间层截断阈值,以及本数据包的时间层标记和空间层标记进行确定。例如当上一时刻确定的该时间层对应的截断阈值为2,该数据包的时间层标记为3,则置截断标记为真。对空间层的判断与上述对时间层的判断过程类似,在这里就不一一赘述。服务器检测当前数据帧中的每个数据包的空间层标记以及时间层标记,判断对该数据包是否进行丢包处理之前,需要当前的截断标记,具体包括根据该数据包的空间层标记、时间层标记,及确定的相应层的截断阈值,确定截断标记。具体包括当当前数据帧中的待传输的数据包不为14号数据包时,服务器检测当前数据包的空间层标记是否等于于空间层对应的截断阈值,且当前数据包的质量层标记是否等于质量层截断阈值,当同时满足时,写入帧结束标记,并将截断标记设置为真。因为当写入帧结束标记时,则本帧当中,所有的后续包均为不需要的增强层包,因此可知截断标记表明的是一种服务器的状态,表示将丢弃本帧中,当前包之后的所有数据包。因此需要截断标记设置为真。当服务器开始处理每一个非14号包时,识别截断标记是否为真,当截断标记为真时,服务器将该数据包进行丢包处理。而对于14号包,识别截断标记的步骤发生在确定截断标记之后。之后对该数据包之后的数据包进行后续处理。直到将该数据帧内的每个数据包都进行了是否丢包的判断处理为止。图3为本发明实施例提供的当该数据包的NalType信息值为14时,对应的动态丢包控制过程,在该过程中包括以下步骤S301 服务器采用本地保存的视频资源的空间层、质量层和时间层对应的备用截断阈值,替换该视频资源的空间层、质量层和时间层对应的截断阈值。S302 服务器将截断标记设置为假。S303 服务器判断该数据包的空间层标记是否不大于空间层对应的截断阈值,当判断结果为是时,进行步骤S305,否则,进行步骤S304。S304:服务器将截断标记设置为真,并在识别到截断标记为真时,将该数据包进行丢包处理。之后服务器识别下一个待传输的数据包的NalType信息值,并进行相应的处理。S305:服务器针对该待传输的数据包,检测该数据包的时间层标记是否小于等于时间层对应的截断阈值,当判断结果为是时,进行步骤S306,否则,进行步骤S307。S306 服务器识别下一个待传输的数据包的NalType信息值,并进行相应的处理。S307:服务器将截断标记设置为真,并在识别到截断标记为真时,将该数据包进行丢包处理。之后服务器识别下一个待传输的数据包的NalType信息值,并进行相应的处理。当该服务器中待传输的视频资源的数据包的NalType信息的值为1或5时,根据截断标记进行处理。当截断标记为真时,对该数据包进行丢包处理。否则,则判断质量层对应的截断阈值是否为0,并且判断当前的空间层对应的截断阈值是否等于该数据包的空间层标记,当判断结果都为是时,则在该当前数据包中写入帧结束标记,并置截断标记为真。 此处提到的当前包的时间层空间层质量层标记,由上一个14号包确定。图4为本发明实施例提供的当该数据包的NalType信息值为1或5时,对应的动态丢包控制过程,该过程包括以下步骤S401 服务器判断当前截断标记是否为真,若为真,则进行步骤S402。否则,进行步骤S403。S402 服务器将该待传输的数据包进行丢包处理。之后服务器识别下一个待传输的数据包的NalType信息值,并进行相应的处理。S403 判断当前质量层截断阈值是否为0,并且判断当前的空间层对应的截断阈值是否等于该数据包的空间层标记,若均为真,则写入帧结束标记,并置截断标记为真。S404 服务器识别下一个待传输的数据包的NalType信息值,并进行相应的处理。当该服务器中待传输的数据包的NalType信息的值为14时,将截断标记设置为假,检测该数据包的空间层标记以及时间层标记,确定该数据包是否需要进行丢包处理。具体过程包括服务器检测当前待传输的数据包的空间层标记是否不大于空间层对应的截断阈值,当该数据包的空间层标记不大于空间层对应的截断阈值时,对该数据包不进行任何处理,当该数据包的空间层标记大于空间层对应的截断阈值时,则截断标记设置为真。当服务器识别到截断标记为真时,对该数据包进行丢包处理,之后服务器对识别该数据包之后的数据包的NalType信息的值,并进行相应的处理。否则,服务器检测该数据包时间层标记是否小于等于时间层对应的截断阈值,当该数据包的时间层标记不大于时间层对应的截断阈值时,在该数据包不进行任何处理,当该数据包的时间层标记大于时间层对应的截断阈值时,则将截断标记设置为真。当服务器识别到截断标记设置为真时,对该数据包进行丢包处理,之后服务器对识别该数据包之后的数据包的NalType信息的值,并进行相应的处理。因为对于14号数据包而言,它的一个作用其实是给随后的1或5号数据包标明空间层、时间层、质量层标记。因此如果在14号包判断应该写入帧结束标记,那么应该在数据包之后的数据包,即1号或5号数据包中写入该帧结束标记。图5为本发明实施例提供的当该数据包的NalType信息值为20时,对应的动态丢包控制过程,该过程包括以下步骤S501 服务器检测当前截断标记是否为真,当该截断标记为真时,将该数据包进行丢包处理,否则,进行步骤S502。S502 判断该数据包的质量层标记是否等于质量层对应的截断阈值,并且空间层对应的截断阈值是否等于当前数据包的空间层标记,当判断结果都为是时,进行步骤S503, 否则,进行步骤S504。S503 服务器在该数据包中写入帧结束标记,并置截断标记为真。然后进行步骤 S504。S504 服务器识别该数据包之后的数据包的NalType信息的值,并进行相应的处理。当服务器中待传输的视频资源数据包的NalType信息的值为M时,说明该数据包为组合包,即在该当前数据包中包含多个数据子包,针对每个数据子包,检测每个数据子包的NalType信息的值,并根据该NalType信息的值进行相应的操作,直到对该数据包中的每个数据子包检测完毕。M号包是否写入帧结束标记由其中包含的最后一个子包确定。当服务器待传输的视频资源数据包的NalType信息的值为观时,说明该数据包为拆分包,在该数据包序列中包含的数据子包的NalType信息的值相同,因为在数据包中的第一个数据子包中包含NalType信息的值,确定对应的上述相应的执行过程,当确定了对该数据子包的相应处理过程后,例如对该数据子包就行丢包处理,则将该数据包中的每个数据子包进行丢包处理。当该相应的操作为对该数据子包写入帧结束标记时,则在该数据包的最后一个数据子包中写入帧结束标记。图6为本发明实施例提供的一种基于可伸缩视频编码SVC的动态丢包控制装置的结构示意图,所述装置包括接收模块61,用于接收客户端发送的控制信令,其中所述控制信令为所述客户端根据对自身播放的视频资源的质量的监控结果生成,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;确定模块62,用于解析获取所述参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值;丢包处理模块63,用于根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。所述装置还包括更新模块64,用于采用确定的当前时刻视频资源的相应层的截断阈值,对保存的上一时刻的视频资源的相应层的截断阈值进行更新。所述丢包处理模块63具体用于,当该待传输的数据包的NalType信息值为14时, 将截断标记设置为假,根据待传输数据包对应的空间层标记,及确定的空间层截断阈值,确定是否将截断标记设置为真,当将截断标记置为真时,对该数据包进行丢包处理;当将截断标记置为假时,根据该待传输数据包对应的时间层标记,以及确定的时间层截断阈值,确定是否将截断标记设置为真,当将截断标记设置为真时,对该数据包进行丢包处理。所述丢包处理模块63具体用于,当该待传输的数据包的NalType信息值为1或5 时,判断截断标记是否为真,当确定截断标记为真时,对该数据包进行丢包处理。所述丢包处理模块63还用于,当确定截断标记为假,待传输的数据包的空间层标记等于空间层截断阈值,并且质量层截断阈值为0时,写入帧结束标记,并置截断标记为直
ο所述丢包处理模块63具体用于,当该待传输的数据包的NalType信息值为20时, 检测当前截断标识是否为真,当确定当前的截断标记为真时,对该数据包进行丢包处理。所述丢包处理模块63还用于,当该待传输的数据包的空间层标记等于空间层对应的截断阈值,该数据包质量层标记等于质量层对应的截断阈值时,写入帧结束标记,并置截断标记为真。所述丢包处理模块63具体用于检测当前数据帧中的14号数据包的时间层标记是否大于时间层对应的截断阈值,当该数据包的时间层标记大于时间层对应的截断阈值时,设置截断标记为真。所述丢包处理模块63具体用于,检测当前数据帧中的14号数据包的空间层标记是否大于空间层对应的截断阈值,当该数据包的空间层标记大于空间层对应的截断阈值时,设置截断标记为真。本发明实施例提供了一种基于SVC的动态丢包控制方法、系统及装置,方法中通过客户端检测播放的视频资源的质量,并向服务器发送对质量进行控制的控制命令,服务器通过控制命令及待传输的数据包的NalType信息值,判断对该数据包是否进行丢包处理,本发明实施例中由于客户端通过检测播放的视频资源的质量,生成对数据包进行丢包处理的控制命令,因此服务器可以实时根据客户端的播放状态进行动态丢包处理。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种基于可伸缩视频编码SVC的动态丢包控制方法,其特征在于,包括服务器接收客户端发送的控制信令,其中所述控制信令为所述客户端根据对自身播放的视频资源的质量的监控结果生成,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;服务器解析获取所述参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值;根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。
2.如权利要求1所述的方法,其特征在于,扩展实时流协议的一个域,通过扩展的域传输所述控制信令。
3.如权利要求2所述的方法,其特征在于,所述方法还包括采用确定的当前时刻视频资源的相应层的截断阈值,对保存的上一时刻的视频资源的相应层的截断阈值进行更新。
4.如权利要求3所述的方法,其特征在于,当该待传输的数据包的NalType信息值为 14时,判断对该数据包是否进行丢包处理包括将当前截断标记设置为假;根据待传输数据包对应的空间层,及确定的空间层截断阈值,确定是否置截断标记为真;当将截断标记置为真时,对该数据包进行丢包处理;当将截断标记置为假时,根据该待传输数据包对应的时间层,以及确定的时间层截断阈值,确定是否将截断标记设置为真;当将截断标记设置为真时,对该数据包进行丢包处理。
5.如权利要求3所述的方法,其特征在于,当该待传输的数据包的NalType信息值为1 或5时,判断对该数据包是否进行丢包处理包括判断截断标记是否为真;当确定截断标记为真时,对该数据包进行丢包处理。
6.如权利要求5所述的方法,其特征在于,所述方法还包括当确定截断标记为假,待传输的数据包的空间层标记等于空间层截断阈值,并且质量层截断阈值为0时,写入帧结束标记,并置截断标记为真。
7.如权利要求3所述的方法,其特征在于,当该待传输的数据包的NalType信息值为 20时,判断对该数据包是否进行丢包处理包括检测当前的截断标记是否为真;当确定当前的截断标记为真时,对该数据包进行丢包处理。
8.如权利要求7所述的方法,其特征在于,所述方法还包括当该待传输的数据包的空间层标记等于空间层对应的截断阈值,该数据包质量层标记等于质量层对应的截断阈值时,写入帧结束标记,并置截断标记为真。
9.如权利要求4、5或7所述的方法,其特征在于,截断标记的确定包括检测当前数据帧中的14号数据包的时间层标记是否大于时间层对应的截断阈值;当该数据包的时间层标记大于时间层对应的截断阈值时,设置截断标记为真。
10.如权利要求9所述的方法,其特征在于,截断标记的确定包括检测当前数据帧中的14号数据包的空间层标记是否大于空间层对应的截断阈值; 当该数据包的空间层标记大于空间层对应的截断阈值时,设置截断标记为真。
11.一种基于可伸缩视频编码SVC的动态丢包控制系统,其特征在于,所述系统包括 客户端,用于根据对自身播放的视频资源的质量的监控结果生成控制信令,并将所述控制信令发送到服务器,其中,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;服务器,用于接收所述控制信令,解析获得该控制信令中携带的对采用SVC的视频资源的相应层进行调整的参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值,根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。
12.一种基于可伸缩视频编码SVC的动态丢包控制装置,其特征在于,所述装置包括 接收模块,用于接收客户端发送的控制信令,其中所述控制信令为所述客户端根据对自身播放的视频资源的质量的监控结果生成,该控制信令中携带对采用SVC的视频资源的相应层进行调整的参数信息;确定模块,用于解析获取所述参数信息,并根据保存的上一时刻的视频资源的相应层的截断阈值,确定当前时刻视频资源的相应层的截断阈值;丢包处理模块,用于根据确定的所述相应层的截断阈值,及待传输的视频资源的每个数据包的NalType信息的值,判断对该数据包是否进行丢包处理。
13.如权利要求12所述的装置,其特征在于,所述装置还包括更新模块,用于采用确定的当前时刻视频资源的相应层的截断阈值,对保存的上一时刻的视频资源的相应层的截断阈值进行更新。
14.如权利要求13所述的装置,其特征在于,所述丢包处理模块具体用于,当该待传输的数据包的NalType信息值为14时,将截断标记设置为假,根据待传输数据包对应的空间层标记,及确定的空间层截断阈值,确定是否将截断标记设置为真,当将截断标记置为真时,对该数据包进行丢包处理;当将截断标记置为假时,根据该待传输数据包对应的时间层标记,以及确定的时间层截断阈值,确定是否将截断标记设置为真,当将截断标记设置为真时,对该数据包进行丢包处理。
15.如权利要求13所述的装置,其特征在于,所述丢包处理模块具体用于,当该待传输的数据包的NalType信息值为1或5时,判断截断标记是否为真,当确定截断标记为真时, 对该数据包进行丢包处理。
16.如权利要求15所述的装置,其特征在于,所述丢包处理模块还用于,当确定截断标记为假,待传输的数据包的空间层标记等于空间层截断阈值,并且质量层截断阈值为0时, 写入帧结束标记,并置截断标记为真。
17.如权利要求13所述的装置,其特征在于,所述丢包处理模块具体用于,当该待传输的数据包的NalType信息值为20时,检测当前截断标识是否为真,当确定当前的截断标记为真时,对该数据包进行丢包处理。
18.如权利要求17所述的装置,其特征在于,所述丢包处理模块还用于,当该待传输的数据包的空间层标记等于空间层对应的截断阈值,该数据包质量层标记等于质量层对应的截断阈值时,写入帧结束标记,并置截断标记为真。
19.如权利要求14、15或17所述的装置,其特征在于,所述丢包处理模块具体用于 检测当前数据帧中的14号数据包的时间层标记是否大于时间层对应的截断阈值,当该数据包的时间层标记大于时间层对应的截断阈值时,设置截断标记为真。
20.如权利要求19所述的装置,其特征在于,所述丢包处理模块具体用于,检测当前数据帧中的14号数据包的空间层标记是否大于空间层对应的截断阈值,当该数据包的空间层标记大于空间层对应的截断阈值时,设置截断标记为真。
全文摘要
本发明公开了一种基于SVC的动态丢包控制方法、系统及装置,用以解决现有技术中SVC不同的实际传输过程中进行丢包控制的问题。该方法通过客户端检测播放的视频资源的质量,并向服务器发送对质量进行控制的控制命令,服务器通过控制命令及待传输的数据包的NalType信息值,判断对该数据包是否进行丢包处理,本发明实施例中由于客户端通过检测播放的视频资源的质量,生成对数据包进行丢包处理的控制命令,因此服务器可以实时根据客户端的播放状态进行动态丢包处理。
文档编号H04N21/647GK102572420SQ20101061819
公开日2012年7月11日 申请日期2010年12月22日 优先权日2010年12月22日
发明者孙俊, 肖建国, 郭宗明, 颜乐驹 申请人:北京北大方正电子有限公司, 北京大学, 北大方正集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1