sample_encode with -hw argument

sample_encode with -hw argument

james328msn.com's picture

I'm using Media SDK 2.0.12.24071 on a Sandybridge machine.

I can get sample_encode h264 -i in.yuv -o out.264 to work. However, I get an error if I append the -hw argument, as described in this earlier thread
http://software.intel.com/en-us/forums/showthread.php?t=82562&o=a&s=lr

Return on error : .\\src\\pipeline_encode.cpp 638
Return on error : .\\src\\sample_encode.cpp 281

I've already tried reinstalling the SDK, and I noticed that there is no libmfxhw64-*.dll under .\\bin\\x64. Is it supposed to be there? How can I get -hw working?

Thanks

7 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.
admin's picture

Hello,

The errors shown for sample_encode indicate that the hardware session init is failing.There are a few reasons why this might happen:

-Have you tried installing the latest graphics driver?
-Using a discrete graphics card could alsoinhibit hardware mode.

You might also try the SDK 3.0 Beta. Several changes to the dispatcher have been made since version 2. However, version 3 is still in development and might not be suitable for production use.

Please let us know if you have any further difficulties getting started. If none of the suggestions above work, your processor number (i.e. as reported under 'Processors' in Device Manager) could be an important clue.

Regards,

Jeff

james328msn.com's picture

Installed Media SDK 3.0 Beta. Still no luck.

Running the Intel Media Checker gives me:
Processor: Core i7-2600K CPU @ 3.40GHz
Chipset: HD Graphics Family
Intel Media SDK DLL Detected: HW Lib: None, SW Lib: 3.0.332.30303
Graphics Driver Version: 8.15.10.2342

How can I manually make sure HW Lib is detected and used by the application?

Thanks.

admin's picture

Sorry that you are still having trouble enabling hardware acceleration. Here are a few more things to try:

1. Are you running the pre-built samples? Alternately, are your builds from unmodified sample code? Changes to the version settings in CEncodingPipeline::Init (pipeline_encode.cpp)could cause behavior like you are seeing.

2. Have you double checked in the Device Manager that there is only one display adapter? There are some scenarios where the presence of additional adapters might not be obvious.

3.Whichversion of Windowsare you using? Is the OS 64 or 32 bit? How about the driver and Media SDK? If you are building the samples in a 64 bit environment, do Win32 and x64 buildsboth have problems starting the hardware implementation?

4. Though the driver you have is probably OK, a newer version is available via the Intel Download Center (http://downloadcenter.intel.com/default.aspx).

To manually verify that the hardware library for MSDK 3 Beta 2 is installed (assuming 64 bit)

- Check HKEY_LOCAL_MACHINE\SOFTWARE\Intel\MediaSDK\Dispatch\hw64-??-?. There may be a similar 32 bit entry under Wow6432Node.

- The Path key should point to a subdirectory of C:\Program Files\Common Files\Intel\Media SDK. This subdirectory should contain the hardware library (i.e. libmfxhw64-i1.dll). You should also see DLLs for H.264 and mpeg2 decode/encode, as well as VC-1 decode and VPP.

Keep in mind thatMSDK 3is a beta preview, not intended for production use. This information maynot be valid forfuture releases.

Please let us know what you find.

Regards,

Jeff

james328msn.com's picture

I've tried both prebuilt samples and builds from unmodified sample code. For compiling I use Visual Studio 2010, which converted the VS projects into a newer format.

Device manager shows only one display adapter - Intel HD Graphics Family.

I'm using the 64-bit version of Windows 7.

In the registry,under HKLM\SOFTWARE\Intel\MediaSDK, there is only one folder ...\MediaSDK\3.0.332.30303. I cannot find ...\MediaSDK\Dispatch.

Also, during installation of the Media SDK, I got an error that said something about the installer unable to set DSHOW_BASECLASSES_PATH variable in the system environment. Not sure if it is related..

Thanks for all the help so far.

admin's picture

It looks like we are getting closer. The graphics driver installer shouldcreate HKLM\SOFTWARE\Intel\MediaSDK\Dispatch\ and populate it. It should also set up \Program Files\Common Files\Intel\Media SDK and its subdirectories.

The DSHOW_BASECLASSES_PATH error is probably unrelated. There is a bit of setup required to work with the DirectShow samples.

Please try downloading and installing the latest Processor graphics driver from http://downloadcenter.intel.com/. You should see"Intel Graphics Media Accelerator Driver for Windows 7* 64, Windows Vista* 64 (exe)". I recently verified that version 15.22.1.64.2361 (8.15.10.2361) works asexpected, at least on the machine I was working with.

Upon successful install you should see the Dispatch key as well asthe files described previously in \Program Files\Common Files\Intel\Media SDK. The Intel Graphics and Media Control Panel should also be available via the methods describedat

http://www.intel.com/support/graphics/sb/CS-022130.htm?wapkw=(graphics+and+media+control+panel).

This should get you a lot closer to hardware acceleration. Ifyou don't see the Dispatch key, common files
Media SDK directory, orgraphics properties panel just let us know.

Jeff

james328msn.com's picture

The problem was resolved after I installed the latest graphics driver from Intel's website, as you instructed.

Apparently my fresh install of Windows 7 (with all updates) came with only a partial installation of Intel's graphics driver. (Maybe Intel should ask Microsoft to fix this?)

Thank you very much.

Login to leave a comment.