[x264-devel] AVC Intra encoder based on libx264

Joseph Artsimovich joseph at mirriad.com
Tue Jan 31 17:36:30 CET 2012


I did some testing on on the code from 
https://github.com/DarkShikari/x264-devel

Good news first:
I can build my avci_encoder tool against that, and it works correctly, 
provided I set param.i_avcintra_compat = 100

My next attempt was to encode my bitstream using x264.  I did the following:
x264 --fps 25 --interlaced --input-csp i422 --input-res 1920x1080 
--avcintra-compat 100 --preset fast --tune zerolatency --output out.h264 
raw.yuv

where raw.yuv was created like this:
ffmpeg -i file.mov -vcodec rawvideo -pix_fmt yuv422p10 raw.yuv

In addition to missing custom scaling matrices and i_chroma_qp_offset = 
3 (see my previous message), I saw the following problems with the 
generated stream:
* Need to get rid of a SEI with x264 version info.
* Need to add two dummy SEIs. Avid decoder will choke if they are 
missing but doesn't seem to look inside.
* Frame size is wrong. For 50i, you generate frames of 546000 bytes. It 
should instead be 559104 + 512*19 =  568832. See my code in 
avci_encoder.cpp for more details.

That's it so far, but there may be more problems.

-- 
Joseph Artsimovich
Senior C++ Applications Developer
MirriAd Ltd



More information about the x264-devel mailing list