[FFmpeg-cvslog] r25343 - trunk/libavformat/rtsp.c

Martin Storsjö martin
Tue Oct 5 18:15:30 CEST 2010


On Tue, 5 Oct 2010, Diego Biurrun wrote:

> On Tue, Oct 05, 2010 at 05:41:21PM +0300, Martin Storsj? wrote:
> > On Tue, 5 Oct 2010, Diego Biurrun wrote:
> > 
> > > On Tue, Oct 05, 2010 at 02:33:39PM +0300, Martin Storsj? wrote:
> > > > On Tue, 5 Oct 2010, diego wrote:
> > > > > 
> > > > > Log:
> > > > > Remove some pointless CONFIG_RTSP_DEMUXER #ifdefs.
> > > > > They reside within a large CONFIG_RTSP_DEMUXER block and are thus pointless.
> > > > 
> > > > They're not pointless in their original intent, but in the way the code 
> > > > currently organized, they are. The separation between the SDP and RTSP 
> > > > demuxers was broken in January in rev 21020 by Ronald, when moving code 
> > > > around, trying to get rid of some forward declarations.
> > > > 
> > > > The attached patch readds these ifdefs, and moves code around so that the 
> > > > SDP demuxer is buildable without the RTSP code, as it should be.
> > > 
> > > How can the SDP demuxer be buildable without the RTSP code when it
> > > uses RTSP functions?
> > 
> > Some of the RTSP functions aren't really specific to RTSP itself, but only 
> > handle "receiving one or more RTP streams as specified in a SDP file". I 
> > guess they could be renamed sdp instead of rtsp for clarity.
> 
> Yes, the naming in this file has confused me since day one.

Yes, at a first glance it's quite confusing.

> Did you test compiling just the sdp, rtsp, muxer and demuxer with and
> without your patch?
> 
>   configure --disable-everything --enable-demuxer=sdp
> 
> does not enable the sdp demuxer here...

Yes, it has a few _deps in configure (should they perhaps be _select 
instead of _deps?). To compile only the sdp demuxer, do this:

./configure --disable-everything --enable-demuxer=mpegts 
--enable-protocol=rtp --enable-demuxer=sdp

Which didn't work prior to my patch, but does once it is applied.

If the RTSP muxer/demuxer is enabled, there's another missing dependency 
on the http protocol, as in the attached patch. With that, and the 
previous patch for reordering the code, the RTSP muxer and demuxer work 
well as standalone as possible, too. (The SDP demuxer is a _deps 
dependency for both of them since they share so much code, so you can't 
build any of them without the SDP demuxer.)

Btw, any objections to changing the rtsp/sdp _deps to _select? Then one 
would be able to simply do --disable-everything --enable-demuxer=rtsp and 
get the right things enabled, without having to hunt for the deps 
manually.

// Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Add-the-http-protocol-as-an-auto-enabled-dependency-.patch
Type: text/x-diff
Size: 879 bytes
Desc: 
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-cvslog/attachments/20101005/0fb41254/attachment.patch>



More information about the ffmpeg-cvslog mailing list