[x264-devel] Re: Slices in x264

Guillaume Poirier gpoirier at mplayerhq.hu
Wed Jan 17 10:38:38 CET 2007


Hi Måns,

Måns Rullgård wrote:
> Guillaume Poirier <gpoirier at mplayerhq.hu> writes:
> 
> 
>>Hi,
>>
>>List, Peter wrote:
>>
>>>Hello everyone,
>>>
>>> 
>>>
>>>I am new to this group although experienced with H.264. I tried to use
>>>the x264 encoder to prepare sequences for an error-resilience test.
>>>
>>>I was very surprised, when I discovered, that x264 CAN NOT produce
>>>slices! Slices are the basic tool to cope with packet-losses over
>>>IP-based networks (without retransmission), and in fact can make a huge
>>>difference for subjective quality, in particular at high loss-rates.
>>
>>Very basic indeed. _I_ think it's better to add more advanced parity
>>(which allow the errors to be recovered) infos somewhere in the
>>transport layer stream than using slices.
> 
> 
> Using error correcting coding at the transmission layer substantially
> increases the bitrate.  With slices a transmission error will ruin the
> rest of the slice, while other slices still decode properly.
> Sometimes a little damage here and there is acceptable if it means you
> can keep the bitrate down.  Besides, you don't always have control
> over the transmission encoding.
> 
> Put another way, slices limit the scope of the damage caused by
> whatever transmission errors make it through your error correction
> layers.
> 
> Anyone who has watched digital TV should appreciate the usefulness of
> slices.

Mmmm. I guess I did not understand what "error concealment" meant. My
dictionary translates it to "dissimulation des erreurs" which more or
less translates back in English as "error hiding", which by my book
means that if an error occurs, it doesn't show, up to a certain amount
of errors you can't recover.

As far as I understand, slices don't allow that, that's why I thought
that better error correction blocks was the solution.

But now that I understand what "error concealment" means, and I see
that slices seem like the right tool for that job.

Sorry for the trouble. I'm learning smth new every day :-)


>>>Did I miss something here, or is it true that x264 can only produce 1
>>>slice per frame???
>>
>>It used until r609 to but it was replaced by a much better and faster
>>multi-threaded encoding mode.
> 
> 
> Multithreaded encoding and slices are really distinct features.
> Slices may be desired, as the OP says, with or without multithreading.

Loren, Out of curiosity, did you remove sliced encoding support
because it was too deeply "interleaved" with multi-threaded support,
so your new multi-threaded encoding mode had to make sliced encoding
go away? Or are there other reasons?

Guillaume

-- 
This is the x264-devel mailing-list
To unsubscribe, go to: http://developers.videolan.org/lists.html



More information about the x264-devel mailing list