Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

Intel Media SDK work flow ?

satinder_s_
Beginner
524 Views

Hi ,

I am working on intel media sdk and understanding how that is working .But I have some queries about Media Sdk which are following :

I am working on linux .

1.  According to my understanding work flow is like that :  Applications (gstreamer/ffmpeg) ---> media sdk ----> H/W acceleration library (libva) ---> Video device driver ---> hardware .

Is media acceleration use v4l2 and alsa (video device driver) for h/w acceleration or bypass it.

2. Which are the major components of media sdk , my point is , Is there graphics acceleration also avialable in Media sdk  and for graphics which api available in media sdk (that is use quick sync or HD graphics) .

* HDR is functionality available in it or not *

3. Can we accelerate audio also with media sdk  if yes then which h/w is there and is that use alsa?

4 . My last query is , media sdk using intel quick sync for video processing  but Va api also have support qucik sync So what is major difference between both these , My point is Gstreamer have Va API plugin , with that we can accelerate h/w then why I use SDK . 

Thanks & Regards,

Satinder Singh

0 Kudos
4 Replies
ViCue_S_
New Contributor I
524 Views

Hi Satinder, Media SDK is a video sdk in reality, no audio acceleration there. There was some software extension for audio codecs but it was CPU codecs

HDR is nothing to do with QSV. Kabylake generation gfx supports Main10 HEVC decoding (by QSV + GPU kernels) and HDR tone mapping in video processing pipeline.

As for 3D graphics, you need a separate driver, MediaSDK+VAAPI driver purposed for QSV exposure, check Mesa driver for 3D gfx. 

To your last question. Media SDK is higher level API on top VAAPI. So if you directly call VAAPI in your GStreamer plugin then you do not need Media SDK. Media SDK programming is more simplified than vaapi and you will spend less effort moving to next generation hardware with medisdk than vaapi. MediaSDK claims backward compatibility while vaapi driver do not promise you easy life:) that the only the difference. if you can afford it than vaapi is good to go. 

You can find here. GStreamer plugins on top of MediaSDK but it would be extra layer when you got your own plugins with VAAPI

Yours, ViCue

0 Kudos
ViCue_S_
New Contributor I
524 Views

you also may find this thread is worth to check https://software.intel.com/en-us/forums/intel-media-sdk/topic/671210

0 Kudos
satinder_s_
Beginner
524 Views

Hi ViCue ,

Thanks for reply . But I wanna also know about linux video arch (v4l2) and linux audio arch (ALSA) . Is mediaSDK use v4l2 and alsa or they use own framework . Actually I wanna know about complete working structure of mediaSDK from application layer to device driver layer , So please give me any reference for that . It will be big help for me from your side .

Thanks & Regards,

Satinder Singh

0 Kudos
Seunghyuk_P_Intel
524 Views

Hi Satinder Singh,

Here is answers from my point of view.

1.  According to my understanding work flow is like that :  Applications (gstreamer/ffmpeg) ---> media sdk ----> H/W acceleration library (libva) ---> Video device driver ---> hardware .

    => pretty much correct

Is media acceleration use v4l2 and alsa (video device driver) for h/w acceleration or bypass it.

    => MediaSDK does not use V4L2, and focused pretty much on video side

2. Which are the major components of media sdk , my point is , Is there graphics acceleration also avialable in Media sdk  and for graphics which api available in media sdk (that is use quick sync or HD graphics) .

* HDR is functionality available in it or not *

    => Most of codec/ image processing functionalities are implemented in lower layer than MediaSDK.

         One of big roles of MediaSDK is exposing interfaces to user to control features.

4 . My last query is , media sdk using intel quick sync for video processing  but Va api also have support qucik sync So what is major difference between both these , My point is Gstreamer have Va API plugin , with that we can accelerate h/w then why I use SDK . 

    => There are many benefits.

          Intel MediaSDK is optimized for managing customer's request and producing best quality and performance from Intel product pipeline.

         And it's continuously maintained by Intel, and so on.

         But, gstreamer is generalized framework. If you can generate good performance with gstreamer + va api compare to MediaSDK, you don't need to use MediaSDK. :)

Regards,

Peter.

0 Kudos
Reply