Gstreamer-plugins splitting ports .. needs testing and feed back ?

Michael Johnson ahze at ahze.net
Wed Oct 6 13:20:25 PDT 2004


On Oct 6, 2004, at 3:25 AM, Jose M Rodriguez wrote:

> On Wednesday 06 October 2004 08:43, Michael Johnson wrote:
>> On Oct 6, 2004, at 2:17 AM, Jose M Rodriguez wrote:
>>> El Miércoles, 6 de Octubre de 2004 02:51, Joe Marcus Clarke
> escribió:
> [...]
>>>> I don't really think we need a selector port, though that's
>>>> certainly a possibility.  These plug-ins are pretty useless by
>>>> themselves. They're really only useful if another application will
>>>> load them (yes, you can use the GST command line tools, but how
>>>> many users really do that?).
>>>
>>> Any way you choose, what you can't do is depend on a port with
>>> variable content by the presence of a file/library.  This is the
>>> real thread.
>>>
>>> If this is a real plugin architecture, the ports may detect just
>>> what is
>>> installed.
>>>
>>> I also think that a port selector isn't needed.
>>>
>>> At last here, the safest and easy path seems:
>>>
>>> - Convert multimedia/gstreamer-plugin in a base plugin port with
>>> fixed content.
>>>   * All that 'you really want' in the most basic install.
>>>  The actual bento build must be a good base.
>>>   * All that is critical enough to not safe build out of this.
>>>   * Take off auto detection.
>>>
>>> - Add external ports to the rest.
>>
>> What should the "most basic install" be? which plugins should it  be
>> built with?
>
> A really good question for the port maintainer.
>
> This is more a 'logistic' problem.  If gstreamer have 50 diff plugins
> and you want implement all in a per-port basic, you may have 51 ports
> to maintain, carry on dependencies ...
>
> This is really a big effort that must be take by the port maintainer.
>
> If you can name 20 that allway be in, you have 31 ports.  You can  
> refine
> this in future works.  And you have more chances that this can be
> assumed by the port maintainer.
>


Actually it won't be much different than it is now, just more ports
Please take a look at
Makefile from xvid
and Makefile.common from gstreamer-plugins
http://ahze.net:8080/cgi-bin/cvsweb.cgi/~checkout~/gst-ports/ 
multimedia/gstreamer-plugins-xvid/Makefile?rev=1.1.1.1;content- 
type=text%2Fplain
http://ahze.net:8080/cgi-bin/cvsweb.cgi/~checkout~/gst-ports/ 
multimedia/gstreamer-plugins/Makefile.common?rev=1.11;content- 
type=text%2Fplain

Everything is still in gstreamer-plugins, its setup as master/slave  
ports so you basically only edit one file.

Michael

> So, about the big question, you have really two.
>
> - What must be take-off
> things like arts and some special supports.  Even seems that kde@ must
> be responsible off dependencies on gstreamer-plugins-arts from
> kdemultimedia (as an example).
>
> - What must be in
> first, things that must be problematic out of the base port.
> second, what allways be there.  Take a package from bento, expand the
> tarball and examine the plugins.
>
> If you allready have work done to make ports for every plugin, make the
> gstreamer-plugins port depends on these.  But it must be a fixed
> content port and you must have just only one keyword to select it.
>
>> I've got most of the ports that work with gstreamer-plugins patched
>> for the new gstreamer-plugins and none want the exact same plugins.
>>
>
> You may rework this after the gstreamer-plugins redef.  The ports must
> depend on gstreamer-plugins and the gstreamer-plugins-{extra} they
> really need.  You may make this via keywords if you like.
>
>> Here's what I have so far..
>> gnomemedia2/Makefile:USE_GSTREAMER=     cdparanoia
>> jamboree/Makefile:USE_GSTREAMER+=               esound
>> jamboree/Makefile:USE_GSTREAMER+=               mad vorbis
>> marlin/Makefile:USE_GSTREAMER=  cdparanoia
>> rhythmbox/Makefile:GST_PLUGINS= musicbrainz gnomevfs flac mad
>> rhythmbox/Makefile:USE_GSTREAMER+=              faad
>> rhythmbox/Makefile:USE_GSTREAMER+=              ${GST_PLUGINS}
>> rhythmbox/Makefile:USE_GSTREAMER+=              ${GST_PLUGINS}
>> rhythmbox/Makefile:USE_GSTREAMER+=              vorbis
>> sound-juicer/Makefile:USE_GSTREAMER=    cdparanoia vorbis flac lame
>> tunesbrowser/Makefile:USE_GSTREAMER=    mad
>> tunesbrowser/Makefile:USE_GSTREAMER+=   esound
>> nautilus-media/Makefile:USE_GSTREAMER=  gnomevfs libpng vorbis mad
>> flac
>>
>> Michael
>>
>>>>>> Splitting the port into multiple ports would give us the ability
>>>>>> to package any port.  An obvious example of this is the upcoming
>>>>>> gnomemedia2 which will require CD Paranoia support in gst.
>>>>>>
>>>>>> The major disadvantage to this approach is the overwhelming
>>>>>> administrative burden it adds.  It's a pain to test [py-]libxml2
>>>>>> and [py-]libxslt.  I can't imagine what a gstreamer-plugins
>>>>>> update will do. For that reason, it might be nice to still have
>>>>>> the ability to test-build all plug-ins in a monolithic way
>
> --
>   josemi



More information about the freebsd-gnome mailing list