VA plugins?

arnaud tonda arnaud.tonda at gmail.com
Mon Jul 11 04:14:33 PDT 2011


Hi Julien,

where can i find the fluendo plugins?
are they free to use? licensed?

Best regards

Arnaud

the main problem of the gstreamer vdpau plugin

2011/7/11 Julien Moutte <julien at fluendo.com>
>
> Hi Arnaud,
> The Fluendo VA decoder is a binary GStreamer plugin that can be installed either in /usr/lib/gstreamer-0.10 or in ~/.gstreamer-0.10/plugins
> It will provide 3 elements :
> fluvadec : a video decoder supporting MPEG2, VC1, H264 and MPEG4 Part 2 on some platforms
> fluvasink : a video sink rendering hardware accelerated video frames in an XWindow like xvimagesink does
> fluvaclutsink : a video sink rendering hardware accelerated video frames in a Clutter scene
> Those elements are compatible with playbin2 and decodebin2 in GStreamer version >= 0.10.26
> The plugin will dynamically load either VDPAU or LIBVA symbols and is compatible with various ABI versions of those libraries.
> Best regards,
>
> Julien Moutte
> CTO
> Fluendo
> San Francisco, USA & Barcelona, SPAIN
> Tel BCN. +34 933 175 153
> Tel USA. +1 415 773 5353
>
> www.fluendo.com & www.moovida.com
>
> P Please consider the environment before printing this e-mail.
>
>
> On Mon, Jul 11, 2011 at 11:26 AM, arnaud tonda <arnaud.tonda at gmail.com> wrote:
>>
>> Hi,
>>
>> two more questions.
>>
>> the first is for Julien Moutte.
>>
>> How works fluendo decoders? is there some package to install?
>>
>>
>> the second one is :
>>
>> considering using of playbin2 or decodebin, is it possible (is c
>> source or other) to force the call of ffmpeg plugins?
>> i have installed gwenole gst_vaapi and it work like a charm in command line.
>> But when i try to use vaapi in a light c source code project,
>> vaapiDecode, and vaapiSink are called, but not the "compatible"
>> demuxers like ffdemux_matroska_webm of ffdemux_mpegts.
>>
>> i tried to modify the rank of these demuxers and set matroskademux's
>> rank to none, but in this case no demuxer is found for Mkv in my case.
>>
>> In fact, one difference in gstreamer debug traces between gst-launch
>> and my code is that in command line i can see the registration of
>> ffmpeg typefind functions :
>>
>>
>> ***********
>> 0:00:00.138976669 18418  0x8dba008 INFO      GST_PLUGIN_LOADING
>> gstplugin.c:800:gst_plugin_load_file: plugin
>> "/usr/lib/gstreamer-0.10/libgstplaybin.so" loaded
>> 0:00:00.139073349 18418  0x8dba008 INFO     GST_ELEMENT_FACTORY
>> gstelementfactory.c:361:gst_element_factory_create: creating element
>> "playbin2" named "play-bin"
>> 0:00:00.673985428 18418  0x8dba008 INFO            GST_TYPEFIND
>> gsttypefind.c:82:gst_type_find_register: registering typefind function
>> for fftype_aea
>> 0:00:00.674260228 18418  0x8dba008 INFO            GST_TYPEFIND
>> gsttypefind.c:82:gst_type_find_register: registering typefind function
>> for fftype_anm
>> 0:00:00.674385867 18418  0x8dba008 INFO            GST_TYPEFIND
>> gsttypefind.c:82:gst_type_find_register: registering typefind function
>> for fftype_apc
>> 0:00:00.674529427 18418  0x8dba008 INFO            GST_TYPEFIND
>> gsttypefind.c:82:gst_type_find_register: registering typefind function
>> for fftype_applehttp
>> 0:00:00.674728147 18418  0x8dba008 INFO            GST_TYPEFIND
>> gsttypefind.c:82:gst_type_find_register: registering typefind function
>> for fftype_avs
>> ...
>> ***********
>>
>> this result on the load of the ffmpeg library.
>>
>> in the case of my code, i never see these lines and so
>> ffdemux_matroska_webm is never selected.
>>
>> if anyone can help.
>>
>> Best regards
>>
>>
>> 2011/7/5 Edward Hervey <bilboed at gmail.com>:
>> > Hi,
>> >
>> > On Tue, 2011-07-05 at 00:42 +0200, arnaud tonda wrote:
>> > [...]
>> >> I was facing the same problem. the "not negotiated" error. in fact, it
>> >> seems that the gwenole's decoder wan't some mandatory informations on
>> >> demuxer caps (height, width, framerate). it seems that original
>> >> demuxers (matroskademux, mpegtsdemux) don't provide these
>> >> informations. it's not the case if you try to construct a pipeline
>> >> with ffmpeg demuxers like ffdemux_mpegts or ffdemux_matroska_webm.
>> >> with these demuxer the video play fines.
>> >
>> >  Adding a 'parsed=True' in the sink pad template caps of the decoder
>> > will normally force decodebin to add a parser before the decoder...
>> > which will automatically get width/height/framerate from the stream and
>> > set it before pushing any data.
>> >
>> >  The other alternative is having the decoder or demuxer being 'richer'
>> > and extracting that information itself (it can for 'some' codecs)... but
>> > that would be duplicating the work already done in the standalone
>> > parsers.
>> >
>> >  So, to summarize :
>> >  * Each type of element should ideally only do one task (a demuxer
>> > should demux/deinterleave, a parser should extra bitstream information,
>> > and a decoder should be given stream information and data and just
>> > decode).
>> >  * Duplicating bitstream parsing into each element would incurr extra
>> > work and code duplication (and therefore risk of divergence).
>> >
>> >  A middle ground solution which is being worked on by Thibault Saunier
>> > and others right now is to write a low-lewel set of bitstream parsing
>> > for various common video formats (mpeg 1/2/4, h264, vc1 maybe) so that
>> > we can have a unique codebase for:
>> >  * Decoder wrappers like vdpau/vaapi to use to parse the stream and
>> > extract some information,
>> >  * Parser elements (which would then just be ligthweight elements
>> > wrapping those parsing methods),
>> >  * Demuxers and muxers, to extra basic information when needed like
>> > frame type if not present, width/height/framerate/par ...,
>> >  * Payloaders/Depayloaders
>> >  * ....
>> >
>> >   Edward
>> >
>> >>
>> >> >
>> >> >  I think Gwenole mentionned some interest in reviving it. If you give
>> >> > more details on the issue you're seeing, he could point you to how to do
>> >> > it (or even fix it ! :)).
>> >> >
>> >> >  Edward
>> >> >
>> >> > >
>> >> > > _______________________________________________
>> >> > > gstreamer-devel mailing list
>> >> > > gstreamer-devel at lists.freedesktop.org
>> >> > > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >> >
>> >> >
>> >> > _______________________________________________
>> >> > gstreamer-devel mailing list
>> >> > gstreamer-devel at lists.freedesktop.org
>> >> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>
>> >> Arnaud
>> >> _______________________________________________
>> >> gstreamer-devel mailing list
>> >> gstreamer-devel at lists.freedesktop.org
>> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>> >
>> > _______________________________________________
>> > gstreamer-devel mailing list
>> > gstreamer-devel at lists.freedesktop.org
>> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>>
>>
>>
>> --
>> Arnaud Tonda
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>



--
Arnaud Tonda


More information about the gstreamer-devel mailing list