Menu ▾ ▴

#3 Frame-level decoding of H.264 for multi-core support

open
None
5
2008-05-29
2008-02-20
Anonymous
No

Frame-level video decoding of H.264 for multi-core support

Frame-level decoding, (also known as frame-balancing decoding), can be used to achieve parallelism (multi-core usage) for video codec applications by exploiting frame level parallelism in the H.264 (MPEG-4 AVC) codec.

The I-frames of H264 are still independent of each other, and the P-frames only reference previous I- or P-frames. Thus one could then decode frames in parallel, if core #1 decodes I-frame of Gop #1, and core #2 decodes I-frame of Gop #2. After that core #2 could decode the first P-frame of Gop #2 (hence the B-frames of Gop #2 need pictures from Gop #1), while core #1 continues on Gop #1, and so on.

So that thread 1 decode frame 1 and updates a last_decoded_row variable and thread 2 decodes frames 2 and checks if the needed reference is available or if last_decoded_row is still too small in the later case the thread waits a third thread could now work on frame 3 and so on.

http://www.hipeac.net/node/63

Discussion

  • pksv

    pksv - 2008-03-12
    • priority: 5 --> 7
    • assigned_to: nobody --> ravi-korsa
     
  • pksv

    pksv - 2008-03-17
    • priority: 7 --> 6
     
  • pksv

    pksv - 2008-05-29
    • priority: 6 --> 5
     

Log in to post a comment.