Patent Document ID: 9800869
Application ID: 13863127
Patent Status: 1

Claim One:
1. In a processing device for decoding a sequence comprising a plurality of pictures, each of the plurality of pictures partitionable into one or more slices, each of the one or more slices to be processed at least in part according to a slice header, a method of generating the slice header describing slice parameters, comprising: (a) coding slice type data for a slice of the one or more slices in the header, the slice type data indicating the slice type, wherein: the slice is a B-type slice if the at least one coding unit of the slice is coded using motion vector compensation according to up to two motion vectors associated with at least one reference picture; the slice is a P-type slice if at least one coding unit of the slice is coded using motion vector compensation according to no more than one motion vector; and the slice is an I-type slice if no coding units of the slice are coded using motion compensation prediction; the slice is an inter-predicted slice if it is a P-type slice or a B-type slice; (b) generating slice header logic for determining, if a slice of the one or more slices is an inter-predicted slice according to slice type data read from the slice header; (c) generating slice header logic for performing, with further slice type testing performed only to identify the inter-predicted slice as either a P-type slice or a B-type slice and with no further slice testing performed to identify the inter-predicted slice as a slice type other than a P-type slice or a B-type slice, steps comprising steps (1)-(7) if the slice determined to be an inter-picture predicted slice: (1) determining if a sequence temporal motion vector prediction flag indicates that the sequence in which the picture is disposed may be encoded using the at least one temporal motion vector prediction; (2) if the sequence temporal motion vector prediction flag indicates that the sequence in which the picture is disposed may be encoded using the at least one temporal motion vector prediction, reading a picture temporal motion vector prediction enable flag indicating that the picture in which the slice is disposed is encoded using at least one temporal motion vector prediction; (3) reading a reference picture override flag indicating whether data describing a maximum index of at least one list of reference pictures having the at least one reference picture is included in the slice header; (4) if the read reference picture override flag indicates that the data describing the maximum index of the at least one list of reference pictures having the at least one reference picture is present, reading the data; (5) reading reference picture list modification information only if the at least one reference picture is not implicitly defined; (6) reading information indicating a structure of motion vector differences used in the motion vector compensation prediction if the slice is a B-slice; (7) reading information defining initialization of context variables for entropy coding of the slice only if the information defining initialization of the context variables is present in the slice header; (c) decoding an initial value for coding blocks within the slice; (d) decoding deblocking filter parameters according to the slice header; (e) again determining, if a slice of the one or more slices is an inter-predicted slice according to slice type data; (f) generating further slice header logic for performing, with further slice type testing performed only to identify the inter-predicted slice as either a P-type slice or a B-type slice and with no further slice testing performed to identify the inter-predicted slice as a slice type other than a P-type slice or a B-type slice, steps comprising steps (1)-(4) if the slice is again determined to be an inter-picture predicted slice: (1) determining if the slice may be encoded using at least one temporal motion vector predictor according to the read picture temporal motion vector prediction enable flag; (2) only if the slice encoded using at least one temporal motion vector predictor, reading information describing at least one reference picture of the slice associated with the at least one temporal motion vector predictor at least in part according to whether the slice is a P-type slice or a B-type slice; (3) applying a weighted prediction according to whether the slice is a B-type slice or a P-type slice; and (4) determining, from the slice header, a maximum number of merged temporal motion vector predictor candidates for the slice.