[gst-devel] Implementation of a gstreamer source

Emmanuel Pacaud emmanuel at gnome.org
Mon Apr 12 20:20:41 CEST 2010


Hi,

Le lundi 12 avril 2010 à 17:58 +0200, Josh D a écrit :
> I am working on a very similar project. I have created a source
> element for the National Instruments IMAQ series of capture cards
> (Camera Link and LVDS).
> 
> Yes you want to use GstPushSrc since cameras are live sources, that is
> what I use for my niimaqsrc.

Nice to hear I'm on the right track...

> Most GStreamer elements work with raw data, depending on what format
> you're talking about. The majority of elements work in YUV, but you
> can always use ffmpegcolorspace to convert from raw gray or RGB to
> that.

I'm mainly interested in 8 bits gray for now.

> I have a particular interest in high bit depth cameras, typically 12
> to 16-bits per channel, though mostly a single channel (grayscale).
> There are very few elements right now that work with
> video/x-raw-gray,depth=16, including ffmpegcolorspace. I plan to write
> many elements to work with these higher bit depths. So far the only
> one I've written is a videolevels element which converts 16-bit to
> 8-bit given pairs of lower/upper input and output levels (linear
> stretch). I will also add auto-stretch and setting of a LUT. Later I
> would like to implement tone mapping algorithms to better take
> advantage of the higher bit depth.
> 
> If you'd like I can send you my implementation of the niimaqsrc
> element;

That would be nice, as long as the license allows me to use it for a
LGPL development.

> at some point I plan to start an online repository if my work will
> allow it.
> I am also very interested in your project because at some point I plan
> to start using GigE Vision and Firewire cameras.

The current state or Aravis should make it usable for GigEVision
cameras. Firewire support is not implemented yet, and I probably won't
have time to work on it soon. 

Regards,

Emmanuel.

> On Mon, Apr 12, 2010 at 9:49 AM, Emmanuel Pacaud <emmanuel at gnome.org>
> wrote:
>         Hi,
>         
>         I'm currently developing an industrial camera acquisition
>         library,
>         Aravis.
>         
>         http://git.gnome.org/browse/aravis/
>         http://blogs.gnome.org/emmanuel/category/aravis/
>         
>         I'm now trying to write a gstreamer source element using this
>         library.
>         And since I don't know much about gstreamer, I'm looking for
>         some
>         advices for this work.
>         
>         Aravis is using a pool of buffers, in which it stores complete
>         raw
>         images, in different formats depending on the camera
>         capabilities.
>         
>         Is GstPushSrc the right base class for an Aravis source
>         element ?
>         
>         Does gstreamer provides elements which are able to understand
>         a stream
>         of raw image buffers ?
>         
>         Is there an existing gstreamer plugin similar to what I want
>         to
>         implement ?
>         
>         Thanks in advance,
>         
>         Emmanuel.
>         
>         
>         
>         
>         ------------------------------------------------------------------------------
>         Download Intel&#174; Parallel Studio Eval
>         Try the new software tools for yourself. Speed compiling, find
>         bugs
>         proactively, and fine-tune applications for parallel
>         performance.
>         See why Intel Parallel Studio got high marks during beta.
>         http://p.sf.net/sfu/intel-sw-dev
>         _______________________________________________
>         gstreamer-devel mailing list
>         gstreamer-devel at lists.sourceforge.net
>         https://lists.sourceforge.net/lists/listinfo/gstreamer-devel 
> 







More information about the gstreamer-devel mailing list