[x264-devel] NAL slice support patch added?

Michael Roitzsch mroi at os.inf.tu-dresden.de
Thu Oct 25 15:00:17 CEST 2007


Hi,

>   I have changed the patch to include suggestions given by Loren  
> and Kurosu (thank you for looking over the code) but using the  
> regression test suggested by Loren (ie encode with x264, decode  
> with JM and compare  fdec.yuv to output of JM), I have discovered a  
> problem:
>   Everything is fine (ie fdec.yuv and output of JM match perfectly)  
> if the slice break happens at beginning of mb row (row = one  
> horizontal row of macroblocks starting at left edge and ending at  
> right edge).
> However there are differences when the slice break happens in the  
> middle of a mb row.  Can anyone guide me in the general direction  
> of where I should be looking to fix this? Loop filter? intra  
> prediction for a mb  from a previous slice (i assume not allowed)?
>   Any help is much appreciated.

I came across this problem with an earlier revision of x264, because  
I needed encoding with arbitrary slice boundaries for a research  
project. I provided patch back then that fixed all the anomalies for  
me. I don't know if it still works with today's x264 or if it even  
applies, but maybe it will help you.

The problem is basically that x264's check for the available spatial  
prediction modes assumes full-row slices. It checks for availability  
of the topleft macroblock, while it should actually check for the top  
and the left macroblock. If slices always start in column 0, this is  
equivalent (top and left are there iff topleft is there), but for  
arbitrary boundaries, this does not hold.

Michael

-------------- next part --------------
A non-text attachment was scrubbed...
Name: split-row-slices.patch
Type: application/octet-stream
Size: 2075 bytes
Desc: not available
Url : http://mailman.videolan.org/pipermail/x264-devel/attachments/20071025/d28a102b/attachment.obj 


More information about the x264-devel mailing list