This patchset implements optional MP4A-LATM RTP payload
by adding a muxer-specific private AVOption to the RTP muxer.
This is IMO in principle the correct way of handling something,
which really is an option changing the muxer's behaviour.

The messy thing about this approach is that all chained
muxers that use chained RTP muxers need to declare a similar
public AVOption to allow callers to set it. This patchset
implements it for RTSP and mov, but not e.g. for SAP (yet at least).

The earlier approach by using a flag value in AVFormatContext
flags simplifies this issue, since the flag value can be set on
the RTSP and mov muxers without modifying them. A global flag value
for something specific to one muxer is ugly, but since it has to
be passed through many different chained muxers, perhaps it
still would make sense.

The last commit of the patchset isn't directly related to this,
but cleans up the RTP hinting flag that now can be implemented
much cleaner as an AVOption instead.

Juan Carlos Rodriguez (1):
  rtpenc: MP4A-LATM payload support

Martin Storsjö (7):
  sdp: Allow passing an AVFormatContext to the SDP generation
  sdp: Reindent after the previous commit
  rtpenc_chain: Pass the latm option through, if set on the source
    format
  rtspenc: Add a latm AVOption
  movenc: Pass the RTP AVFormatContext to the SDP generation
  movenc: Add an AVOption for enabling LATM in the RTP hinting
  movenc: Deprecate the global RTP hinting flag, use a private AVOption
    instead

 libavcodec/Makefile        |    2 +-
 libavformat/Makefile       |    1 +
 libavformat/avformat.h     |    2 +-
 libavformat/internal.h     |    4 +-
 libavformat/movenc.c       |   48 ++++++++++++++++--
 libavformat/movenc.h       |    4 ++
 libavformat/options.c      |    2 +-
 libavformat/rtpenc.c       |   19 +++++++-
 libavformat/rtpenc.h       |    4 ++
 libavformat/rtpenc_chain.c |    6 ++
 libavformat/rtpenc_latm.c  |   61 ++++++++++++++++++++++
 libavformat/rtsp.h         |    8 +++
 libavformat/rtspenc.c      |   14 +++++
 libavformat/sdp.c          |  122 ++++++++++++++++++++++++++++++++++++--------
 14 files changed, 267 insertions(+), 30 deletions(-)
 create mode 100644 libavformat/rtpenc_latm.c

-- 
1.7.3.1

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to