[gst-devel] [gst-cvs] thomasvs gst-ffmpeg: gst-ffmpeg/ gst-ffmpeg/ext/ffmpeg/
Thomas Vander Stichele
thomas at apestaart.org
Wed Feb 14 17:55:23 CET 2007
Hi,
> Out of the patches currently in our mirror , we have:
> * one for implementing autotools support. Well ffmpeg has got a
> simili-configure script which does enough (has the options we need).
> * one for not installing some libraries/tools. Same thing, we can
> configure ffmpeg in the same way.
AFAIK the plan was always to develop these patches then send them
upstream. The autotools one was commited upstream I think (Ronald ?),
and so could be removed.
> I seriously disagree that having those patches (mostly unneeded, or
> that should be commited upstream) and the burden a maintaining a
> mirror outweighs just checking out a specific revision of ffmpeg and
> spending some time insisting on some critical patches going into
> ffmpeg.
>
> Since ffmpeg doesn't want to do releases, I think we should *play the
> same game*. Namely : gst-ffmpeg cvs will only work with ffmpeg svn.
> Then when we do (pre-)releases, we mark which ffmpeg revision number
> that release was done against and ffmpeg will ONLY be able to link
> against that specific version.
I think this idea conflicts with what you said above. Either you pick a
specific revision and fix bugs against that to avoid regressions, or you
track svn, in which case you are *forced* to take the regressions.
The goal of this game is simple: deliver gst-ffmpeg modules of ever
increasing quality without any regressions. Whatever system that makes
this the easiest is pretty much fine.
Tracking a specific revision with which we work (which is what we used
to do *before* we allowed compiling against external ffmpeg) is one way
of doing that - you theoretically mostly have patches to fix regressions
they have in their upstream.
Tracking TRUNK is guaranteed to give you regressions, doesn't sound like
a good idea to me.
Both are orthogonal to the issue of "do we actually submit our patches".
But in the end, the proper way to maintain local patches for a
non-trivial amount of time is to maintain these patch sets as separable
entities.
> This might require not updating our
> dependencies
> This comes to the same as having a mirror... without all the hassle
> of maintaining it our side. It would then be up to distro packagers to
> take the burden of making sure which release/revision of gst-ffmpeg
> they need depending on what ffmpeg version they have installed
> system-wide.
Not sure how your idea solves the distro problem ? If gst-ffmpeg always
follows trunk, they won't be able to pick a release that matches
whatever snapshot they took any more than when we pick a revision for
them.
>
> Also, it wouldn't be too much trouble creating a build-slave that
> compiles gst-ffmpeg against a trunk checkout of ffmpeg anytime there
> is a ffmpeg commit. This would enable us to figure out as early as
> possible when there is a change in the API/ABI and change gst-ffmpeg
> accordingly.
API/ABI is the least of our worries. Sure it is annoying, but you get
told at build time. The worry is about feature regression.
Thomas
More information about the gstreamer-devel
mailing list