SoC 2009/Weighted P-frame Prediction
This project is part of Google Summer of Code 2009.
|
Abstract
x264 is a highly popular h264 encoder. It currently does not implement the entire spec of h264. Currently weighted P-frames are not used to assist in prediction. If implemented this would give huge benefits in cases where the scene fades or where there are flashes. I am proposing to implement an implementation of this that is good enough and fast enough to warrant inclusion in most video encodings.
Goals
No. | Task Description | Status | Comment |
---|---|---|---|
1 | Build weighting framework | done | I have tested it to work. |
2 | Brute Force Optimal Weights | Mostly Working | Working well in hires, quite well in lowres. see below |
3 | Try use these new weights for some interesting things to improve quality | Not started | |
4 | Find Optimal Weights in a fast way (probably based on the findings in 3.) | Not started | Actually I have got a lot of ideas, some of which I have tested. Just nothing using the current framework so it is possible that it is all useless. |
5 | Optimize | Currently working on the weight assembler code. | Never done assembler before so this is going slooow. |
6 | See if explicit B-frame weighting can do good things | Not Started | |
7 | Other weird uses | Not Started |
Timeline
This is an estimation.
March 20th or so - April 3 Qualifying task. Was a first attempt at goal 1.
April 20 Students announce
April 21 - May Goal 1 redone better and acceptably.
May 1 - May 20 Work on goal 2
May 23 Program Starts
May 26 - June 12 Exams
June 13 - July 13 Code
July 13 Mid Term deadline. Goals for here have not been set but personally I would like to have goal 2 & 4 finished with goal 3 having a decent chunk of work done. This weird out of order thing is because goal 3 can be worked on continuously as it is not really set, more the trying of ideas.
July 13 - August 17 Code
August 17 Program end