In one embodiment, a method for parallel processing of blocks in a decoding process is provided. A plurality of blocks for a picture is received. The picture may have the plurality of blocks arranged in a first order. The blocks in the plurality of blocks may be pre-processed to determine data dependency information for blocks. In one embodiment, the blocks in the picture are all pre-processed to determine the data dependency information for every block in the picture if possible. Blocks that do not have data dependencies are then determined and sent for parallel processing in processing units. Also, blocks that still have data dependencies are not processed until the data dependency information becomes available. For example, an inter-coded block may be decoded and information for the decoded block is used to decode the intra-coded block. At this point, these blocks may be sent for processing in the processing units.
展开▼