[FFmpeg-user] Switch "on" Reference Picture Selection (RPS) in the libavcodec/ituh263enc.c Source File

Oussama Stiti oussama.stiti at gmail.com
Wed Mar 21 09:05:41 CET 2012


An H.264 error resilience tool called Reference Picture Selection (RPS) is
able to automatically identify and inform the encoder (server) which Group
of Blocks (slices) are damaged. These decoding error notifications could
refer to MacroBlocks or Slices. Various feedback error signalling modes
have been also defined (ACK, NACK, ...).
I just want to activate this tool on my ffmpeg source code, and i think
that it's a modification in the file $HOME/ffmpeg/libavcodec/ituh263enc.c .
Does anyone have any information about that ? How to activate it ? I need
notifications of damaged frames when i receive a H264 bitstream.

Here is, few lines of code in ituh263enc.c:

 put_bits(&s->pb,1, s->custom_pcf);
        put_bits(&s->pb,1, s->umvplus); /* Unrestricted Motion Vector */
        put_bits(&s->pb,1,0); /* SAC: off */
        put_bits(&s->pb,1,s->obmc); /* Advanced Prediction Mode */
        put_bits(&s->pb,1,s->h263_aic); /* Advanced Intra Coding */
        put_bits(&s->pb,1,s->loop_filter); /* Deblocking Filter */
        put_bits(&s->pb,1,s->h263_slice_structured); /* Slice Structured */
        *put_bits(&s->pb,1,0); /* Reference Picture Selection: off */*
        put_bits(&s->pb,1,0); /* Independent Segment Decoding: off */
        put_bits(&s->pb,1,s->alt_inter_vlc); /* Alternative Inter VLC */
        put_bits(&s->pb,1,s->modified_quant); /* Modified Quantization: */
        put_bits(&s->pb,1,1); /* "1" to prevent start code emulation */
        put_bits(&s->pb,3,0); /* Reserved */

Thank you.

*O. Stiti*

More information about the ffmpeg-user mailing list