lavc: Deprecate avctx.rtp_callback field
authorVittorio Giovara <vittorio.giovara@gmail.com>
Thu, 19 Nov 2015 08:45:01 +0000 (09:45 +0100)
committerVittorio Giovara <vittorio.giovara@gmail.com>
Fri, 20 Nov 2015 20:05:20 +0000 (21:05 +0100)
commit462a54e2291e1fa18e1f1254d09739dfbb795617
treec00cbb330010343b3f34904f867978b513494891
parent8a9de5c52401aa1e87bdb147524831c640d1ec53
lavc: Deprecate avctx.rtp_callback field

This function returns the encoded data of a frame, one slice at a time
directly when that slice is encoded, instead of waiting for the full
frame to be done. However this field has a debatable usefulness, since
it looks like it is just a convoluted way to get data at lowest
possible latency, or a somewhat hacky way to store h263 in RFC-2190
rtp encapsulation.

Moreover when multi-threading is enabled (which is by default) the order
of returned slices is not deterministic at all, making the use of this
function not reliable at all (or at the very least, more complicated
than it should be).

So, for the reasons stated above, and being used by only a single encoder
family (mpegvideo), this field is deemed unnecessary, overcomplicated,
and not really belonging to libavcodec. Libavformat features a complete
implementation of RFC-2190, for any other case.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
doc/APIchanges
libavcodec/avcodec.h
libavcodec/mpegvideo_enc.c
libavcodec/version.h