Spec URL: http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad.spec SRPM URL: http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-0.10.13-11.fc12.src.rpm Description: GStreamer is a streaming media framework, based on graphs of elements which operate on media data. This package contains plug-ins that aren't tested well enough, or the code is not of good enough quality.
Notes: - gstreamer-plugins-good would need to be updated to remove plugins backported from -bad (such as the Farsight plugins used by telepathy) - this obsoletes the flumpegdemux plugin (which got moved into -bad some time ago, and that we keep syncing with the package) - The code here shouldn't contain any problematic source code, as this code would usually live in library depedencies)
Would this mean that we'd have gst-plugins-bad in Fedora, and some other repos would have additional gst-plugins-bad, or gst-plugins-bad-extras, etc?
(In reply to comment #2) > Would this mean that we'd have gst-plugins-bad in Fedora, and some other repos > would have additional gst-plugins-bad, or gst-plugins-bad-extras, etc? Yep, we'd have the broken code ones, and 3rd-party repos the ones with problematic code.
I still wonder who invented such ugly naming scheme for gstreamer plugins? Who is this completely braindamaged guy, who combines all plugins into several packs, which names says nothing about their actual content. I still hope, that sometimes there will be a great developer, who will split these good/bad/ugly/etc packages into something more suitable for end-users.
I think it is a very good idea to put the eligible parts of -bad into Fedora and I would like to review this. But I would first like to see a review by Spot of the assertion: "The code here shouldn't contain any problematic source code, as this code would usually live in library depedencies [sic])" I find at least some of the muxes worrying.
scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1794399 Spec file: http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free.spec SRPM: http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free-0.10.16-1.fc12.src.rpm
Spot to be clear, you were added to the CC because of comment #5
I'll have to get to this when I have the proper time, but in general, code that simply does mux/demux is okay for Fedora. I'm out of the country for meetings for the next 7 days or so, so this won't happen anytime soon. Hans, if you or someone else can generate a list of the modules and the formats they support (and if possible, the types of operations they do), that will save me some time.
Ok, below is a list, note that it only contains plugins in -bad which have all the code in -bad, I did not list the ones which are just wrappers around external libraries, as I assume that any problematic code for those will live in the libraries not in the wrappers. I also left out plugins which we are already patching into our current gstreamer-plugins-good (former farsight plugins, mpeg demux). And I also left out all the system specific plugins which are plugins which talk to operating system provided API's like oss4 on linux, amc on windows, etc. aacparse: ADIF and ADTS stream parser adpcmdec: adpcm decoder based on ADPCM decoders in libsndfile aiffparse: AIFF (.wav file) header parser amrparse: .amr file header parser asfmux: ASF muxer bayer: bayer decoder (does not seem to use one of the problem algos) camerabin: High level api for DC (Digital Camera) application cdxaparse: Parse a .dat file from (S)VCD into raw MPEG-1 dccp: transfer data over the network via DCCP debugutils: Collection of elements that may be useful for debugging dvdspu: DVD Sub-picture Overlay element festival: Synthesizes plain text into audio freeze: Stream freezer frei0r: glue plugin to be able to use frei0r plugins in gstreamer h264parse: Element parsing raw h264 streams hdvparse: HDV private stream parser id3tag: ID3 v1 and v2 muxing plugin legacyresample: Resamples audio (which used to be in gst-plugins-base) librfb: Connects to a VNC server and decodes RFB stream mpeg4videoparse: MPEG-4 video parser mpegpsmux: MPEG-PS muxer mpegtsmux: MPEG-TS muxer mpegvideoparse: MPEG-1 and MPEG-2 video parser mve: Interplay MVE movie format demux/mux & dec/enc mxf: MXF muxer and demuxer nsf: Nsf decoder nuvdemux: Demuxes MythTVs NuppelVideo .nuv files pcapparse: Element parsing raw pcap streams pnm: PNM encoder / decoder qtmux: QT muxer rawparse: Parses byte streams into raw frames real: Decode real audio / video using realplayer binary plugins scaletempo: Scale audio tempo in sync with playback rate sdp: configure streaming sessions using SDP selector: input/output stream selector elements shapewipe: Shape Wipe transition filter siren: Siren encoder/decoder speed: Set speed/pitch on audio/raw streams (resampler) stereo: Muck with the stereo signal, enhance it's 'stereo-ness' subenc: subtitle encoders tta: TTA lossless audio format handling videomeasure: Various video measurers videosignal: Various video signal analysers vmnc: a decoder for the VMWare VMnc video codec (essentially a serialisation of RFB, the VNC protocol)
(In reply to comment #4) > I still wonder who invented such ugly naming scheme for gstreamer plugins? Who > is this completely braindamaged guy, who combines all plugins into several > packs, which names says nothing about their actual content. Sergio Leone. The other options were 'gstreamer-a-fistful-of-plugins' and 'gstreamer-a-few-plugins-more'. > I still hope, that sometimes there will be a great developer, who will split > these good/bad/ugly/etc packages into something more suitable for end-users. More seriously, I would think this is less of an issue with the current gst plugin auto-install.
Updated for 0.10.17: http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free-0.10.17-1.fc12.src.rpm http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free.spec and build at: http://koji.fedoraproject.org/koji/taskinfo?taskID=1811660
Added LADSPA plugins for bug 540198: http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free.spec http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free-0.10.17-2.fc12.src.rpm
Okay. Apologies for the delay in reviewing this: The following items are _NOT_ acceptable for Fedora: aacparse: ADIF and ADTS stream parser amrparse: .amr file header parser asfmux: ASF muxer cdxaparse: Parse a .dat file from (S)VCD into raw MPEG-1 dvdspu: DVD Sub-picture Overlay element h264parse: Element parsing raw h264 streams hdvparse: HDV private stream parser mpegpsmux: MPEG-PS muxer mpegtsmux: MPEG-TS muxer mpeg4videoparse: MPEG-4 video parser mpegvideoparse: MPEG-1 and MPEG-2 video parser qtmux: QT muxer siren: Siren encoder/decoder The following items are acceptable for Fedora: adpcmdec: adpcm decoder based on ADPCM decoders in libsndfile aiffparse: AIFF (.wav file) header parser bayer: bayer decoder (does not seem to use one of the problem algos) camerabin: High level api for DC (Digital Camera) application dccp: transfer data over the network via DCCP debugutils: Collection of elements that may be useful for debugging festival: Synthesizes plain text into audio freeze: Stream freezer frei0r: glue plugin to be able to use frei0r plugins in gstreamer id3tag: ID3 v1 and v2 muxing plugin legacyresample: Resamples audio (which used to be in gst-plugins-base) librfb: Connects to a VNC server and decodes RFB stream mve: Interplay MVE movie format demux/mux & dec/enc mxf: MXF muxer and demuxer nsf: Nsf decoder nuvdemux: Demuxes MythTVs NuppelVideo .nuv files pcapparse: Element parsing raw pcap streams pnm: PNM encoder / decoder rawparse: Parses byte streams into raw frames scaletempo: Scale audio tempo in sync with playback rate sdp: configure streaming sessions using SDP selector: input/output stream selector elements shapewipe: Shape Wipe transition filter speed: Set speed/pitch on audio/raw streams (resampler) stereo: Muck with the stereo signal, enhance it's 'stereo-ness' subenc: subtitle encoders tta: TTA lossless audio format handling videomeasure: Various video measurers videosignal: Various video signal analysers vmnc: a decoder for the VMWare VMnc video codec (essentially a serialisation of RFB, the VNC protocol) I question the value of including: real: Decode real audio / video using realplayer binary plugins Since it does nothing without the proprietary real player bits. However, there is no legal reason to prevent it.
Spot, Thanks for the review. A bit of an obious question, but to be sure: this means we cannot use pristine upstream tarbals, but must use a special one with all the directories for the above not acceptable plugins removed, correct ? Thanks, Hans
That's correct.
(In reply to comment #4) > I still wonder who invented such ugly naming scheme for gstreamer plugins? I don't think you wondered really hard because it's not that hard to find who did. It was me. > Who > is this completely braindamaged guy, who combines all plugins into several > packs, which names says nothing about their actual content. If memory serves, the same guy that you interviewed with for a job here! > I still hope, that sometimes there will be a great developer, who will split > these good/bad/ugly/etc packages into something more suitable for end-users. And I still hope that some people will not assume everyone else is stupid just because they're talking on the internet.
(In reply to comment #13) > Okay. Apologies for the delay in reviewing this: > > The following items are _NOT_ acceptable for Fedora: > > aacparse: ADIF and ADTS stream parser > amrparse: .amr file header parser > asfmux: ASF muxer > cdxaparse: Parse a .dat file from (S)VCD into raw MPEG-1 > dvdspu: DVD Sub-picture Overlay element > h264parse: Element parsing raw h264 streams > hdvparse: HDV private stream parser > mpegpsmux: MPEG-PS muxer > mpegtsmux: MPEG-TS muxer > mpeg4videoparse: MPEG-4 video parser > mpegvideoparse: MPEG-1 and MPEG-2 video parser > qtmux: QT muxer > siren: Siren encoder/decoder Apart from the muxers, I actually think the parsers are fine. We already have parsers for MP3s in Fedora, as well as mpegvideoparse (including the demuxer) in gstreamer-plugins-flumpegdemux.
For what it's worth, most of these parsers are 99% GObject/GStreamer boilerplate stuff - and the rest of the code that does the actual parsing is not that different from code that is already contained in the typefinders in gst-plugins-base, esp. in case of the audio parsers. > qtmux Doesn't Fedora ship qtdemux from gst-plugins-good? If so, why is qtmux different?
After reconsideration, these are the only items (from this list) which we cannot include in Fedora: dvdspu: DVD Sub-picture Overlay element siren: Siren encoder/decoder
Updated: http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free.spec http://people.fedoraproject.org/~hadess/gstreamer-plugins-bad/gstreamer-plugins-bad-free-0.10.17-3.fc12.src.rpm
Lifting FE-Legal, thanks for your help Bastien.
Looks good to me. (And sorry for asking so many questions on IRC, Bastien.)
New Package CVS Request ======================= Package Name: gstreamer-plugins-bad-free Short Description: GStreamer streaming media framework "bad" plug-ins Owners: hadess Branches: F-12 devel InitialCC: company
CVS done (by process-cvs-requests.py).
Fixed in rawhide. Will push to F12 in the next round of gstreamer updates.