On Mon, 28 Jan 2013, Olav Vitters wrote:
To allow Totem to play back any file, in practice you want to install
GStreamer 1.0 from the tainted section.
Ideally to play back a lot of files, you'll want:
gstreamer1.0-dts
gstreamer1.0-faad
gstreamer1.0-x264
gstreamer1.0-amrwbdec
However, I cannot rely on those in totem.spec, because they are in the
tainted section.
I see two ways of solving this:
1. Building a non-tainted and a tainted totem
The tainted one has Requires: for the tainted gstreamer 1.0 packages
you'll very likely want.
Benefit:
- Avoids Gstreamer 1.0 plugin packages from depending on lots of
other packages
Drawback:
- Has to be repeated for every video player that uses GStreamer
- Tracking subpackages can be difficult
- Totem tainted version has a lot more dependencies
2. Ensure that installing the tainted gstreamer1.0 plugin packages
installs all related tainted plugin packages
Example:
gstreamer1.0-plugins-bad package in tainted should have:
Requires: gstreamer1.0-dts
Requires: gstreamer1.0-faad
Due to subpackages possibly being moved in and out of the tainted
section, the only thing I want to change is the Requires. I'm not
planning to merge the subpackage.. even if it maybe is a little bit
weird to have the main package always require the subpackage.
Benefit:
- Ensures that enabling tainted section makes video playing 'work'
in any player that uses GStreamer
- List of subpackages is maintained in just one place
Drawback:
- Increases the size + dependencies of the tainted gstreamer
subpackage
- Cannot just install just one tainted subpackage, have to install
them all at once
I think #2 is the best option. If someone enables tainted, then likely
they just want video playing to work. Furthermore, this avoids changing
all the video players which could use GStreamer.
Have you noticed gstreamer0.10-decoders and gstreamer0.10-decoders-audio ?
Those can do the same as your point 2. but for all plugins independent of
the source packages. So basically task- packages for gstreamer plugins
that totem, other players and transcoders/editors can use.
That way you get meta packages for demuxers, muxers, audio-decoders,
audio-encoders, video-decoders, and video-encoders which depend on the
standard/typical plugins.
Christiaan