PDA

View Full Version : Making VP8 from x264?


iwod
20th May 2010, 17:32
If VP8 is so similar to H.264, is it possible with some minor changes, that we produce a H.264 files minus certain features ( aka VP8 )

Dark Shikari
20th May 2010, 17:49
Yes, it's feasible.

Things you'd need to do:

1. New header-writing code.
2. Change intra pred to match theirs (replace planar with TM, modify the others to be bit-exact).
3. Replace the entropy coder.
4. Replace the MC filter -- modify mc_luma/get_ref to work without staged MC, since that's not possible in VP8.
5. Drop-in replace the transforms.
6. Add DC hierarchical transform to p16x16.
7. Remove subpartitions for now (easier that way).
8. Change MV prediction to match.
9. A few other things I'm omitting here.

It'd be a few weeks to months of hardcore hacking, but it's quite possible.

Of course you'd also want to keep off all the features that weren't compatible, such as B-frames. And for now you'd want to keep to a subset of the format, ignoring things like golden frames and so forth.

Basically, most things are different, but not different enough that the structure of the encoder would need to be changed. Most things which are totally different (e.g. no B-frames) are just omissions, which are easy: just leave them off.

creamyhorror
23rd May 2010, 07:19
If executed it would no doubt result in a significantly better VP8 encoder than currently available (xVP8??). The presence of a good VP8 encoder could have quite an impact on VP8 uptake in these early days, and possibly determine how fast the WebM format succeeds. The question is, of course, does anyone want to do it? And which greater goals does it align with?