IDeckLinkMemoryAllocator advice needed

Ask software engineering and SDK questions for developers working on Mac OS X, Windows or Linux.
  • Author
  • Message

Bruce Payan

  • Posts: 24
  • Joined: Wed Mar 27, 2013 11:39 am

IDeckLinkMemoryAllocator advice needed

PostSun May 17, 2015 11:29 pm

I have an incoming stream of RGBA32 video frames, arriving as previously allocated CVPixelBufferRefs on MacOSX 10.10.

To send them off to a BMD Decklink device, I'm doing a memcpy() to an allocated BMD video frame, created with IDeckLinkOutput::CreateVideoFrame.

This works, but seems very expensive to me. Too much copying.

Has anyone utilized the IDeckLinkMemoryAllocator class methods AllocateBuffer(), ReleaseBuffer(), Commit(), Decommit() to the point that it has eliminated the need for unnecessary memory copying?

I'm unclear as to how the BMD SDK deals with user-allocated memory. For all I know, it does a memcpy() anyway.

An alternative plan would be to set up a buffer pool of vImageBuffers that the Mac API can utilize. I can then hand these off to the BMD SDK also.

Bruce Payan

Return to Software Developers

Who is online

Users browsing this forum: gianpat and 6 guests