cancel
Showing results for 
Search instead for 
Did you mean: 

FirePro Development

boxerab
Challenger

Digital Video Pipeline

Jump to solution

A bit off topic, but: I am interested in building a digital video pipeline using AMD hardware.

See this link for NVidia pipeline:

NVIDIA Quadro Digital Video Pipeline for Broadcasting | NVIDIA

I would like to use OpenCL to compress the video.

Is this currently possible with AMD products: i.e. SDI input directly to GPU memory, for processing?

0 Kudos
Reply
1 Solution

Accepted Solutions
amit_agarwal
Staff
Staff

Re: Digital Video Pipeline

Jump to solution

Q. Directly feed data from SDI to GPU memory

A. Yes.  It is possible to directly feed data from SDI input to GPU memory  on AMD FirePro dGPUs.  This is called DirectGMA. 

DirectGMA removes CPU bandwidth and latency bottlenecks and optimizes communication between GPUs within a system as well as third-party devices like SDI I/O cards.  DirectGMA bypasses any need to traverse the host’s main memory, reducing  CPU utilization and helping to avoid redundant transfers over PCIe, resulting in high-throughput, low-latency data transfers.

Please refer to the following links for more information

http://developer.amd.com/community/blog/2014/09/08/amd-firepro-gpus-directgma/

http://www.amd.com/Documents/SDI-tech-brief.pdf

https://www.amd.com/Documents/50550-FirePro-SDI-Link-Group.pdf

Q. Compress the video using OpenCL

A. Yes.  OpenCL can be used to write video compression algorithm.  However AMD GPUs have two engines specifically designed to compress – decompress video.  AMDs Universal Video Decoder (UVD) which decodes compressed data and the Video Coding Engine (VCE) which compresses raw input data. 

AMD MediaSDK leverages the AMD platform for multimedia processing.  Media SDK v1.1 introduced the AMD Media Framework (AMF) library for video encoding and decoding.  The release provides basic samples that enable you to realize these video pipeline.

View solution in original post

0 Kudos
Reply
8 Replies
amit_agarwal
Staff
Staff

Re: Digital Video Pipeline

Jump to solution

Q. Directly feed data from SDI to GPU memory

A. Yes.  It is possible to directly feed data from SDI input to GPU memory  on AMD FirePro dGPUs.  This is called DirectGMA. 

DirectGMA removes CPU bandwidth and latency bottlenecks and optimizes communication between GPUs within a system as well as third-party devices like SDI I/O cards.  DirectGMA bypasses any need to traverse the host’s main memory, reducing  CPU utilization and helping to avoid redundant transfers over PCIe, resulting in high-throughput, low-latency data transfers.

Please refer to the following links for more information

http://developer.amd.com/community/blog/2014/09/08/amd-firepro-gpus-directgma/

http://www.amd.com/Documents/SDI-tech-brief.pdf

https://www.amd.com/Documents/50550-FirePro-SDI-Link-Group.pdf

Q. Compress the video using OpenCL

A. Yes.  OpenCL can be used to write video compression algorithm.  However AMD GPUs have two engines specifically designed to compress – decompress video.  AMDs Universal Video Decoder (UVD) which decodes compressed data and the Video Coding Engine (VCE) which compresses raw input data. 

AMD MediaSDK leverages the AMD platform for multimedia processing.  Media SDK v1.1 introduced the AMD Media Framework (AMF) library for video encoding and decoding.  The release provides basic samples that enable you to realize these video pipeline.

View solution in original post

0 Kudos
Reply
boxerab
Challenger

Re: Digital Video Pipeline

Jump to solution

Thanks, Amit. This is exactly what I am looking for.

I looked at the spec sheet for the FirePro V7900, and I see that it only supports PCIe 2.0 and OpenCL 1.1.

Is there a plan to upgrade this to PCI 3 and OpenCL 1.2 ?  I have a video compression kernel that is written

for OpenCL 1.2.

0 Kudos
Reply
boxerab
Challenger

Re: Digital Video Pipeline

Jump to solution

Amit, Do you have a list of SDI capture boards that work with DirectGMA ?

0 Kudos
Reply
amit_agarwal
Staff
Staff

Re: Digital Video Pipeline

Jump to solution

Hi,

The AMD FirePro™ V7900 SDI professional graphics card is the first such product from AMD supporting the AMD FirePro SDI-Link platform.  There are other dGPUs which support OpenCL 1.2 and PCIe 3.0.

Please refer to the following link.  It has all the list of cards which support DirectGMA and SDI-Link.  This link also mentions the FirePro™ dGPUs which support OpenCL 1.2 and PCIe 3.0.

http://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units#Comparison_table:_Workstation_GPU...

In particular, FirePro™ Workstation Series dGPUs (FirePro W5100, W7100, W8000, W8100, W9000, W9100) support SDI-Link with PCIe 3.0 and OpenCL 1.2 (and even 2.0) for low-latency transfer between SDI input and the dGPU.

Please do let us know in case of any clarifications.

0 Kudos
Reply
boxerab
Challenger

Re: Digital Video Pipeline

Jump to solution

Thanks, these cards would be perfect for my use case.

But, this will only work if there are SDI capture boards out there that support SDI-Link.

Do you have an up to date list of such cards?

Thanks,

Aaron

0 Kudos
Reply
boxerab
Challenger

Re: Digital Video Pipeline

Jump to solution

So, I tracked down this brochure from last year:

http://www.fireprographics.com/resources/55185B_DirectGMA_FirePro__DS_A4_FNL.pdf

with a list of SDI cards supporting DirectGMA.

So far, so good.

Now, I need to know how I can get access to the SDILink SDK.  Is it freely available? If not, how is it licensed?

Thanks,

Aaron

0 Kudos
Reply
boxerab
Challenger

Re: Digital Video Pipeline

Jump to solution

Update from BlackMagick Software Development Forums:

Blackmagic Forum • View topic - Decklink SDILink to FirePRO GPU

"This functionality is provided via the Decklink SDK and you can implement it by using AMD Firepro graphics cards from Firepro W series with the model number 5000 and higher. We do not support the S or R series at this time. It supports all Decklink cards that are able to do input and output or Decklink SDI 4K, Duo, Quad, Studio 4K, Extreme 4K and Extreme 4K 12G.

AMD SDI Link / Direct GMA is supported on Windows 7 and Linux for x86 and x64 architectures where those platforms are also supported by AMD. DirectGMA support requires the use of the GL_AMD_pinned_memory GL extension supported by compatible AMD OpenGL drivers.

Recommend you download our SDK from support page for playback and capture cards under latest downloads (scroll down until you see SDK 10.3.1 Nov 20 2014)

See the LoopThroughWithOpenGLCompositing under each OS samples/bin folder for a detailed example of integrating the DeckLink API and AMD DirectGMA."

0 Kudos
Reply
jtrudeau
Staff
Staff

Re: Digital Video Pipeline

Jump to solution

Aaron Boxer

FYI: Relocated this topic into the DirectGMA forum, seemed the better fit.

0 Kudos
Reply