IP Library Granted Patent US 9,392,279
Granted Patent B2
US 9,392,279 · App. 14/029,823 · Granted Jul 12, 2016

Method and system for generating an instantaneous decoding refresh (IDR) picture slice in an H.264/AVC compliant video data stream

Inventor: Tomasz Dziecielewski (Zielona Gora, PL)
Assignee: ADVANCED DIGITAL BROADCAST S.A.
H04N19/00684H04N19/40H04N19/48H04N19/513H04N19/70H04N21/4402
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,392,279
App. No.
14/029,823
Granted
Jul 12, 2016
Kind
B2
Abstract

Method for generating an IDR picture slice in an H.264/AVC stream, the method including finding an I-type picture and identifying it as a start picture, modifying and/or adding, in each slice header of the start picture, IDR-specific elements, removing, from each slice header of the start picture, non-IDR-specific elements, removing all reference and non-reference B-slices between the start picture and the next I-picture or P-picture, following the start picture, that is a frame or the first field, in decoding order, of a complementary field pair. Starting from the first picture after the removed slices, for each slice header executing: correcting frame_num so that they are valid with reference to the previous picture, correcting references, in the MMCO, as a function of the removed reference B-pictures, correcting references, found in the “Reference picture list reordering” structure, as a function of the removed reference B-pictures and restoring slice encapsulation for modified slices.

Claims (44)

1. Method for generating an Instantaneous Decoding Refresh (IDR) picture slice in an H.264/AVC compliant video data stream, the method comprising the steps of:

Starting reception of the H.264/AVC compliant video data stream ( 201 ) by a data receiving block;

with a conversion unit Finding in the H.264/AVC compliant video data stream an I-type picture and identifying it as a start picture ( 202 );

Modifying and/or adding ( 203 ), in each slice header of the start picture, IDR specific syntax elements;

Removing ( 204 ), from each slice header of the start picture, non-IDR specific syntax elements;

Removing ( 205 ), from the H.264/AVC compliant video data stream, all reference and non-reference B slices between the start picture and the next I picture or P picture, following the start picture, that is either a frame or the first field, in decoding order, of a complementary field pair;

Starting from the first picture after the start picture, for each slice header ( 206 ), received from the H.264/AVC compliant video data stream, executing the following steps:

Correcting frame_num parameters ( 207 ) so that they are valid with respect to the previous picture;

Correcting picture references ( 208 ), found in the “Memory Management Control Operation” (MMCO) structure, as a function of the removed reference B pictures;

Correcting picture references ( 209 ), found in the “Reference picture list reordering” structure, as a function of the removed reference B pictures;

Restoring H.264/AVC slice encapsulation ( 210 ) for each modified slice; and

with an output unit, outputting an H.264/AVC compliant video data stream comprising an Instantaneous Decoding Refresh (IDR) picture slice.

2. The method according to claim 1 characterised in that the step of finding in the H.264/AVC compliant video data stream an I-type picture uses supplemental enhancement information (SEI) data and in particular recovery point SEI message semantics.

3. The method according to claim 1 characterised in that the IDR specific syntax elements are frame_num value set to 0 and picture_order_count value set to 0.

4. The method according to claim 3 characterised in that the IDR specific syntax elements are further no_output_of_prior_pics_flag, long_term_reference_flag.

5. The method according to claim 1 characterised in that the non-IDR specific syntax elements include adaptive_ref_pic_marking.

6. The method according to claim 1 characterised in that the step of correcting frame_num parameters so that they are valid with respect to the previous picture also includes correction of the picture_order_count parameter.

7. The method according to claim 1 characterised in that correcting picture references, found in the “Memory Management Control Operation” structure, as a function of the removed reference B pictures includes verifying whether in the “Memory Management Control Operation” entries, differentially encoded target short-term reference picture indices do not refer to the removed B pictures or pictures preceding the start picture in the decoding order.

8. The method according to claim 1 characterised in that MMCO correction is effected for the number of pictures specified by MaxFrameNum parameter.

9. The method according to claim 1 characterised in that correcting picture references, found in the “Memory Management Control Operation” loop, as a function of the removed reference B pictures includes:

verification ( 701 ) if memory_management_control_operation equals 1 or if the parameter of memory_management_control_operation equals 3;

when the foregoing requirement is true, checking ( 702 ), whether the referenced picture has a frame_num indicating a picture that precedes the next I or P picture following the start picture, in decoding order, that is either a frame or the first field of a complementary field pair;

when the foregoing requirement is true, checking ( 703 ) if the referenced picture is an IDR frame/picture 703 or a field of a complementary pair that contains the processed IDR picture;

when the foregoing requirement is true, correcting ( 705 ), the parameter of difference_of_pic_nums_minus1 such that:

corrected_difference_of_pic_nums_minus1=difference_of_pic_nums_minus1−number_of_dropped_reference_frames<<field_shift, where the field_shift value equals field_pic_flag of the currently processed picture;

else ( 705 ), removing the memory_management_control_operation from the processed picture.

10. The method according to claim 1 characterised in that correcting picture references ( 209 ), found in the “Reference picture list reordering” structure, as a function of the removed reference B pictures is effected for the number of pictures specified by MaxFrameNum parameter.

11. The method according to claim 1 characterised in that correcting picture references ( 209 ), found in the “Reference picture list reordering” structure, as a function of the removed reference B pictures includes correction of reference lists entries or their removal.

12. The method according to claim 1 characterised in that restoring H.264/AVC slice encapsulation ( 210 ) for each modified slice includes encapsulation at RBSP, NAL and Annex-B byte stream levels.

13. A non-transitory computer readable non-volatile memory storing computer-executable instructions performing all the steps of the computer-implemented method according to claim 1 when executed on a computer.

14. A system ( 901 ) for generating an Instantaneous Decoding Refresh (IDR) picture slice in an H.264/AVC compliant video data stream, the system comprising:

a data receiving block ( 910 ) for reception of the H.264/AVC compliant video data stream;

the system being characterized in that it further comprises:

an I-type picture conversion unit ( 921 ) configured to:

find in the H.264/AVC compliant video data stream an I-type picture and identifying it as a start picture;

modify and/or add, in each slice header of the start picture, IDR specific syntax elements;

remove, from each slice header of the start picture, non-IDR specific syntax elements;

a remove, from the H.264/AVC compliant video data stream, all reference and non-reference B slices between the start picture and the next I picture or P picture, following the start picture, that is either a frame or the first field, in decoding order, of a complementary field pair;

a pictures conversion unit ( 922 ) configured to, starting from the first picture after the removed slices, for each slice header, received from the H.264/AVC compliant video data stream, execute the following steps:

correct frame_num parameter so that they are valid with respect to the previous picture;

correct picture references, found in the “Memory Management Control Operation” (MMCO) structure, as a function of the removed reference B pictures;

correct picture references, found in the “Reference picture list reordering” structure, as a function of the removed reference B pictures;

restore H.264/AVC slice encapsulation for each modified slice; and

an output unit ( 923 ) for outputting an H.264/AVC compliant video data stream comprising an Instantaneous Decoding Refresh (IDR) picture slice.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2013
From: DZIECIELEWSKI, TOMASZ
To: ADVANCED DIGITAL BROADCAST S.A.
Reel/Frame 031226/0756 →
Continuity (1)
Related Publication 20140086326A1 · Mar 27, 2014