Page 1 of 2

Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 11 Sep 2013 17:18
by Ultrapower
Hi,

in the Release Notes for VLC Media Player 2.1.0 RC2 it says:

Encoders:
* high10, high422 and high444 encoding support in h264
* QuickSyncVideo Encoding (Intel Media SDK) support using Intel GPU on Windows
* New AAC encoder using the fdk-aac library (non-free)


Could someone tell me howto enable this feature in the latest RC of 2.1.0 Ricewind :?:

Greetings

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 12 Sep 2013 14:20
by Jean-Baptiste Kempf
venc=qsv

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 14 Sep 2013 03:57
by Ultrapower
venc=qsv
I added without any effect ... :(

is configuration of Intel Software (Media SDK) needed ?? If yes can you tell me how ?

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 16 Sep 2013 15:26
by Jean-Baptiste Kempf
Read the log. and yes, you need the MediaSDK to be installed.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 17 Sep 2013 01:40
by Ultrapower
Read the log. and yes, you need the MediaSDK to be installed.
I have it installed but the CPU Load is not reduced ...

The command line in VLC begins like this: transcode{venc=qsv,vcodec=h264 ... and so on

What must i configure in the Media SDK ?? :?

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 26 Sep 2013 12:02
by Ultrapower
First of all the 64-Bit version of 2.1.0 Final does NOT include a QSV-Menu, so i have made my tests on 32bit VLC (has QSV Options in the Menu) ...


The Activation of QSV has no effect still the same CPU load while Transcoding :(

Is there any special setting made into command line ??

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 08 Oct 2013 00:33
by Jean-Baptiste Kempf
use 32bits builds.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 13 Oct 2013 13:40
by Ultrapower
use 32bits builds.
I installed this Intel Media SDK:

http://software.intel.com/en-us/vcsourc ... /media-sdk

32Bit VLC 2.1.0 and it has still NO EFFECT on transcoding !!!

Is there something to be set or does it work automatically ? I only installed the Media SDK and latest Intel Drivers thats all :?

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 13 Oct 2013 21:19
by spycrab101
Hardware encoding seems broken on VLC atm, Ticking the software box in qsv menu seems to work.
Image

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 27 Oct 2013 06:45
by aizecu
I have tried on 2.1.0 transcoding from DirectShow and files.

It doesn't have any effect on GPU load.

Image

vcodec="h264",venc="qsv"{profile="main",level="4.1"}

spycrab101, could you please show me the example of command line ?

Does anyone have any idea?

Thank you

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 13 Nov 2013 19:42
by Ultrapower
I have tried on 2.1.0 transcoding from DirectShow and files.

It doesn't have any effect on GPU load.

Image

vcodec="h264",venc="qsv"{profile="main",level="4.1"}

spycrab101, could you please show me the example of command line ?

Does anyone have any idea?

Thank you
I tried everything but no effect on CPU ...

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 20 Nov 2013 16:56
by stefki
is it intel quick sync supported in Linux ? I mean can we transcode with VLC under linux ?

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 12 Dec 2013 15:21
by Jean-Baptiste Kempf
not yet.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 09 Jan 2014 20:19
by PattyCode
Hello everyone,

I'd like to push this thread a little, as I'm still having issues using Intel Quick Sync capabilities and the thread doesn't seem to be resolved.

I'm trying to stream a video from several cameras in a nature reserve around the Steinhuder Meer for a local NGO, preserving the unique wildlife. The cameras film ospreys, black and red milan and a kestrel pair in their nests, while breeding. The project has received a lot of public interest lately as it is actually showing the wildlife as it cannot be seen by visitors. So far my motivation and FYI the streams will be posted here http://www.oessm.org/blog/?page_id=3105 when the summer seasons begins again, although the site is in german.

I set up a computer to serve the restreaming purpose. It is a Intel i7-3770K at 4700GHz on an Asrock Z77 Extreme4-M with 8GB DDR3 RAM (1600MHz). I'm running a Windows 7 Professional 64-bit, as Quick Sync was supposed to be supported for Windows in VLC. Otherwise it would habe been a nice Linux. Anyways, I have installed the 32-bit VLC 2.1.2 Rincewind and the Intel Media SDK 2013 RC2. And installed means for the later I just let the installer put the .dll somewhere and did not configure vlc, where to search for them. I also did not set any env-path variables, as I didn't find any documentation.

The error I'm receiving, when using venc=qsv in a transcoding like

Code: Select all

:sout=#transcode{vcodec=h264,venc=qsv,scale=0.75,acodec=mpga,ab=128,channels=2,samplerate=44100}:rtp{dst=239.255.255.255,port=5004,mux=ts,sap,name=StreamTest} :sout-keep
is

Code: Select all

[0976019c] qsv encoder error: No hardware implementation found and software mode disabled [026d6e9c] stream_out_transcode stream out error: cannot find video encoder (module:qsv fourcc:h264). Take a look few lines earlier to see possible reason. [026d6e9c] stream_out_transcode stream out error: cannot create video chain [04bc357c] main decoder error: cannot create packetizer output (h264)
I obviously did not enable the software mode, as I interpret the flag as precisely stating not to use the hardware. I tried with software mode enabled, but the performance is poor as occuping 3 times more of the CPU.

I would be really grateful, if anybody could help me setup the hardware encoding.

pat

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 05 Feb 2014 17:20
by spycrab101
I'm still having issues with this. I get the feeling that VLC requires HW 1.6 and above for encoding.(intel hd 4000) I assume you are using an intel HD 3000? or below?

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 05 Feb 2014 20:38
by PattyCode
Hello spycrab01,

the CPU in usage is actually an Intel i7-3770K, which has the Intel HD 4000 GPU build in.

pat

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 06 Feb 2014 03:29
by spycrab101
C:\Program Files (x86)\Intel\Media SDK 2013 R2\tools\mediasdk_sys_analyzer\win32

Try running that and let me know what comes up. It should tell you if HW encoding is working or not.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 05 Mar 2014 00:21
by PattyCode
Hello,

sorry for the late reply. The server was inaccessible due to moving. Here's the output from the command:

Code: Select all

Intel Media SDK System Analyzer (32 bit) The following versions of Media SDK API are supported by platform/driver: Version Target Supported Dec Enc 1.0 HW Yes X X 1.0 SW Yes X X 1.1 HW Yes X X 1.1 SW Yes X X 1.3 HW Yes X X 1.3 SW Yes X X 1.4 HW Yes X X 1.4 SW Yes X X 1.5 HW No 1.5 SW Yes X X 1.6 HW No 1.6 SW Yes X X 1.7 HW No 1.7 SW Yes X X Graphics Devices: Name Version State Intel(R) HD Graphics 4000 9.17.10.2932 Active System info: CPU: Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz OS: Microsoft Windows 7 Professional Arch: 64-Bit
From the output it seems Versions 1.5 to 1.7 are unfortunately not supported on my platform and driver combination, at least not on a hw target. I checked the driver version with the mainboard ditributor Asrock, but according to their ressources the driver was up to date. I found a recent driver on the intel website though an installed it. The output now looks much more promising.

Code: Select all

Intel Media SDK System Analyzer (32 bit) The following versions of Media SDK API are supported by platform/driver: Version Target Supported Dec Enc 1.0 HW Yes X X 1.0 SW Yes X X 1.1 HW Yes X X 1.1 SW Yes X X 1.3 HW Yes X X 1.3 SW Yes X X 1.4 HW Yes X X 1.4 SW Yes X X 1.5 HW Yes X X 1.5 SW Yes X X 1.6 HW Yes X X 1.6 SW Yes X X 1.7 HW Yes X X 1.7 SW Yes X X Graphics Devices: Name Version State Intel(R) HD Graphics 4000 10.18.10.3412 Active System info: CPU: Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz OS: Microsoft Windows 7 Professional Arch: 64-Bit
I can now use VLC with the qsv encoder. I am not yet seeing any major CPU load drop but I will play with the settings, when I find the time and post the results here.
Thanks for the hint spycrab101.

pat

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 27 Mar 2014 04:04
by mimilo
> Ticking the software box in qsv menu seems to work.
Intel QuickSync Encoder Software Mode should be disabled if you have Sandy Bridge, Ivy Bridge, Haswell Motherboard and CPU.
Otherwise, it will use the cpu to emulate the Quicksync API call. Of course, there is no hardware encoding acceleration.

If you have nVidia/ATI display card in your system, you need to switch the primary to motherboard display and enable iGAP in bios in order to enable the Quicksync feature. If you set the primary display to iGAP and install the Lucid Virtu MVP, it need to be disabled.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 27 Mar 2014 04:13
by mimilo
I have tried on 2.1.0 transcoding from DirectShow and files.
It doesn't have any effect on GPU load.
Image

vcodec="h264",venc="qsv"{profile="main",level="4.1"}

spycrab101, could you please show me the example of command line ?

Does anyone have any idea?

Thank you
This problem comes from the resolution width is not dividable by 16. For example, 854x480, 854 is not dividable by 16, 854/16=53.375. Then you will get the result same as what aizecu has. If you set it to 768x432 or 960x540 (qHD), then
it will be encoded as expected.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 27 Mar 2014 05:01
by mimilo

The error I'm receiving, when using venc=qsv in a transcoding like

Code: Select all

:sout=#transcode{vcodec=h264,venc=qsv,scale=0.75,acodec=mpga,ab=128,channels=2,samplerate=44100}:rtp{dst=239.255.255.255,port=5004,mux=ts,sap,name=StreamTest} :sout-keep
is

Code: Select all

[0976019c] qsv encoder error: No hardware implementation found and software mode disabled [026d6e9c] stream_out_transcode stream out error: cannot find video encoder (module:qsv fourcc:h264). Take a look few lines earlier to see possible reason. [026d6e9c] stream_out_transcode stream out error: cannot create video chain [04bc357c] main decoder error: cannot create packetizer output (h264)
I obviously did not enable the software mode, as I interpret the flag as precisely stating not to use the hardware. I tried with software mode enabled, but the performance is poor as occuping 3 times more of the CPU.

I would be really grateful, if anybody could help me setup the hardware encoding.

pat
>the flag as precisely stating not to use the hardware.
Yes.
>qsv encoder error: No hardware implementation found and software mode disabled
Previous two replies can fixed the "no hardware implementation problem"

>scale=0.75
use defined resolution width and height, and set scale=auto, don't use scale=0.75, which can cause the width not dividable by 16.

Although You use windows environment and x-32 version of vlc, you need to latest Intel Drivers. Media SDK is not necessary. you use the mpeg ts container, H.264 video codec, mpg audio codec and use rtp multicast . It is recommand using http streaming as you broadcast the content in website.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 11 Jun 2014 18:29
by spycrab101
The latest Intel drivers aren't available for intel 2000 or 3000 so I assume vlc won't support these? I noticed the latest version is 10 while the latest version for sandy Bridge is 9

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 07 Jul 2014 20:07
by svgram
Hello!
The error I'm receiving, when using venc=qsv in a transcoding like
:sout=#transcode{vcodec=h264,venc=qsv,scale=0.75,acodec=mpga,ab=128,channels=2,samplerate=44100}:rtp{dst=239.255.255.255,port=5004,mux=ts,sap,name=StreamTest} :sout-keep

qsv debug: Encoder feeding phase, more data is needed.
qsv error: SyncOperation failed, outputting garbage data. Updating your drivers and/or changing the encoding settings might resolve this
qsv debug: Device is busy, let's wait and retry

Installed new drivers did not help. What causes these errors? Please share a working configuration.

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 21 May 2015 19:32
by edf
I'm running VLC 2.2.1 (32-bit) on a Windows 7 platform with 3rd Gen Intel Core-i7 and HD Graphics 4000. I've tried GUI and command line to launch VLC and stream out a Unicast or Multicast of a live camera connected via a frame grabber. The results are poor so far... 2-3 second latency and bad video quality on the client. As far as I can tell, the encoder is not qsv despite using the venc=qsv command. Is there something I have to do to get VLC to recognize the hardware and this capability? Can someone supply a working command line for a similar setup?

Re: Howto Enable Intel Quick Sync H.264 GPU Encoding ?

Posted: 22 May 2015 12:01
by Jean-Baptiste Kempf
Look at the logs