Getting Started with the Intel Media SDK

Follow Gael on Twitter: @GaelHof


One thing that developers might find a little confusing is that a search for the Intel® Media SDK takes you to an Intel® Integrated Native Developer Experience (Intel® INDE) download page.  This is because the Intel Media SDK is now a feature included in the Intel INDE tools suite.

DownloadINDE

If all you need is the Intel Media SDK then you must select the “Get Intel® INDE” option on the download page. See Quick Installation Guide for Media SDK on Windows with Intel® INDE for complete instructions on how to download a standalone version of the Intel Media SDK.


Media applications target both CPUs and GPUs.  Here are the specifications for the Intel Media SDK 2014:

Video Encoders H.264 (AVC and MVC), MPEG-2, JPEG*/Motion JPEG, HEVC(SW)
Video Decoders H.264 (AVC and MVC), MPEG-2, VC-1, JPEG*/Motion JPEG, HEVC(SW)
Video Processing Filters Deinterlacing/Inverse Telecine, Resizing, Color Conversion, Denoising, Frame Rate Conversion, Brightness, Contrast, Hue, Saturation Control, Sharpening, Image Stabilization
Video Conferencing Dynamic bitrate control, Low Latency, Error Detection/Resilience, temporal scalability, dynamic resolution change, long term reference frames, Rolling I-Frame
Extensions User-defined filters (HEVC encoder/decoder delivered as plug-ins)Example plug-ins for OpenCL and VP8 decode.

Accelerated Video Operations: The Intel Media SDK contains optimized media libraries that are built on top of Microsoft Direct*, DirectX Video Acceleration (DVXA) APIs, and platform graphics drivers. The Intel Media SDK also exposes the hardware acceleration features of Intel® Quick Sync Video built into 2nd, 3rd, and 4th generation Intel® Core™ processors.

The Intel Media SDK focuses on media pipeline components that are most commonly used and in need of acceleration, such as:

  • Decoding from video elementary stream formats (H.264, MPEG-2, VC-1, and JPEG*/Motion JPEG, new: HEVC) to uncompressed frames
  • Selected video frame processing operations
  • Encoding uncompressed frames to elementary stream formats (H.264, MPEG-2, new: HEVC)
  • New: Audio encode/decode and container split/muxing

Here is an example of a generic transcode pipeline. The Intel Media SDK accelerates a subset of the most computationally demanding video elementary streaming tasks.MediaSDKFlow

Install the Graphics Driver and the Intel Media SDK

In order to take full advantage of the Media SDK’s capabilities, you will need to install both the graphics driver and the Intel Media SDK. The Graphics Driver and the Media SDK are distributed in two separate downloads.  The Media SDK can be installed before or after the driver and the driver can be updated without re-installing the Media SDK.  Note, however, that hardware acceleration is available only if both components are installed successfully. The media acceleration DLLs are distributed with the graphics driver, not the Intel Media SDK.  The default graphics driver may or may not provide all of the files and registry components necessary.  The link for the Intel Graphics Drivers is included above.  When downloaded, the graphics installer will populate the Media SDK directories located here:  <root>\Program Files\Intel\Media SDK

GraphicsMediaSDK

Structure of the Intel Media SDK:

Unless otherwise specified, the Media SDK is saved to the following folder on your computer:

  • <root>\Intel\INDE\media_sdk_6.0.0.308

Here is the basic file structure:

FileStructure

Using the Intel Media SDK Samples

The Samples projects were created for Microsoft Visual Studio 2005.  If you are using a more recent version, you will encounter a warning – this is not a problem.

The samples provided in the SDK demonstrate how to utilize the library without the additional complexity of a GUI or media framework.  The samples are very basic and are provided as a starting point for developers. The major components of the SDK are represented by  basic console applications as described below:

 Basic Samples:

Sample_decode Decoding from an elementary stream to raw (uncompressed) frames. Includes decoding of an elementary MVC video stream and use of the Stereoscopic 3D (S3D) API.
sample_encode Encoding from raw frames to a compressed (elementary) stream.
sample_multi_transcode Transcoding to and from elementary stream(s). Illustrates multiple asynchronous sessions to perform batch processing.
sample_vpp An example of how to use pixel preprocessing to manipulate raw (uncompressed) frames

Advanced Samples

sample_full_transcode Showcases a complete transcoding pipeline, including audio decode/encode and container splitting and muxing
sample_user_modules OpenCL™, VP8 decode user plugins.
sample_utilities Pipeline construction combining VPP and user plugins.
sample_videoconf Low latency, packet loss, dynamic bitrate, key frame insertion, long-term reference frame generation.

The SDK also contains Microsft DirectShow filter samples, as well as Windows-based GUI applications (DirectShow Player and MediaFoundation TranscodeSample).

You can watch the Intel Media SDK Tutorials that will take you through 7 distinct sections with increasing levels of complexity:

  • Section 1: Introduces the Intel Media SDK session concept via a very simple sample.
  • Section 2-4: Illustrates how to utilize the three core SDK components: Decode, Encode, and VPP.
  • Section 5: Showcases transcode workloads, utilizing the components described in earlier sections.
  • Section 6: Describes more advanced and compound usages of the SDK.
  • Section 7: Explains how to integrate OpenCL processing into the Intel Media SDK pipelines.

Ok, this should get you started.  For further information, here are some great resources:

Gael Hofemeier

About Gael Hofemeier

Technology Evangelista/Intel Black Belt always learning. Live and play in the Portland, Oregon area.

Categories: Application Innovation, Intel, Intel Software   |   Tagged as: acceleration, Drivers, GPU, Graphics, Media SDK

Bookmark the permalink.

2 Responses to Getting Started with the Intel Media SDK

    1. Walter An says:
      April 11, 2015 at 2:26 AM

      Hi,
      Is there a place in Intel web site where the list of supported Intel CPUs that can run Intel Media SDK Client for Windows?
      Actually I want to know whether Intel® Xeon® Processor E3-1285 v3 can run Intel Media SDK Client for Windows or not.
      Thank you.

       
    2. April 15, 2015 at 9:00 PM

      Hi Walter,
      I apologize for the delay: According to the Release Notes, the E3-1285 v3 is compatible.

      Hardware
      The following processor models are supported:
       Intel® Xeon® Processor E3-128x v3 with Intel C226 Chipset:
      Intel® Xeon® Processor E3-1284 v3
      Intel® Xeon® Processor E3-1285 v3
      Intel® Xeon® Processor E3-1285L v3
      Intel® Xeon® Processor E3-1286 v3
      Intel® Xeon® Processor E3-1286L v3

      https://software.intel.com/sites/default/files/managed/64/01/media_server_studio_essentials_release_notes_linux.pdf

posted @ 2017-03-02 09:02  视界君  阅读(1698)  评论(0编辑  收藏  举报