| Last Modified On : | August 3, 2009 10:18 AM PDT |
Rate |
|
The version 1.0 release of the Intel® Media Software Development Kit (SDK) equips developers with a standard application programming interface (API) for creating video solutions that target consumer and professional uses. Broadly spanning Intel hardware platforms, the Intel Media SDK can also be extended to support thirdparty hardware through custom dynamic link libraries (DLLs). Developer benefits
include:
The functions available through the API streamline and simplify video encoding, decoding, and preprocessing operations, supporting encoding for the H.264 and MPEG-2 formats, and decoding for H.264, MPEG-2, and VC-1. For development teams seeking a practical and high-performance means for readily tapping into the hardware acceleration capabilities of target platforms, the Intel Media SDK includes integral capabilities that optimize routines for the available graphics hardware. Platforms lacking dedicated graphics hardware acceleration features still gain the benefit of tuned, optimized, and threaded software-based video encoding and decoding, ensuring performance equal to the caliber of individual systems.
| Product Highlights | |
| Supported Software and Hardware-Accelerated1 Codecs |
• Encoding: H.264, MPEG-2 • Decoding: H.264, MPEG-2, VC-1 |
| Supported Hardware | • Intel® Graphics chipsets (starting with the Intel® G45/GM45 Express Chipset) • Intel® discrete graphics (solutions based on the Intel® architecture code-named Larrabee) • Processors based on Intel architecture (for software-based encoding and decoding only) • Third-party graphics platforms (through DLL extensions2) |
| Supported Operating Systems | • Windows Vista (32-bit and 64-bit) supported in Intel Media SDK 1.0; Windows 7 (32-bit and 64-bit) supported in future release |
| Preprocessing | • Deinterlacing • Inverse telecine • De-noising • Resizing • Scene detection • Color conversion |
| MPEG-2 Profiles | • Simple • Main • High |
| VC1 Profiles | • Simple • Main • Advanced |
| Advanced Video Coding/H.264 Profiles | • Baseline (encoding only) • Main • High |
| Frame Types | • Progressive • Interlaced |
| Color Format | • NV12 (4:2:0) |
| Rate Control | • Continuous bit rate • Variable bit rate |
| Key Benefits | • Comprehensive, flexible API adapts to a variety of graphics applications • Built-in access to hardware acceleration features for the best possible performance • Easy-to-use API boosts programmer productivity • Simplifies development by eliminating the complexities associated with Microsoft DirectX* Video Acceleration (DxVA) • Extensive libraries and sample code foster rapid application development • Legacy and x86 processor support broadens target platforms for applications |
Standardizing the Encode Interface
Development teams creating applications using common digital video formats, including H.264, MPEG-2, and VC-1, face an ongoing challenge. The need to provide cross-platform support for video operations—including encoding, decoding, transcoding, and preprocessing—creates an environment in which programmers must generate multiple code variations to support individual graphics processing hardware and processors. To reach the widest range of customers and provide a breadth of platform support, each media application must typically be designed with separate code paths, one for each type of supported hardware.
To eliminate this coding challenge and simplify access to hardware acceleration, Intel developed the Intel Media SDK, which lets developers access video processing routines through a standardized API. A robust dispatcher integrated within the API serves as a layer to insulate developers from the complexities of supporting different hardware platforms, as shown in Figure 1.
The Intel Media SDK features hardware acceleration for video codecs through a single API, so that software developers can take advantage of optimized media libraries that support Intel Graphics chipsets, upcoming solutions, such as the visual computing co-processor codenamed Larrabee, and Intel® processors (in system environments where no hardware acceleration is available). This results in a dramatic reduction in development time and provides a means for developers to incorporate very high-performance encoding and decoding into their media applications. High-performance video operations can be achieved without requiring that developers tune and optimize code paths for each individual target platform.
As shown in Figure 1, the high-level architecture for the Intel Media SDK gives the developers the option to incorporate source code from a number of sample media applications that are provided (including encoding, decoding, and transcoding routines) or use their own proprietary application libraries and routines. If routines have already been developed that differentiate a media application for a given market segment, these can be combined through the API without losing the potential performance benefits of the SDK libraries. Or, if developers prefer to rely entirely on source code within the Intel Media SDK for video operations within their application, this approach can be used as well. In both cases, the Media Library Dispatcher grants access to the best-case optimizations corresponding to the target platforms.
Support for Microsoft DxVA and Intel’s hardware DDI extensions also helps streamline development efforts, giving developers a means to implement code that can accelerate graphics hardware performance without the need for mastering the low-level details of the complex API from Microsoft.
Intel Media SDK Benefits
Through the use of the Intel Media SDK, development teams can shift resources from performance optimization for each individual hardware platform to focusing on feature innovation and application capabilities in their video solutions. These features and capabilities can help differentiate products in the marketplace and provide unique implementations of consumer or professional software applications. Among the benefits of the Intel Media SDK:
Hardware acceleration yields great results for performing video codec operations, and the Intel Media SDK ensures that you don’t miss performance opportunities available through the hardware acceleration capabilities of next-generation Intel Graphics chipsets. If hardware acceleration is not supported, the Intel Media SDK uses software encoding or decoding, relying on proven routines that Intel has developed. These routines have been refined, enhanced, and made available as Intel® Performance Primitives for a number of years, extending Intel’s expertise in this area to the broader software development community. In environments where hardware acceleration is not available, the software encoding and decoding designed by Intel can achieve very respectable results, particularly with Intel processors.
This feature is even supported on non-Intel processors. Within the extensible architecture, developers can also incorporate their own software encoding or decoding in place of Intel’s.
Extending the Standard
To increase the usefulness and utility of the Intel Media SDK, Intel openly publishes the full technical specifications and interfaces to the API, providing all the information needed by any vendor to develop DLLs for any number of graphics processing hardware devices. By extending the capabilities of the Intel Media SDK in this manner, developers can effectively use the API to achieve highperformance video operations not only on Intel platforms, but also on an extended range of third-party platforms. The Intel Media SDK has the potential to serve as a universal API to video acceleration hardware from any number of vendors, greatly adding to the efficiency and productivity of development teams working in the video realm. For more information, consult the documentation provided with the Intel Media SDK.
Download the Free Intel Media SDK and Gain the Developer’s Edge
The Intel Media SDK is available as a free download to members of the Visual Adrenaline Developer’s Program. There is no cost to join; a simple sign-up process will get you started and provide access to the Intel Media SDK. Once enrolled, you’ll also gain access to a wealth of technology resources; visual computing expertise shared through forums, communities, blog postings; and insights from industry leaders on the tools and techniques that are fueling next-generation graphics advances. To download, go to: www.intel.com/software/mediasdk For more information about the Visual Adrenaline Developer’s Program, visit: www.intel.com/software/visualadrenaline/
1 Hardware acceleration available for supported Intel graphics hardware platforms.
2 Custom DLLs require third-party development.
| September 3, 2009 3:00 PM PDT
aussiebear |
There isn't a Linux one because the graphics stack of Linux is being re-written! (Such efforts are being led by a number of folks; including Intel employees!) Once its done and mature (sometime in the future), I suspect Intel will add Linux support. |
| September 10, 2009 8:20 PM PDT
Himanshu |
Very exciting product! 1. Would the SDK accelerate peformance on AMD processors? I see on this page it says there's support for "legacy and x86" processors. Does that include AMD CPUs? 2. The SDK download is free, but I don't see any information about licensing and/or royalties when used in a product. Could you please post pointer to that information? |
| September 13, 2009 3:42 AM PDT
mr. J. van der Scheer |
It looks like there is a small mistake in the image: 'Simple Encoding or Decoding' pseudo-code on your site: http://software.intel.com/en-us/articles/enabling-high-perfo.....rocessing/ On the right side you have the pseudo-code of an 'Encoding Example' but in line 3 the pseudo-code is listed as: "Create Decode" which should have been: "Create Encode" IMHO. Interesting Media SDK by the way. |
| October 12, 2009 9:23 AM PDT
Alex |
Слишком много ограничений в SDK, чтобы использовать его по-настоящему, по крайней мере, сегодня: - DXVA2 (hw acceleration for H.264 decoding) поддерживается только для Висты и Семерки, и только для соотв. Интеловских адаптеров (начиная с G45?), которых на рынке еще кот наплакал. Не думаю, что NVidia/ATI сами возьмут и напишут 3-party DLL для Интеловского СДК :-). - H.264 Encode - пока что только в софте (и только для интеловских процессоров), как я понял. А в графических платах - только в Ларраби, когда-нибудь потом. У нас, к примеру, 90% заказчиков сидят в XP и Linux, которые не поддерживаются вообще. |
| October 27, 2009 12:59 AM PDT
michael chan | it can support ATOM? |
| November 8, 2009 9:24 PM PST
jakor |
Alex, dxva2 доступно и в ХП после установки .нет фреймворка. Насчет х264 енкода в харде - боюсь что ждать долго. |
| November 9, 2009 9:32 AM PST
Matt |
Могу подтвердить последнюю заметку, только для DXVA .NET совсем не нужен. Кто умеет читать по английски, можете найти толковые инструкции на http://nunnally.ahmygoddess.net/watching-h264-videos-using-dxva/. На моем сервере прекрасно работает под Windows XP x64, видео-чипом MSI Radeon HD4350, и программой Media Player Classic Homecinema. Я проверил, нигде в процессе раскодировки не используется что-то уникальное от ATI. Предупреждение - DXVA отказывается читать x264 в любом виде (неважно, используется ли контейнер AVI, MP4, или MKV). Что-то ему не нравится, хотя функционально он очень мало отличается от H.264. Все еще исследую, можно ли как то обхитрить рендер-драйвер... |
| November 18, 2009 9:00 AM PST
Samet |
Hi All, Is it possible to develop a Video Broadcasting Software (With Text Scrolling, Image Overlay etc.) using Intel Media SDK on .NET Platform ? Thanks in advance Samet |

Tomas