[vlc-devel] [PATCH V3] dcp: Creation of access-demux module for	DCP (using asdcplib)
    Rémi Denis-Courmont 
    remi at remlab.net
       
    Mon Sep  2 19:00:58 CEST 2013
    
    
  
Le lundi 2 septembre 2013 16:42:10 Rémi Denis-Courmont a écrit :
> On Mon, 02 Sep 2013 16:16:36 +0200, Nicolas Bertrand
> 
> <nicoinattendu at gmail.com> wrote:
> > If somebody have an idea to avoid the memcpy ....
> > PicFrameBuff.Data() is defined as
> > 
> >   class FrameBuffer
> >   
> >      {
> >      
> >        ASDCP_NO_COPY_CONSTRUCT(FrameBuffer);
> >      
> >      protected:
> >        byte_t* m_Data;          // pointer to memory area containing
> > 
> > frame data
> > 
> >        }
> > 
> > and so how to write something like p_video_frame->p_buffer
> > =&PicFrameBuff.Data
> 
> If the library is designed properly, it should allow subclassing the frame
> buffer so as to wrap custom memory, namely VLC picture_t.
Hmm, that's for decoders.
For demuxers, there are two ways to avoid memory copying. A custom block_t 
allocator/deallocator can be created with block_Init(). This is more flexible 
but more prone to implementation errors.
Alternatively, custom callbacks for output frame buffer allocation can be 
provided to the library (most libraries support that).
-- 
Rémi Denis-Courmont
http://www.remlab.net/
    
    
More information about the vlc-devel
mailing list