[gst-devel] Use of own buffer_alloc function

Daniel James Laird daniel.j.laird at nxp.com
Wed Mar 11 14:18:25 CET 2009


Okay, many thanks for the reply.

So if I understand this correctly the filesrc supplies the buffer to the demux
The demux then 'demuxes' this data and passes it to the downstream component.  I.E a decoder.

The demux does not ask the sink for a buffer to output the 'demuxed' data into.

Is there anyway that I can get DMA to work then?
Because if the demux is not going to ask for buffers then I cannot provide a buffer from a memory region that can be dma'd,.

I really would like to be able to get the demux to directly demux data into memory buffers that I provide and then can be dma'd to my decoder.

As this is all new I am probably not quite getting it!
Many thanks for the help so far.
Daniel Laird  


-----Original Message-----
From: Edward Hervey [mailto:bilboed at gmail.com] 
Sent: 2009 Mar 11 12:56
To: Discussion of the development of GStreamer
Subject: Re: [gst-devel] Use of own buffer_alloc function

On Wed, 2009-03-11 at 13:27 +0100, Daniel James Laird wrote:
> All,
> 
> I am have real difficulty in getting a buffer_alloc function in my sink
>  class that extends GstVideoSink to work. At the moment it does not
>  even appear to be being called!
> 
> I have registered with the base sink i.e
> basesink->buffer_alloc = GST_DEBUG_FUNCPTR(my_buffer_alloc);
> 
> Yet in my sink it seems that the function is not getting called.
> However render is getting called and doing as expected
> 
> The graph I have created is something like this:
> filesrc -> demux -> switch -> queue -> my_audio_sink
>                  -> switch -> queue -> my_video_sink
> 
> The Audio and video sink in my case act as end of line as they are in
>  fact input to my on board embedded decoders etc.  I want to be able to
>  give the demux a buffer so that I can then DMA it into my decoder.  
>  Is this possible? It certainly appeared so in the docs.  

  That's because demuxers don't do downstream buffer_alloc (they don't
need to since the data is already allocated in filesrc).

  Since you're a decoder AND a sink you don't need to implement
bufferalloc.

   Edward

> 
> Any help much appreciated.
> Daniel Laird
> 
> ------------------------------------------------------------------------------
> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
> powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
> easily build your RIAs with Flex Builder, the Eclipse(TM)based development
> software that enables intelligent coding and step-through debugging.
> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
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