Embodiment
Hierarchical coding is meant and encodes video into a basic layer and several enhancement layers.Basic layer can independently be decoded, and is used to provide a basic still acceptable video quality; The decoding of enhancement layer generally depends on basic layer, and enhancement layer can provide than the better video quality of basic layer.Hierarchical coding mainly comprises following three types of hierarchical approaches:
(1) frame per second classification: basic layer uses original image, encodes with lower output frame rate, obtains lower fluency.Enhancement layer does not then carry out the image encoded frame to basic layer encodes, and on the basis of basic layer decoder image, improves its display frame rate.
(2) resolution classification: basic layer use encoded by the image that original image carries out sub-sampling gained low resolution, obtains lower resolution.Enhancement layer then carries out predictive coding by the original resolution image, on the basis of basic layer decoder image, improves its resolution.The coding of enhancement layer can with reference to the interpolation image of basic layer reconstructed image, also can be with reference to the motion vector of basic layer macro block, rebuild residual error coefficient.
(3) quality grading: basic layer uses original image, encodes with higher compression ratio (promptly bigger quantization step, lower encoded bandwidth), obtains lower definition; Enhancement layer then with reference to the reconstructed image of basic layer, is encoded with higher picture quality (being less quantization step, higher encoded bandwidth), on the basis of basic layer decoder image, improves its definition.
For the video communication scheme that adopts hierarchical coding, in order to reduce the data that need transmit when the video critical data refreshes, reduce the load that bandwidth is brought, the embodiment of the invention provides a kind of video method for refreshing, and is as shown in Figure 1, and said method comprises:
101, the video code flow receiving equipment sends a critical data solicitation message, in said critical data solicitation message, comprises the corresponding hierarchical information of being applied for of packet.
102, the video code flow transmitting apparatus in the embodiment of the invention is after receiving said critical data solicitation message; The critical data coding is carried out in the layering that the layering that layering that hierarchical information described in the video image is represented and needs are represented according to said hierarchical information is decoded, and other are not needed then not carry out the critical data coding according to the layering that layerings that said hierarchical information is represented are decoded.
103, the resulting critical data of will encoding sends to said video code flow receiving equipment, so that the video code flow receiving equipment carries out handled according to this critical data.
The embodiment of the invention also provides a kind of video refreshing apparatus, and is as shown in Figure 2, and said device comprises: receiving element 21, coding unit 22, transmitting element 23.
Wherein, receiving element 21 is used for the critical data solicitation message that receiver, video code stream receiving equipment sends, and comprises the corresponding hierarchical information of being applied for of packet in the said critical data solicitation message; Coding unit 22 is used for according to said hierarchical information; The critical data coding is carried out in the layering that the layering that layering that hierarchical information described in the video image is represented and needs are represented according to said hierarchical information is decoded, and other are not needed then not carry out the critical data coding according to the layering that layerings that said hierarchical information is represented are decoded; Transmitting element 23 is used for the resulting critical data of coding is sent to said video code flow receiving equipment, so that the video code flow receiving equipment carries out handled according to this critical data.
In order can accurately to encode to corresponding layering, coding unit described in the embodiment of the invention 22 also is used for obtaining the layering that said hierarchical information is represented from received critical data solicitation message.
Hierarchical information in the embodiment of the invention can be different according to concrete hierarchical coding mode difference; As: video image can carry out layering according to frame per second classification, resolution classification or quality grading, and its corresponding hierarchical information can be respectively: the layering of the layering of different frame per second, the layering of different resolution, different quality.
The critical data solicitation message that said receiving element 21 receives is: quick refresh command of the video in the multimedia control protocol or the quick refresh command of macro block group or the quick refresh command of macro block or macro block packet loss message or visual packet loss message or image be packet loss message in detail; Perhaps image packet loss message in the video communication feedback information agreement or macro block group packet loss message; Perhaps image packet loss message in the RTCP Real-time Transport Control Protocol or band packet loss message.
In order to carry above-mentioned critical data solicitation message, the embodiment of the invention can adopt multimedia control protocol or video communication feedback information agreement or RTCP Real-time Transport Control Protocol to carry, and specifically comprises following three kinds of implementations:
The first, carry said critical data solicitation message through the parameter of original message in multimedia control protocol or video communication feedback information agreement or the RTCP Real-time Transport Control Protocol being expanded the back.
The second, carry said critical data solicitation message through the reservation message in multimedia control protocol or video communication feedback information agreement or the RTCP Real-time Transport Control Protocol being expanded the back.
Three, through the said critical data solicitation message of message bearing in newly-increased multimedia control protocol or video communication feedback information agreement or the RTCP Real-time Transport Control Protocol.
The embodiment of the invention also provides a kind of video method for refreshing, and is as shown in Figure 5, comprising:
301, when needs request video code flow transmitting apparatus resends critical data; Generate the critical data solicitation message; Comprise the packet hierarchical information of being applied in the said critical data solicitation message, the hierarchical information here mainly is meant the corresponding layering of data that need resend.
Generally speaking, detecting packet loss or error code or when out of order, incorrect phenomenon has appearred in the expression critical data, need send said critical data solicitation message this moment to the video code flow transmitting apparatus; Perhaps periodically send said critical data solicitation message to the video code flow transmitting apparatus.
302, send the critical data solicitation message to the video code flow transmitting apparatus, resend critical data with instruction video code stream transmitting apparatus.
The implementation of the solicitation message of critical data described in the embodiment of the invention includes but not limited to following mode: quick refresh command of the video in the multimedia control protocol or the quick refresh command of macro block group or the quick refresh command of macro block or macro block packet loss message or visual packet loss message or image be packet loss message in detail; Perhaps image packet loss message in the video communication feedback information agreement or macro block group packet loss message; Perhaps image packet loss message in the RTCP Real-time Transport Control Protocol or band packet loss message.
The embodiment of the invention also provides a kind of video refreshing apparatus, and is as shown in Figure 4, and said video refreshing apparatus comprises generation unit 41 and transmitting element 42.
When needs request video code flow transmitting apparatus resend critical data, generation unit 41 was used to generate the critical data solicitation message, comprised the packet hierarchical information of being applied in the said critical data solicitation message; The hierarchical information here mainly is meant the corresponding layering of data that need resend.Transmitting element 42 is used for sending said critical data solicitation message to the video code flow transmitting apparatus, resends critical data with instruction video code stream transmitting apparatus.
The critical data solicitation message that transmitting element described in the embodiment of the invention 42 sends can adopt but be not limited to following mode: quick refresh command of the video in the multimedia control protocol or the quick refresh command of macro block group or the quick refresh command of macro block or macro block packet loss message or visual packet loss message or image be packet loss message in detail; Perhaps image packet loss message in the video communication feedback information agreement or macro block group packet loss message; Perhaps image packet loss message in the RTCP Real-time Transport Control Protocol or band packet loss message.
In different communication systems, because the communication protocol that adopts is different, the critical data solicitation message can adopt different protocol to carry, as: multimedia control protocol or video communication feedback information agreement or RTCP Real-time Transport Control Protocol etc.Particularly, include but not limited to following bearing mode:
The first, carry said critical data solicitation message through the parameter of original message in multimedia control protocol or video communication feedback information agreement or the RTCP Real-time Transport Control Protocol being expanded the back.
The second, carry said critical data solicitation message through the reservation message in multimedia control protocol or video communication feedback information agreement or the RTCP Real-time Transport Control Protocol being expanded the back.
Three, through the said critical data solicitation message of message bearing in newly-increased multimedia control protocol or video communication feedback information agreement or the RTCP Real-time Transport Control Protocol.
The embodiment of the invention also provides a kind of video updating system, and is as shown in Figure 5, and said system comprises: video code flow transmitting apparatus 51, video code flow receiving equipment 52.
Wherein, video code flow transmitting apparatus 51 video code flow that will transmit sends to video code flow receiving equipment 52; Said video code flow receiving equipment 52 is used for the video code flow that receiver, video code stream transmitting apparatus 51 sends; And generate the critical data solicitation message under certain condition and send the critical data solicitation message to video code flow transmitting apparatus 51, comprise the corresponding hierarchical information of being applied for of packet in the said critical data solicitation message.The certain condition that sends the critical data solicitation message in the embodiment of the invention can include but not limited to following condition: detect packet loss or error code or out of order; Perhaps can periodically generate in the embodiment of the invention and send said critical data solicitation message to the video code flow transmitting apparatus.
Said video code flow transmitting apparatus 51 is used to receive said critical data solicitation message, and the critical data coding is carried out in the layering that the layering that layering that hierarchical information described in the video image is represented and needs are represented according to said hierarchical information is decoded; And the resulting critical data of will encoding sends to said video code flow receiving equipment 52, so that video code flow receiving equipment 52 carries out handled according to this critical data.
Particularly, above-mentioned video code flow receiving equipment 52 can be found to have packet loss in the video code flow through decoding or inspection bag sequence number.
Video method for refreshing, Apparatus and system that the embodiment of the invention provides; Owing in the critical data solicitation message, comprised the corresponding hierarchical information of being applied for of packet; So; Carry out the critical data coding carrying out the layering that layering that layering that the I frame can be only when refreshing representes said hierarchical information and needs represent according to said hierarchical information decodes, encode and need carry out critical data to all layerings in the prior art; So; Method for refreshing, the Apparatus and system of the video critical data that the employing embodiment of the invention provides; Can lack than prior art so that need carry out the layering number of plies of critical data coding; Can to refresh the data volume of IDR frame of time output less so that carry out the I frame, and then reduce the data that need transmit when the video critical data refreshes, reduce the load that bandwidth is brought.
The application scenarios of the embodiment of the invention specifically can be as shown in Figure 6, supposes that local terminal T0 (video code flow transmitting apparatus) and distance terminal T1, T2, T3 (video code flow receiving equipment) carry out video conference; And local terminal T0 specifically comprises this layer of roadbed Layer1 and two-way enhancement layer Layer2, Layer3 to the scheme of local image employing hierarchical coding; The referring-to relation of each layer be Layer2 with reference to Layer1, Layer3 is with reference to Layer2.
Local terminal T0 transmits required separately layered code stream through MCU (Multipoint control unit, multipoint control unit) to T1, T2, T3, and is as shown in Figure 6.Suppose that distance terminal T3 finds that packet loss appears in Layer2; Adopt being treated to that the method that provides of the present invention carries out: distance terminal T3 sends the critical data solicitation message to local terminal T0, and in the critical data solicitation message, feeds back to local terminal T0 to the hierarchical information of Layer2; T0 is according to the decoding dependence between Layer1, Layer2, the Layer3; Carry out the critical data coding to Layer2, Layer3; And the critical data that coding obtains is sent to distance terminal T3, refresh, do not carry out any operation for Layer1 so that carry out the I frame.
Certainly; In particular cases; If packet loss occurs in the code stream that hierarchical coding is transcoded onto non-layered coding the code stream that is transcoded onto AVC (Advanced videocoding, advanced video coding) like SVC (Scalable video coding, scalable video coding); Because decoder can't obtain hierarchical information, the local terminal need all be carried out the I frame to all layers and refreshed this moment.
Through method provided by the invention, under the situation of indivedual layering generation packet losses, decoding end can be given coding side with the feedback information of which figure layer generation packet loss; Other layerings that coding side can be only relies on the packet loss layering to packet loss layering and decoding are carried out the I frame and are refreshed, and avoid refreshing to cause and needing the data volume of transmission excessive because of all layerings being carried out the I frame, can reduce the load that bandwidth is brought; And under band-limited situation, effectively avoid the serious problem that descends of quality of coded picture; The method that the embodiment of the invention provides did not have the layered code stream of packet loss can not produce any influence for those originally.
To combine the accompanying drawing in the embodiment of the invention below, the technical scheme in the embodiment of the invention is carried out clear, intactly description, obviously, described embodiment only is the present invention's part embodiment, rather than whole embodiment.Based on the embodiment among the present invention, those of ordinary skills are not making the every other embodiment that is obtained under the creative work prerequisite, all belong to the scope of the present invention's protection.
Embodiment 1:
The application scenarios of the embodiment of the invention is: communicate through the message of agreement H.245 between video code flow transmitting apparatus and the video code flow receiving equipment, wherein H.245 be multimedia control protocol (Controlprotocol for multimedia communication).In the suggestion that ITU-T (International Telecommunication Association) announces; H.323 protocol suite is the most important standard of next generation multimedia conferencing technology and equipment, the audio frequency of the device end that it has stipulated different vendor on LAN (local area network (LAN)), Internet (the Internet) etc., video and the various combining forms of the data desired mode of operation of communicating by letter each other T.120.Comprising H.225, H.245 wait.It wherein H.245 is the control command agreement in the multimedia communication system H.323.
The superiors system control message of MultimediaSystemControlMessage for defining in the agreement H.245, this message specifically sees the following form in the prior art:
Can find out that through last table RequestMessage (request message), ResponseMessage (response message), CommandMessage (command messages) and IndicationMessage (Indication message) are one of options of MultimediaSystemControlMessage.
Wherein, One of option of above-mentioned CommandMessage comprises MiscellaneousCommand (mixing order); Can realize as issuing orders through MiscellaneousCommand: videoFastUpdatePicture (the quick refresh command of video), videoFastUpdateGOB (the quick refresh command of macro block group), videoFastUpdateMB (the quick refresh command of macro block), videoBadMBs (macro block packet loss message), lostPicture (visual packet loss message), lostPartialPicture (image is packet loss message in detail); Above-mentioned each order can be used as under the environment of packet loss, carries out the message of I frame application.But above order, or can not carry parameter, or can only carry the frame number of packet loss, the relevant parameter of image-region, all do not carry the hierarchical information of packet loss code stream.Therefore, H.245 standard commands message can't be fed back the hierarchical information of packet loss code stream.
For communicating situation through the command messages of agreement H.245 between video code flow transmitting apparatus and the video code flow receiving equipment; For the command messages that makes the video code flow receiving equipment return can carry hierarchical information; H.245 the embodiment of the invention at first need be expanded, so that the indication hierarchical information.
The expansion to H.245 of the embodiment of the invention includes but not limited to following method:
Method one: on the basis of original command messages that can be used for the application of I frame H.245, carry out parameter expanding.Particularly be on original MiscellaneousCommand message basis, to add following parameter: dependency_id (the resolution hierarchical level of figure layer), quality_id (the quality grading progression of figure layer), temporal_id (the frame per second hierarchical level of figure layer).The embodiment of the invention is that example describes with the wherein six kinds of message in the MiscellaneousCommand message; They are respectively: videoFastUpdatePicture (the quick refresh command of video), videoFastUpdateGOB (the quick refresh command of macro block group), videoFastUpdateMB (the quick refresh command of macro block), videoBadMBs (macro block packet loss message), lostPicture (visual packet loss message), lostPartialPicture (image is packet loss message in detail), and MiscellaneousCommand table specific as follows after the expansion:
The parameter that underscore marks in the last table is the newly-increased parameter in expansion back; Its corresponding resolving is as shown in Figure 7; At first need carry out the judgement of type of message to MiscellaneousCommand message; Can be respectively after drawing type in the table the various message of MiscellaneousCommand message resolve, as can be seen from Figure 7 in the end all comprise resolution hierarchical level or quality grading progression or frame per second hierarchical level in the analysis result.
Method two: use nonstandard message (being equivalent to reservation message) H.245; Carry out the expansion of type of message; Add " the quick refresh command of video " or " visual packet loss message ", carrying him in " the quick refresh command of video " that is added or " the visual packet loss message " has correlation diagram layer hierarchical information parameter.Concrete hierarchical information parameter can comprise dependency_id (the resolution hierarchical level of figure layer) or quality_id (the quality grading progression of figure layer) or temporal_id (the frame per second hierarchical level of figure layer).
In the system control message MultimediaSystemControlMessage of the superiors H.245, include NonStandardMessage (nonstandard message) in the option of RequestMessage (request message), ResponseMessage (response message), CommandMessage (command messages), IndicationMessage (Indication message).Therefore, can use NonStandardMessage to expand corresponding type of message respectively, NonStandardMessage defines like following table in the existing H.245 agreement:
NonStandardParameter defines like following table:
The NonStandardIdentifier that is comprised among wherein above-mentioned NonStandardParameter and the NonStandardMessage is used to identify the message of expansion; And OCTET STRING is used to fill concrete message content.
Present embodiment uses the control messages that is used for hierarchical coding of CommandMessage_SVC sign expansion; Be that command.nonStandar.nonStandardData.nonStandardIdentifier equals CommandMessage_SVC, command.nonStandar.nonStandardData.data is used to fill the message content of CommandMessage_SVC.The concrete definition as follows:
VideoFastUpdatePicture_SVC is " to the video fast update instruction of layered code stream " in the last table, and lostPicture_SVC is " to the image packet loss message of layered code stream ", has all comprised the hierarchical information of correlation diagram layer.Its corresponding resolving is as shown in Figure 8; At first need carry out the judgement of type of message to the command messages of hierarchical coding; Can be respectively after drawing type in the table the various message of the command messages of hierarchical coding resolve, two kinds of message that as can be seen from Figure 8 go up in the table in the end all comprise resolution hierarchical level or quality grading progression or frame per second hierarchical level in the analysis result.
Except above-mentioned two kinds the method, can also be in newly-increased message in the agreement H.245, and in newly-increased message, resolution hierarchical level or quality grading progression or frame per second hierarchical level are set, so that carry hierarchical information.
To after H.245 agreement is expanded, the video method for refreshing that the embodiment of the invention provides, as shown in Figure 9, said method comprises:
901, the video code flow receiving equipment generates the critical data solicitation message, comprises the corresponding hierarchical information of being applied for of packet in the said critical data solicitation message.Critical data solicitation message in the present embodiment is the message after the above-mentioned H.245 protocol extension; So that carry hierarchical information; Particularly can be chosen on original message basis and expand; Also can also can increase H.245 protocol message newly, so that the message after the expansion comprises resolution hierarchical level or quality grading progression or frame per second hierarchical level to nonstandard extension of message H.245.
902, the video code flow receiving equipment sends said critical data solicitation message to the video code flow transmitting apparatus.
The embodiment of the invention does not limit the condition of sending the critical data solicitation message; During practical implementation; The video code flow receiving equipment can periodically send said critical data solicitation message to the video code flow transmitting apparatus, as every at a distance from 5 minutes, perhaps sent a critical data solicitation message in 10 minutes; Also can send said critical data solicitation message in unusual detecting critical data, as: detect packet loss or error code or when out of order, send said critical data solicitation message to the video code flow transmitting apparatus.
903, after the video code flow transmitting apparatus then receives said critical data solicitation message, need carry out the layering of critical data coding according to the hierarchical information affirmation in the said critical data solicitation message.
904, the critical data coding is carried out in the layering represented according to said hierarchical information of layering that hierarchical information described in the video image is represented of video code flow transmitting apparatus and the needs layering of decoding, and other are not needed then not carry out the critical data coding according to the layering that layerings that said hierarchical information is represented are decoded.
905, the video code flow transmitting apparatus resulting critical data of will encoding sends to said video code flow receiving equipment, carries out the I frame and refreshes, so that the video code flow receiving equipment carries out handled according to this critical data.The handled of present embodiment comprises the error correcting of critical data, timing renewal of critical data or the like.
Embodiment 2:
The application scenarios of the embodiment of the invention is: communicate through the message of agreement H.271 between video code flow transmitting apparatus and the video code flow receiving equipment; H.271 agreement wherein is video communication feedback information agreement (H.Video back-channel messages for conveyance of status informationand requests from a video receiver to a video sender); Be specifically designed to video reception apparatus through the feedback information passage; To video transmitting apparatus transferring status data and command request, can be used for H.261, H.263, video protocols H.264.
H.271 the type of message that can realize and corresponding load type, as shown in the table.
payloadType |
Message/instruction |
0 |
One frame or multiframe do not have the image of detected code stream mistake |
1 |
The image that one frame or multiframe are lost wholly or in part |
2 |
One group of macro block (belonging to same two field picture) of losing wholly or in part |
3 |
The CRC check sign indicating number of a parameter set |
4 |
The CRC check sign indicating number of all parameter sets of same type |
5 |
The code stream buffer memory of replacement code stream transmitting apparatus |
>5 |
Reservation is used by ITU-T in the future |
Comprise following two kinds in the concrete packet loss message of existing H.271 syntactic structure:
(1) image packet loss message (payload=1) can be passed through start image frame number, totalframes that parameter ref_pic_id, delta_ref_pic_id obtain to take place packet loss.
(2) macro block group packet loss message (payload=2) can be passed through image frame number, image-region that parameter ref_pic_id, first_blk_lost, num_blks_lost_minus1, top_left_blk, bottom_right_blk obtain to take place packet loss.
More than two kinds of message all can be used as the message of under the environment of packet loss, carrying out the application of I frame.But above these feedback messages all do not carry the hierarchical information that parameter is indicated the packet loss code stream, and therefore, standard message type H.271 can't be fed back the hierarchical information of packet loss code stream equally.
For communicating situation through the message of agreement H.271 between video code flow transmitting apparatus and the video code flow receiving equipment; For the message that makes the video code flow receiving equipment return can be carried hierarchical information; H.271 the embodiment of the invention at first need be expanded, so that the indication hierarchical information.
The expansion to H.271 of the embodiment of the invention includes but not limited to following method:
Method one: on the basis of original feedback message that can be used for the application of I frame H.271, carry out parameter expanding.Just be that image packet loss message (payload=1) and macro block group packet loss message (payload=2) are carried out the parameter expansion, parameter d ependency_id on adding at the message end (the resolution hierarchical level of figure layer), quality_id (scheming the quality grading progression of layer), temporal_id (the frame per second hierarchical level of figure layer).
Through the message syntax structure H.271 after the parameter expansion, as shown in the table:
msg_payload(payloadType,payloadSize){ |
Descriptor |
if(payloadType<=4) |
|
?ref_pic_id |
u(32) |
if(payloadType==0){ |
|
?num_ref_pics_minus1 |
ue(v) |
?for(i=1;i<=num_ref_pics_minus1;i++) |
|
good_ref_pi?c_id[i] |
u(32) |
}elseif(payloadType==1) |
|
delta_ref_pic_id |
ue(v) |
else?if(payloadType==2){ |
|
?data_partition_idc |
ue(v) |
?run_length_flag |
u(1) |
?if(run_length_flag){ |
|
first_blk_lost |
ue(v) |
num_blks_lost_minus1 |
ue(v) |
?}else{ |
|
?top_left_blk |
ue(v) |
?bottom_right_blk |
ue(v) |
?} |
|
}else?if((payloadType==3)||(payloadType==4)){ |
|
param_set_type |
ue(v) |
param_set_crc |
u(16) |
if(payloadType==3) |
|
?param_set_id |
ue(v) |
?} |
|
The new grammer parameter of adding of/*, be used to indicate the hierarchical information * of packet loss code stream/ |
|
if((payloadType==1)||(payloadType==2)){ |
|
Lost_layer_info_idc/* whether in code stream, write the hierarchical information * of packet loss/ |
u(1) |
?if(lost_layer_info_idc){ |
|
The figure number of plies that packet loss takes place lost_layers_minus1/* subtract 1*/ |
ue(v) |
?for(i=1;i<=lost_layers_minus1;i++){ |
|
The resolution hierarchical level * of dependency_id [i]/* packet loss figure layer/ |
ue(v) |
The quality grading progression * of quality_id [i]/* packet loss figure layer/ |
ue(v) |
The frame per second hierarchical level * of temporal_id [i]/* packet loss figure layer/ |
ue(v) |
?} |
|
} |
|
?} |
|
?stop_one_bit/*equal?to?1*/ |
f(1) |
?while(!byte_aligned()) |
|
alignment_zero_bit/*equal?to?0*/ |
f(1) |
} |
|
The newly-increased parameter in expansion back comprises dependency_id or quality_id or temporal_id; Its corresponding resolving is shown in figure 10; At first need carry out the judgement of type of message; After obtaining type of message, can resolve this message, concrete various message in the end analysis result all comprises resolution hierarchical level or quality grading progression or frame per second hierarchical level referring to Figure 10 in analysis result.
Method two: use reservation message H.271, carry out the expansion of feedback message type, add " visual packet loss message " and carry correlation diagram layer hierarchical information parameter in this " visual packet loss message ".Concrete hierarchical information parameter comprises dependency_id (the resolution hierarchical level of figure layer) or quality_id (the quality grading progression of figure layer) or temporal_id (the frame per second hierarchical level of figure layer).
H.271 the type of message for (payloadType>5) in all is to keep and do not do to use; Below to use payloadType=6 to be example; Explain how to pass through the reservation message type, " the visual packet loss message " of correlation diagram layer hierarchical information parameter is carried in expansion.Through the message syntax structure H.271 after the type of message expansion, as shown in the table.
msg_payload(payloadType,payloadSize){ |
Descriptor |
if((payloadType<=4)||(payloadType==6)) |
|
?ref_pic_id |
u(32) |
if(payloadType==0){ |
|
?num_ref_pics_minus1 |
ue(v) |
?for(i=1;i<=num_ref_pics_minus1;i++) |
|
good_ref_pic_id[i] |
u(32) |
?}else?if(payloadType==1) |
|
?delta_ref_pic_id |
ue(v) |
?else?if(payloadType==2){ |
|
data_partition_idc |
ue(v) |
run_length_flag |
u(1) |
if(run_length_flag){ |
|
?first_blk_lost |
ue(v) |
?num_blks_lost_minus1 |
ue(v) |
}else{ |
|
top_left_blk |
ue(v) |
bottom_right_blk |
ue(v) |
} |
|
}else?if((payloadType==3)||(payloadType==4)){ |
|
?param_set_type |
ue(v) |
?param_set_crc |
u(16) |
?if(payloadType==3) |
|
param_set_id |
ue(v) |
} |
|
The new grammer parameter of adding of/*, be used to indicate the hierarchical information * of packet loss code stream/ |
|
if(payloadType==6){ |
|
The figure number of plies that packet loss takes place lost_layers_minus1/* subtract 1*/ |
ue(v) |
?for(i=1;i<=lost_layers_minus1;i++){ |
|
The resolution hierarchical level * of dependency_id [i]/* packet loss figure layer/ |
ue(v) |
The quality grading progression * of quality_id [i]/* packet loss figure layer/ |
ue(v) |
The frame per second hierarchical level * of temporal_id [i]/* packet loss figure layer/ |
ue(v) |
?} |
|
} |
|
stop_one_bit/*equal?to?1*/ |
f(1) |
while(!byt?e_aligned()) |
|
?alignment_zero_bit/*equal?to?0*/ |
f(1) |
} |
|
The newly-increased parameter in reservation message expansion back for payloadType=6 comprises dependency_id or quality_id or temporal_id; Its corresponding resolving is shown in figure 11; At first need judge type of message; After drawing type of message, message is resolved, as can be seen from Figure 11 various dissimilar message in the end all comprise resolution hierarchical level or quality grading progression or frame per second hierarchical level in the analysis result.
Except above-mentioned two kinds the method, can also be in newly-increased message in the agreement H.271, and in newly-increased message, resolution hierarchical level or quality grading progression or frame per second hierarchical level are set, so that carry hierarchical information.
To after H.271 agreement is expanded; Video method for refreshing that the embodiment of the invention provides and the similar process of Fig. 9; Difference is that the critical data solicitation message in the embodiment of the invention is the message after the above-mentioned H.271 protocol extension; So that carry hierarchical information, particularly can be chosen on original message basis and expand, also can be to reservation message expansion H.271; Also can increase H.271 protocol message newly, so that the message after the expansion comprises resolution hierarchical level or quality grading progression or frame per second hierarchical level.
Embodiment 3:
The application scenarios of the embodiment of the invention is: pass through RTCP Real-time Transport Control Protocol (RTCP between video code flow transmitting apparatus and the video code flow receiving equipment; Realtime transport control protocol) message communicates; Wherein RTCP Real-time Transport Control Protocol is in charge of transmission quality, exchange of control information between the current application process.Between RTP (Realtime transport protocol, RTP) session, each participant periodically transmits the RTCP bag, contains the quantity of data packets of having sent, the statistical informations such as quantity of data packets of losing in the bag.
According to the RFC4585 definition, RTCP provides the feedback information type of following several kinds of load layers and application layer.
FMT |
Message |
0 |
Keep |
1 |
Image packet loss message |
2 |
Slice packet loss message |
3 |
The correct decode messages of image (indicating available reference frame) |
4-14 |
Keep |
15 |
The application layer feedback message |
16-30 |
Keep |
31 |
Keep expansion as sequence number |
Wherein, image packet loss message (FMT=1) is not carry parameter, and promptly FCI (feedback message content) is empty; The frame number that Slice (band) packet loss message (FMT=2) has been carried relevant parameter indication packet loss and image-region (the initial macro block of generation packet loss number and macroblock number), the structure of FCI is following.
Image packet loss message (FMT=1) and Slice packet loss message (FMT=2) all can be used as the message of under the environment of packet loss, carrying out the application of I frame.But above these feedback messages all do not carry the hierarchical information that parameter is indicated the packet loss code stream, and therefore, the standard message type of RTCP can't be fed back the hierarchical information of packet loss code stream equally.
Communicate situation for the message through rtcp protocol between video code flow transmitting apparatus and the video code flow receiving equipment; For the message that makes the video code flow receiving equipment return can be carried hierarchical information; The embodiment of the invention at first need be expanded RTCP, so that the indication hierarchical information.
The expansion to RTCP of the embodiment of the invention includes but not limited to following method:
Method one: on the basis of the original feedback message type that can be used for the application of I frame of RTCP, carry out parameter expanding.Just be that image packet loss message (FMT=1) and Slice packet loss message (FMT=2) are carried out the parameter expansion, parameter d ependency_id (the resolution hierarchical level of figure layer) or quality_id (scheming the quality grading progression of layer) or temporal_id (the frame per second hierarchical level of figure layer) on adding at the end of original FCI.
FCI structure through the image packet loss message (FMT=1) after the parameter expansion is as follows.
FCI structure through the Slice packet loss message (FMT=2) after the parameter expansion is as follows.
Method two: use the RTCP reservation message, carry out the expansion of message, add " visual packet loss message ", should carry correlation diagram layer hierarchical information parameter in " visual packet loss message ".Particularly, the hierarchical information parameter comprises dependency_id (the resolution hierarchical level of figure layer) or quality_id (the quality grading progression of figure layer) or temporal_id (the frame per second hierarchical level of figure layer).
For the load layer feedback message type of (FMT=4-14) scope, all be to keep and do not do to use among the RTCP.To use (FMT=14) to be example, explain and how to pass through the feedback message type that RTCP keeps, " the visual packet loss message " of correlation diagram layer hierarchical information parameter is carried in expansion below.The FCI structure of new image expanding packet loss message (FMT=14), as follows.
Except above-mentioned two kinds the method, can also in rtcp protocol, increase message newly, and in newly-increased message, resolution hierarchical level or quality grading progression or frame per second hierarchical level are set, so that carry hierarchical information.
After rtcp protocol is expanded; Video method for refreshing that the embodiment of the invention provides and the similar process of Fig. 9; Difference is that the critical data solicitation message in the embodiment of the invention is the message after the above-mentioned rtcp protocol expansion; So that carry hierarchical information, particularly can be chosen on original message basis and expand, also can be to the reservation message expansion of RTCP; Also can increase rtcp protocol message newly, so that the message after the expansion comprises resolution hierarchical level or quality grading progression or frame per second hierarchical level.
The embodiment of the invention is mainly used in the video communication technology field, for example video conferencing system, video calling technology or the like.
Through the description of above execution mode, the those skilled in the art can be well understood to the present invention and can realize by the mode that software adds essential common hardware, can certainly pass through hardware, but the former is better execution mode under a lot of situation.Based on such understanding; The part that technical scheme of the present invention contributes to prior art in essence in other words can be come out with the embodied of software product, and this computer software product is stored in the storage medium that can read, like the floppy disk of computer; Hard disk or CD etc.; Comprise some instructions with so that computer equipment (can be personal computer, server, the perhaps network equipment etc.) carry out the described method of each embodiment of the present invention.
The above; Be merely embodiment of the present invention, but protection scope of the present invention is not limited thereto, any technical staff who is familiar with the present technique field is in the technical scope that the present invention discloses; Can expect easily changing or replacement, all should be encompassed within protection scope of the present invention.Therefore, protection scope of the present invention should be as the criterion by said protection range with claim.