Your SlideShare is downloading. ×
Getting the most out of H.264
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Getting the most out of H.264

3,077
views

Published on

Getting the best performance from a video codec is a real challenge. Learn strategies for optimizing compression, video quality and computational performance.

Getting the best performance from a video codec is a real challenge. Learn strategies for optimizing compression, video quality and computational performance.

Published in: Technology, Business

1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total Views
3,077
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
239
Comments
1
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Getting the most out of H.264 17 th November 2010 Iain Richardson
  • 2. H.264 : what’s essential and what’s optional?
  • 3.  
  • 4. slices macroblocks frames or fields
  • 5.  
  • 6. I slice P slice B slice I MB I P Skip I P Skip B
  • 7. Intra prediction choices
  • 8. Inter prediction choices
  • 9.  
  • 10. Quantization Parameter Transform + quantization choices
  • 11. Quantized coefficients Motion vectors Macroblock headers … .. Coded bitstream Exp-Golomb / CAVLC encoder CABAC encoder Entropy coding choices
  • 12. What are the trade-offs?
  • 13. Quality (or Distortion) Rate Computation
  • 14. Example: Group of Pictures structure
  • 15. Encoder choices are based on: Decoder capabilities Video content Computing resources Profile + Level Current + previous statistics Time to encode
  • 16. What’s important? Bitrate Quality Delay Real-time or offline Flexibility
  • 17. H.264 mode decisions
  • 18.  
  • 19. MB header and vectors Coded residual Coded macroblock
  • 20. I slice
  • 21. P slice
  • 22. B slice
  • 23. Making the best decisions
  • 24. Cost of coding Quality (or distortion) Bitrate Computation
  • 25. Bitrate PSNR Rate-Distortion Curve for a video clip BETTER WORSE
  • 26.  
  • 27. Rate PSNR R-D points for one MB
  • 28.
    • Each MB mode has a D “cost” and an R “cost”
    • Calculate a combined cost J:
      • J = D + λR
    R D Choose the mode with the smallest value of J
  • 29. Rate PSNR λ1 λ2
  • 30. For every macroblock: 1. Try out every coding mode, measure D and R 2. Choose mode with minimum J = D + λR  Rate Distortion Optimised (RDO) Mode Selection
  • 31. Rate cost Distortion cost Headers Residual Skip MB Intra MB P MB B MB Distortion J
  • 32. Bitrate PSNR Few modes, no RDO Multiple modes, no RDO Multiple modes, with RDO
  • 33. Computational overload?
  • 34. Practical strategy 1: Reduce the number of modes
  • 35. Practical strategy 2: Approximate cost measures
    • Sub-sample number of search points
    • Use a less sophisticated comparison metric
    • Etc.
  • 36. What’s next?
  • 37. HD content everywhere & not enough bandwidth?
  • 38. Computation increasing on every platform
  • 39. More computation More coding options High Efficiency Video Coding Flexible Coding
  • 40. Summary
  • 41. Questions? onecodec.com www.dcktn.org.uk vcodex.com Email me: iain @ onecodec.com Follow me on Twitter: @onecodec elecard.com