Computing collocated macroblock information for direct mode macroblocks
First Claim
1. In a computing device that implements a video decoder, a method comprising:
- with the computing device that implements the video decoder;
identifying a B slice for a first picture;
computing slice-level collocated macroblock information to be used for direct mode macroblocks in the B slice, and, for each of one or more collocated slices, remapping plural reference picture indices from a reference picture list of the collocated slice to a reference picture list of the B slice;
for each of two or more of the direct mode macroblocks in the B slice;
identifying the direct mode macroblock; and
in response to the identifying, computing macroblock-level collocated macroblock information to be used in decoding of the direct mode macroblock; and
using the slice-level collocated macroblock information and the macroblock-level collocated macroblock information in reconstruction of the respective direct mode macroblocks.
2 Assignments
0 Petitions
Accused Products
Abstract
Video decoding innovations for multithreading implementations and graphics processor unit (“GPU”) implementations are described. For example, for multithreaded decoding, a decoder uses innovations in the areas of layered data structures, picture extent discovery, a picture command queue, and/or task scheduling for multithreading. Or, for a GPU implementation, a decoder uses innovations in the areas of inverse transforms, inverse quantization, fractional interpolation, intra prediction using waves, loop filtering using waves, memory usage and/or performance-adaptive loop filtering. Innovations are also described in the areas of error handling and recovery, determination of neighbor availability for operations such as context modeling and intra prediction, CABAC decoding, computation of collocated information for direct mode macroblocks in B slices, reduction of memory consumption, implementation of trick play modes, and picture dropping for quality adjustment.
373 Citations
21 Claims
-
1. In a computing device that implements a video decoder, a method comprising:
with the computing device that implements the video decoder; identifying a B slice for a first picture; computing slice-level collocated macroblock information to be used for direct mode macroblocks in the B slice, and, for each of one or more collocated slices, remapping plural reference picture indices from a reference picture list of the collocated slice to a reference picture list of the B slice; for each of two or more of the direct mode macroblocks in the B slice; identifying the direct mode macroblock; and in response to the identifying, computing macroblock-level collocated macroblock information to be used in decoding of the direct mode macroblock; and using the slice-level collocated macroblock information and the macroblock-level collocated macroblock information in reconstruction of the respective direct mode macroblocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
13. In a computing device that implements a video decoder, a method comprising:
with the computing device that implements the video decoder; generating a task dependency graph that indicates dependencies between plural decoding tasks, wherein the plural decoding tasks include a collocated macroblock information task to be scheduled apart from entropy decoding tasks, wherein the collocated macroblock information task includes operations for identifying direct mode macroblocks and computing collocated macroblock information; and decoding video with multiple threads of execution using the task dependency graph, wherein the decoding includes; identifying a direct mode macroblock; in response to the identifying, computing collocated macroblock information to be used in decoding of the direct mode macroblock; and using the collocated macroblock information in reconstruction of the direct mode macroblock. - View Dependent Claims (14, 15, 16, 17)
-
18. A computing device that implements a video decoder, the computing device including a processor and memory, wherein the computing device is adapted to perform a method comprising:
-
identifying a B slice for a first picture; computing slice-level collocated macroblock information to be used for direct mode macroblocks in the B slice, and, for a collocated slice, remapping plural reference picture indices from a reference picture list of the collocated slice to a reference picture list of the B slice; for each of two or more of the direct mode macroblocks in the B slice; identifying the direct mode macroblock in the B slice; and in response to the identifying, computing collocated macroblock information to be used in decoding of the direct mode macroblock; and using the slice-level collocated macroblock information and the macroblock-level collocated macroblock information in reconstruction of the respective direct mode macroblocks. - View Dependent Claims (19, 20, 21)
-
Specification