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.

GStreamer with MediaSDK

William_K_2
Novice
2,414 Views

Hello,

Is anyone successfully using the encoding/decoding functions of MediaSDK with GStreamer? It seems that MediaSDK's vaapi should work with gstreamer-vaapi. However, I can't get it to work, I keep getting an error that looks like this:

[gst-1.4] [wkatsak@nuc 1.4]$ gst-launch-1.0 filesrc location=somevideo.mp4 ! qtdemux ! vaapidecode ! xvimagesink

libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'vaapidecode0': gst.vaapi.Display=context, display=(GstVaapiDisplay)NULL;
ERROR: from element /GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0: GStreamer error: negotiation problem.
Additional debug info:
gstvideodecoder.c(2185): gst_video_decoder_chain (): /GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0:
decoder not initialized
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

It seems the key error is "decoder not initialized". Anyone else come up against this?

I am running MediaSDK 2015R5 installed from the official instructions, on CentOS 7.1. I've compiled gstreamer 1.4 and plugins against the git repos, and am running it inside a gst-uninstalled environment. Other things work with gstreamer (for example, I can play the same video using a software decoder from libav, in the same pipeline).

Any insight or even pointers in the right direction would be greatly appreciated.

Thanks!
-Bill

0 Kudos
1 Solution
William_K_2
Novice
2,414 Views

Alright, I was able to solve my issue, but I think it would be cool to get a response from Intel on what their position is.

To make everything clear, here are the steps I followed:
1) Install CentOS 7.1 with the specified package setup ("Development and Creative Workstation").
2) Install MediaSDK 2015R5, following the instructions exactly.
3) At this point vainfo will show the output I pasted above.
4) Used gstreamer-uninstalled to bootstrap an "uninstalled" copy of gstreamer-1.4.
5) Cloned and built the latest version of gstreamer-vaapi inside the gstreamer-uninstalled environment.

At this point, I cannot set up a gstreamer encoding or decoding pipeline, and the output is as I pasted above.

To get it working, I did the following:
1) Cloned and compiled the latest libva from the git repo (installed into the gstreamer-uninstalled prefix directory).
2) Cloned and compiled the latest libva-intel-driver from the git repo (also installed into the gstreamer-uninstalled prefix directory).
3) Set the LIBVA environment variables as follows:

LIBVA_DRIVERS_PATH=/home/<homedir>/gst/1.4/prefix/lib/dri
LIBVA_DRIVER_NAME=i965

4) Rebuilt the gstreamer-vaapi package against the new libva.

At this point, vainfo will show the following:
 

vainfo
libva info: VA-API version 0.38.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'i965'
libva info: Trying to open /home/<homedir>/gst/1.4/prefix/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_38
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.38 (libva 1.6.0.pre1)
vainfo: Driver version: Intel i965 driver for Intel(R) Haswell Mobile - 1.6.0.pre1 (1.3.2-246-ge797089)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice

Also, at this point the gstreamer-vaapi tests will all pass, and the pipeline specified above will run properly.

My assessment? It seems that something is broken in the libva that Intel is shipping with MediaSDK. There is something up with the version numbers mismatching, as I pointed out above, and the libva version in general is pretty old, even though the kernel and libdrm versions are fairly modern.

Can anyone from Intel weigh in on this?
 

View solution in original post

0 Kudos
15 Replies
randy_s_2
Beginner
2,414 Views

Yes, the vaapi functions do work, for example:

(doing this off the top of my head)

 gst-launch-1.0 -v filesrc location=/mnt/share/demo/big_buck_bunny_1080p_h264.mov ! qtdemux ! vaapih264_parse ! vaapidecode ! vaapisink

However, there are issues when using this in conjunction with an RTP stream currently, if you plan to use it that way. I have reported the issue to the gstreamer-vaapi developers. 

The error you are seeing is w.r.t. the caps (capabilities) negotiation between filters, not the vaapi elements themselves. Have a look at the caps using gst-inspect-1.0 <elementname> to see what they input/output. 

 

0 Kudos
randy_s_2
Beginner
2,414 Views

Just to be clear, the VAAPI doesn't really have anything to do with installing/running the MediaSDK. They *may* use the functions underneath, but the whole purpose of the VAAPI is to be a hardware abstraction layer, such that you don't need to care what they do. You can use the Media SDK directly, but you're going to be writing your own gstreamer plugins to do so.

0 Kudos
William_K_2
Novice
2,414 Views

Hi Randy,

Thanks for your input. Yes, I do understand that we don't have to use VAAPI, and can use the underlying functions, but we are trying to build a pipeline that can possibly do accelerated/nonaccelerated/different HW, so we could like to use VAAPI as much as possible.

Back to the problem at hand. I just did a completely clean load of CentOS 7.1 with the MediaSDK, GStreamer 1.4, etc. and I am still seeing the same issue. Here is some output from the command that you described (even with the same movie!):

gst-launch-1.0 -v filesrc location=big_buck_bunny_1080p_h264.mov ! qtdemux ! vaapiparse_h264 ! vaapidecode ! vaapisink
libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'vaapidecode0': gst.vaapi.Display=context, display=(GstVaapiDisplay)NULL;
/GstPipeline:pipeline0/GstVaapiH264Parse:vaapih264parse0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ alignment\=\(string\)au\,\ level\=\(string\)4.1\,\ profile\=\(string\)main\,\ codec_data\=\(buffer\)014d4029ffe10016274d4029a9180f0044fcb8035010101b6c2b5ef7c04001000428de09c8\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ framerate\=\(fraction\)24/1\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ parsed\=\(boolean\)true"
/GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ alignment\=\(string\)au\,\ level\=\(string\)4.1\,\ profile\=\(string\)main\,\ codec_data\=\(buffer\)014d4029ffe10016274d4029a9180f0044fcb8035010101b6c2b5ef7c04001000428de09c8\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ framerate\=\(fraction\)24/1\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ parsed\=\(boolean\)true"
/GstPipeline:pipeline0/GstVaapiH264Parse:vaapih264parse0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ alignment\=\(string\)au\,\ level\=\(string\)4.1\,\ profile\=\(string\)main\,\ codec_data\=\(buffer\)014d4029ffe10016274d4029a9180f0044fcb8035010101b6c2b5ef7c04001000428de09c8\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ framerate\=\(fraction\)24/1\,\ pixel-aspect-ratio\=\(fraction\)1/1"
ERROR: from element /GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0: GStreamer error: negotiation problem.
Additional debug info:
gstvideodecoder.c(2185): gst_video_decoder_chain (): /GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0:
decoder not initialized
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
/GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstVaapiH264Parse:vaapih264parse0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstVaapiH264Parse:vaapih264parse0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstQTDemux:qtdemux0.GstPad:video_0: caps = "NULL"
/GstPipeline:pipeline0/GstQTDemux:qtdemux0.GstPad:audio_0: caps = "NULL"
Freeing pipeline ...

Is there any way that you can run a similar pipeline and show me what your output looks like?

BTW, I was able to get this working with the "stock" drivers on Ubuntu 14.04. The only thing that I had to add was gstreamer-vaapi from the GIT. There I am able to build/use a complete pipeline.

I would ideally like to get this working on CentOS, because it is the "officially supported" distro, and also because we would like to integrate OpenCL into some of our stuff (and it seems that the Intel OpenCL drivers come from MediaSDK.

Thanks in advance,

Bill

0 Kudos
William_K_2
Novice
2,414 Views

Also, before anyone asks, here is the output of vainfo. I am a little concerned about these <unknown entrypoint>, and also, the discrepancy between the version, and the __vaDriverInit version.

vainfo
libva info: VA-API version 0.35.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /opt/intel/mediasdk/lib64/iHD_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.35 (libva 1.3.1)
vainfo: Driver version: 16.4.2.36242-ubit
vainfo: Supported profile and entrypoints
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileNone                   :	<unknown entrypoint>
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileH264Baseline           :	VAEntrypointEncSlice
      VAProfileH264Baseline           :	<unknown entrypoint>
      VAProfileH264Baseline           :	<unknown entrypoint>
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264Main               :	<unknown entrypoint>
      VAProfileH264Main               :	<unknown entrypoint>
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264High               :	<unknown entrypoint>
      VAProfileH264High               :	<unknown entrypoint>
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	<unknown entrypoint>
      VAProfileH264ConstrainedBaseline:	<unknown entrypoint>
      VAProfileVP8Version0_3          :	VAEntrypointEncSlice
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileVP8Version0_3          :	<unknown entrypoint>
0 Kudos
William_K_2
Novice
2,415 Views

Alright, I was able to solve my issue, but I think it would be cool to get a response from Intel on what their position is.

To make everything clear, here are the steps I followed:
1) Install CentOS 7.1 with the specified package setup ("Development and Creative Workstation").
2) Install MediaSDK 2015R5, following the instructions exactly.
3) At this point vainfo will show the output I pasted above.
4) Used gstreamer-uninstalled to bootstrap an "uninstalled" copy of gstreamer-1.4.
5) Cloned and built the latest version of gstreamer-vaapi inside the gstreamer-uninstalled environment.

At this point, I cannot set up a gstreamer encoding or decoding pipeline, and the output is as I pasted above.

To get it working, I did the following:
1) Cloned and compiled the latest libva from the git repo (installed into the gstreamer-uninstalled prefix directory).
2) Cloned and compiled the latest libva-intel-driver from the git repo (also installed into the gstreamer-uninstalled prefix directory).
3) Set the LIBVA environment variables as follows:

LIBVA_DRIVERS_PATH=/home/<homedir>/gst/1.4/prefix/lib/dri
LIBVA_DRIVER_NAME=i965

4) Rebuilt the gstreamer-vaapi package against the new libva.

At this point, vainfo will show the following:
 

vainfo
libva info: VA-API version 0.38.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'i965'
libva info: Trying to open /home/<homedir>/gst/1.4/prefix/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_38
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.38 (libva 1.6.0.pre1)
vainfo: Driver version: Intel i965 driver for Intel(R) Haswell Mobile - 1.6.0.pre1 (1.3.2-246-ge797089)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice

Also, at this point the gstreamer-vaapi tests will all pass, and the pipeline specified above will run properly.

My assessment? It seems that something is broken in the libva that Intel is shipping with MediaSDK. There is something up with the version numbers mismatching, as I pointed out above, and the libva version in general is pretty old, even though the kernel and libdrm versions are fairly modern.

Can anyone from Intel weigh in on this?
 

0 Kudos
randy_s_2
Beginner
2,417 Views

Thanks for posting the resolution. Yeah, on Ubuntu 15.04 things work ok, I'll be looking at CentOS in the near future as well for OpenCL capabilities. Was going to suggest the vainfo output, but you beat me to it.

Not sure if you are still in need of this since you seem to have resolved your issue, but here it anyways as requested:

 

dev@dev-pheonix:~/gstreamer-vaapi$ gst-launch-1.0 -v filesrc location=~/big_buck_bunny_1080p_h264.mov ! qtdemux ! vaapiparse_h264 ! vaapidecode ! vaapisink
libva info: VA-API version 0.37.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/local/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_37
libva info: va_openDriver() returns 0
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'vaapidecode0': gst.vaapi.Display=context, display=(GstVaapiDisplay)NULL;
/GstPipeline:pipeline0/GstVaapiH264Parse:vaapih264parse0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ alignment\=\(string\)au\,\ level\=\(string\)4.1\,\ profile\=\(string\)main\,\ codec_data\=\(buffer\)014d4029ffe10016274d4029a9180f0044fcb8035010101b6c2b5ef7c04001000428de09c8\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ framerate\=\(fraction\)24/1\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ parsed\=\(boolean\)true"
/GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ alignment\=\(string\)au\,\ level\=\(string\)4.1\,\ profile\=\(string\)main\,\ codec_data\=\(buffer\)014d4029ffe10016274d4029a9180f0044fcb8035010101b6c2b5ef7c04001000428de09c8\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ framerate\=\(fraction\)24/1\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ parsed\=\(boolean\)true"
/GstPipeline:pipeline0/GstVaapiH264Parse:vaapih264parse0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ alignment\=\(string\)au\,\ level\=\(string\)4.1\,\ profile\=\(string\)main\,\ codec_data\=\(buffer\)014d4029ffe10016274d4029a9180f0044fcb8035010101b6c2b5ef7c04001000428de09c8\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ framerate\=\(fraction\)24/1\,\ pixel-aspect-ratio\=\(fraction\)1/1"
/GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0.GstPad:src: caps = "video/x-raw\(memory:VASurface\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ interlace-mode\=\(string\)progressive\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)24/1"
Redistribute latency...
/GstPipeline:pipeline0/GstVaapiSink:vaapisink0.GstPad:sink: caps = "video/x-raw\(memory:VASurface\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1080\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ interlace-mode\=\(string\)progressive\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)24/1"
Redistribute latency...
/GstPipeline:pipeline0/GstVaapiDecode:vaapidecode0.GstPad:src: caps = "video/x-raw\(memory:VASurface\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1088\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ interlace-mode\=\(string\)progressive\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)24/1"
/GstPipeline:pipeline0/GstVaapiSink:vaapisink0.GstPad:sink: caps = "video/x-raw\(memory:VASurface\)\,\ format\=\(string\)I420\,\ width\=\(int\)1920\,\ height\=\(int\)1088\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ interlace-mode\=\(string\)progressive\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt709\,\ framerate\=\(fraction\)24/1"
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock

0 Kudos
randy_s_2
Beginner
2,417 Views

For Intel: I'm not sure if there is a way to auto-subscribe to threads, but it would nice to get notified automatically when threads you've replied to get updated

0 Kudos
William_K_2
Novice
2,417 Views

I just signed up for the forum recently, and at least for my own thread, I get updates via email.

0 Kudos
Sravanthi_K_Intel
2,417 Views

Hi William and others,

Thanks for keeping this thread active with your discussions. The steps listed in William's post reflect what is needed to get GStreamer working with QSV. To his question where we modify libva and libdrm, Yes, we do modify them to provide MSS features and stability - going forward we would like to minimize the effort required to do this. But in short term, we provide the patches and code to follow what William did with GStreamer. 

Again, thank you for this thread. The information you all have collectively posted and discussed will be valuable for many others.

0 Kudos
William_K_2
Novice
2,417 Views

Hi Sravanthi,
Since I have your attention, maybe you can answer something for me...what is the difference between the "iHD" libva driver that is provided with MediaSDK and the "i965" driver that is in the main libva source repo.
It is this iHD driver that dosen't seem to work right now.

Thanks!
-Bill

SRAVANTHI K. (Intel) wrote:

Hi William and others,

Thanks for keeping this thread active with your discussions. The steps listed in William's post reflect what is needed to get GStreamer working with QSV. To his question where we modify libva and libdrm, Yes, we do modify them to provide MSS features and stability - going forward we would like to minimize the effort required to do this. But in short term, we provide the patches and code to follow what William did with GStreamer. 

Again, thank you for this thread. The information you all have collectively posted and discussed will be valuable for many others.

0 Kudos
Sravanthi_K_Intel
2,417 Views

Hi Bill,

That's a very relevant question. iHD is Intel's driver stack for professional QSV use and it includes i915 with our patches folded in, iHD (closed source) and VAAPI and MSDK as the public API. While i965 is the open source version of the graphics driver. So, MSDK is built with iHD and will not run with i965, and cannot guarantee it working on the open source VAAPI.

To use GStreamer with VAAPI, you can simply remove the install MSS portion of your steps and go ahead with the open source driver from the beginning. To use MSS with GStreamer, you will need to write wrapper or special GStreamer plugins using MSDK API.

Hope this helps.

0 Kudos
Nina_K_Intel
Employee
2,417 Views

Just to stress an important point: direct usage of VAAPI, even though it may work fine, is not officially supported within MSS stack.

0 Kudos
William_K_2
Novice
2,417 Views

Thanks for all your help and feedback guys. I should make a new thread for this, but since I have your attention, I figured i would ask:

My research group (in a well known Silicon Valley company) is trying to get our hands on one of the new Broadwell desktop/server chips (either Xeon E3-1285v4 or Core i7-5775C) for my project. The retail market on these is super tight right now.

Any idea if it might be possible (or who to talk to) to get a sample of one of these (or even to be able to buy one in a timely manner)?

Thanks!
-Bill

0 Kudos
Shaojuan_Z_Intel
Employee
2,417 Views

Hi Bill,

Your question was forwarded to the sales team for further information. Thanks!

0 Kudos
Shaojuan_Z_Intel
Employee
2,417 Views

Hi Bill,

Broadwell CPUs aren't offered as boxed product yet, so you can only get through a distributor. You may contact the largest distributor in your region for quote about the chips. Or if you need a sample, you can contact our field representative for samples.

As a kindly reminder, in future, in case something comes up that is different than the original topic, please start a new thread, so that it will be easier for us to track. Thanks!

 

0 Kudos
Reply