Difference between revisions of "SoC 2010/High Bit Depth Encoding"

From VideoLAN Wiki
Jump to navigation Jump to search
m
m
Line 5: Line 5:
 
The primary goal for this project is to prepare the code base of x264 for encoding H.264 video with user defined sample depths. This will involve templating the encoder and migrating existing C code for use with higher sample depths.
 
The primary goal for this project is to prepare the code base of x264 for encoding H.264 video with user defined sample depths. This will involve templating the encoder and migrating existing C code for use with higher sample depths.
  
As a lot of the code that handles the actual encoding is written in assembly, templating and migrating the encoder won't suffice to enable support for higher sample depths. The secondary goal for the project is therefore to identify new assembly code to be written.
+
A lot of optimization is done with assembly, and will thus also need to be migrated. The secondary goal for this project is therefore to identify new assembly code to be written.
  
 
== Milestones ==
 
== Milestones ==

Revision as of 19:19, 19 May 2010

This project is part of Google Summer of Code 2010.
Student: Oskar Arvidsson
Mentor: Holger Lubitz

Abstract

The primary goal for this project is to prepare the code base of x264 for encoding H.264 video with user defined sample depths. This will involve templating the encoder and migrating existing C code for use with higher sample depths.

A lot of optimization is done with assembly, and will thus also need to be migrated. The secondary goal for this project is therefore to identify new assembly code to be written.

Milestones

Status Deadline Description
- May 30 16-bit infrastructure ready for testing
- June 6 Encoding with 16-bit infrastructure produce same results as 8-bit infrastructure.

Timeline

This schedule is preliminary.

Status Date Period Description
In progress May 17 - May 23 Week 1 Identify C code that should be templated.
In progress May 24 - May 30 Week 2 Start templating the encoder for 16-bit infrastructure.
Not started May 31 - June 6 Week 3 Test templated encoder. Identify C code that need modification to support higher sample depth.
Not started June 7 - June 13 Week 4 Start modifying the encoder to support higher sample depth.
Not started June 14 - June 20 Week 5 Continue work with encoder.
Not started June 21 - June 27 Week 6 Continue work with encoder.
Not started June 28 - July 4 Vacation
Not started July 5 - July 11 Vacation
Not started July 12 - July 18 Week 7 Test encoder with higher sample depths.
Not started July 19 - July 25 Week 8 Fix issues encountered during testing.
Not started July 26 - August 1 Week 9 Modify build chain to allow compilation for higher sample depth. Add options to set sample rate.
Not started August 2 - August 8 Week 10 Identify assembly code that needs modification to support higher sample depth.

Repository