The Microsoft Windows SDK is a set of tools, code samples, documentation, compilers, headers, and libraries that developers can use to create applications that run on Microsoft Windows operating systems. The Windows SDK combines two formerly separate SDKs

New Win32 Samples in Windows SDK for Windows 7: Multimedia

New Win32 Samples in Windows SDK for Windows 7: Multimedia

The upcoming release of the Windows SDK for Windows 7 and .NET Framework 3.5 SP1 contains a comprehensive set of Win32 samples illustrating Windows 7 technologies. Over 1,200 samples were changed since the release of the Windows SDK for Windows 7 RC release. Many “new to Win 7” samples were added, simplified, or extended, and many older samples were updated to support Windows 7 as well as older operating systems.

This is the first in a series of posts that describe new and updated samples in the Windows 7 SDK. This post identifies Multimedia samples that are new to Windows 7 or updated to support Windows 7. Technologies include Animation, Audio, Direct2D, DirectWrite, GDI, Media Foundation, Windows Imaging Component (WIC), Windows Media Player (WMP), and Windows Portable Device (WPD).

For build instructions and additional information about the samples, see the Readme.txt files and other documents in the SDK sample folders. For general sample building instructions, refer to the Samples Reference page that installs with the Windows SDK, and the SDK Release Notes (under the Start menu, in All Programs > Microsoft Windows SDK v7.0). By default, Win32 samples are installed under the following path: C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples.

Send your thoughts to the Windows SDK Feedback alias. Tell us how you use the SDK and what we can do to improve your development experience.

New/updated Multimedia Samples in the Windows SDK for Windows 7

Sample

Description

Location (under Samples)

Windows Animation Manager Timer Driven

Demonstrates how to use Windows Animation Manager with the Animation Timer, utilizing GDI for rendering the background color of a window.

Multimedia\Animation\WAMTimerDriven

Windows Animation Manager - Without Timing

Demonstrates how to use Windows Animation Manager without the Animation Timing, utilizing Direct2D for rendering the background color of a window and syncing to the refresh rate.

Multimedia\Animation\WindowsAnimationManagerWithoutTimer

Windows Animation Manager - With A Timer

Demonstrates how to use Windows Animation Manager with the Animation Timer, utilizing GDI for rendering the background color of a window.

Multimedia\Animation\WindowsAnimationManagerWithTimer

AEC-MicArray DMO sample

Demonstrates how to use the AEC-MicArray DMO to obtain echo-free or microphone-array processed microphone signals.

Multimedia\Audio\AECMicArray

Core Audio Sample : CaptureSharedEventDriven

Demonstrates how to user Core Audio APIs to capture data from the specified input device and writes it to a uniquely named .WAV file in the current directory.

Multimedia\audio\CaptureSharedEventDriven

Core Audio Sample : CaptureSharedTimerDriven

A console application that demonstrates how to capture data from the specified input device and writes it to a uniquely named .WAV file in the current directory.

Multimedia\audio\CaptureSharedTimerDriven

Core Audio APIs: DuckingCaptureSample

A chat application. The client - reads audio samples from the default console device and discards the output.

Multimedia\audio\DuckingCaptureSample

Core Audio APIs : DuckingMediaPlayer

Demonstrates the use of Core Audio APIs to implement a media player that controls volume based on volume change request received from other apps

Multimedia\audio\DuckingMediaPlayer

Core Audio APIs: EndpointVolume

Demonstrates an Endpoint Volume Changing sample application.

Multimedia\audio\EndpointVolume

MidiPlayer

Demonstrates a simple MidiPlayer

Multimedia\audio\MidiPlyr

RenderExclusiveEventDriven

Uses the Core Audio APIs to render audio data to an output device, specified by the user. Demonstrates event-driven buffering for a rendering client in exclusive mode. For an exclusive-mode stream, the client shares the endpoint buffer with the audio device.

Multimedia\audio\RenderExclusiveEventDriven

RenderExclusiveTimerDriven

Uses the Core Audio APIs to render audio data to an output device, specified by the user. Demonstrates timer-driven buffering for a rendering client in exclusive mode. For an exclusive-mode stream, the client shares the endpoint buffer with the audio device.

Multimedia\audio\RenderExclusiveTimerDriven

Core Audio APIs : RenderSharedEventDriven

Demonstrates the use of WASAPI in implementing an application that renders to the specified device by using event buffering.

Multimedia\audio\RenderSharedEventDriven

Core Audio API: RenderSharedTimerDriven

Demonstrates the use of WASAPI in creating an application that renders audio to the specified device

Demonstrates how to load a custom font embedded in an application using DirectWrite.

Multimedia\DirectWrite\CustomFont

DirectWrite Custom Layout Sample

Demonstrates how a custom layout can utilize the information from script itemization, bidi analysis, line breaking analysis, and shaping to accomplish text measurement and fitting, line breaking, basic justification, and drawing.

Multimedia\DirectWrite\CustomLayout

Font Enumeration Sample

Demonstrates how to enumerate fonts using DirectWrite and outputs the font family names to the console.

Multimedia\DirectWrite\FontEnumeration

DirectWrite - GDI Interoperation Sample

Demonstrates how DirectWrite can convert from GDI font objects and display DirectWrite text on a GDI surface.

Multimedia\DirectWrite\GdiInterop

Hello World using DirectWrite

Demonstrates how to use DirectWrite to render simple text, text with multiple formats, and customized text with a custom renderer.

Demonstrates API usage of various new Vista Windows Color System APIs used to translate color values from a source device to a destination device.

Multimedia\gdi\WCS\

AudioClip

Demonstrates IMFSourceReader

Multimedia\MediaFoundation\AudioClip

Media Foundation: Decoder Sample

Demonstrates how to implement a decoder for Media Foundation

Multimedia\Mediafoundation\Decoder

DXVA-HD

Demonstrates DXVA-HD

Multimedia\MediaFoundation\DXVA_HD

MFCaptureD3D

Demonstrates Media Foundation video capture

Multimedia\MediaFoundation\MFCaptureD3D

MFCaptureToFile

Demonstrates how to capture video and save it to an MP4 or WMV file.

Multimedia\MediaFoundation\MFCaptureToFile

MFPlayer2

Demonstrates MFPlayer2

Multimedia\MediaFoundation\MFPlayer2

Source for TopoEdit for Media Foundation

Demonstrates how to create and work with topologies in media foundation, as well as how to handle basic playback.

Multimedia\MediaFoundation\topoedit

Windows Imaging Component Progressive Decoding

Demonstrates how to decode a progressively encoded image and access each progressive level. Uses Direct2D and DirectWrite for image and text rendering.

Multimedia\wic\progressivedecoding

WIC Gif Animation

Demonstrates how to load gif metadata using WIC to animate a gif image.

Multimedia\wic\wicanimatedgif

WIC D2D Image Viewer

Demonstrates how to decode an image using WIC and render it using Direct2D.

Multimedia\wic\wicviewerd2d

WIC GDI Image Viewer

Demonstrates how to decode an image using WIC and render it using GDI.

Multimedia\wic\wicviewergdi

WIC GdiPlus Image Viewer

Demonstrates how to decode an image using WIC and render it using GDI Plus.

Multimedia\wic\wicviewergdiplus

Windows Animation Manager App Driven Sample

Demonstrates how to use Windows Animation Manager without the Animation Timing, utilizing Direct2D for rendering the background color of a window and syncing to the refresh rate.

Multimedia\WindowsAnimation\AppDriven

Windows Animation Manager Custom Interpolator Sample

Demonstrates how to use Windows Animation Manager and implement your own Custom Interpolator. This sample also uses Direct2D for rendering.

Multimedia\WindowsAnimation\CustomInterpolator\

Windows Animation Manager Grid Layout Sample

Demonstrates how to use Windows Animation Manager, by animated a grid of images utilizing Direct2D

Multimedia\WindowsAnimation\GridLayout

Windows Animation Manager Priority Comparison Sample

Demonstrates how to use Windows Animation Manager and implement your own Priority Comparison. This sample also uses Direct2D for rendering.

Multimedia\WindowsAnimation\PriorityComparison\

Windows Animation Manager Timer Driven Sample

Demonstrates how to use Windows Animation Manager with the Animation Timer, utilizing GDI for rendering the background color of a window.

Multimedia\WindowsAnimation\TimerDriven\

Windows Media Player Skin in C++ with Remoting Sample

Demonstrates how to embed the Windows Media Player ActiveX control in a C++ application. Demonstrates how to use a skin in C++ to create the user interface. Demonstrates how to use remote mode.

Multimedia\WMP\CPP\RemoteSkin

multimediawmp_11cppwmphost

Demonstrates basic embedding of the Windows Media Player control in a C++ application.

Multimedia\WMP\cpp\WMPHost

MultimediaWMP_11cppWMPML

Demonstrates how to use the library functionality of the Windows Media Player 11 object model to create a user interface.

Multimedia\WMP\cpp\WMPML

Windows Media Player C# Embedding Sample

Demonstrates how to embed the Windows Media Player ActiveX control in a C# program.

Multimedia\WMP\dotNet\csharp

Schema and Attribute Reader Sample

Creates a tool that uses the Windows Media Player object model to retrieve and display information about metadata in the Windows Media Player library or a digital media file.

Multimedia\WMP\dotnet\SchemaReader

Windows Media Player VB.NET Embedding Sample

Demonstrates how to embed the Windows Media Player ActiveX control in a VB.NET program.

Multimedia\WMP\dotNet\VB

Windows Media Player Sample Digital Media Files and Installer

These are the sample digital media files for the Windows Media Player SDK samples. The file named loader.hta adds the required files to the user's Windows Media Player library.

Multimedia\WMP\media

Windows Media Player Skin Sample

A comprehensive skin sample that demonstrates multiple features.

Multimedia\WMP\skins\bigdrawer

Windows Media Player Skin Logging Sample

Demonstrates how to use a log file to assist in debugging a skin.

Multimedia\WMP\skins\logging

Windows Media Player Skin Playlist Element Sample

Demonstrates code that changes playlist attributes.

Multimedia\WMP\skins\showplay

Windows Media Player Playlist Drawer Sample

Demonstrates how to create a drawer effect by hiding and showing parts of the skin.

Multimedia\WMP\skins\textplay

Windows Media Player Tiny Skin Sample

Demonstrates the minimum coding to produce a skin that plays and stops.

Multimedia\WMP\skins\tiny

Setting the ContentDistributor Attribute Sample

Demonstrates how to use the Windows Media Format SDK to set a value for the WM/ContentDistributor attribute.

Multimedia\wmp\stores\cpp

Windows Media Player Online Store Sample Web Page

Designed to be used in an online store task pane. It demonstrates how to use the download manager to download digital media files to the user's computer.

Multimedia\wmp\stores\html

Windows Media Player Closed Captioning Sample

Demonstrates a simple use of closed captioning in a Web page.

Multimedia\WMP\webpages\closecap

Windows Media Player Web Browser Detection Sample

Demonstrates how to detect which version of Windows Media Player is available on the end user's computer and which browser is in use.

Multimedia\WMP\webpages\detection

Windows Media Player Web Embedding Sample with Error Handling

Demonstrates how to embed the Player in a web page and provides standard error-handling techniques.

Multimedia\WMP\webpages\embedded

Windows Media Player Markers Sample

Demonstrates a simple use of markers.

Multimedia\WMP\webpages\markers

Windows Media Player Minimal Web Embedding Sample

Demonstrates the minimum HTML file needed to embed the Windows Media Player ActiveX control in a Web page.

Multimedia\WMP\webpages\minocx

Windows Media Player Multiple Audio Language Sample

Demonstrates how to use the multiple audio language feature of the Windows Media format with the Windows Media Player 9 Series or later ActiveX control.

Multimedia\WMP\webpages\multilang

Windows Media Player Script Commands Sample

Demonstrates a simple use of script commands in a Web page.

Multimedia\WMP\webpages\scriptcom

Windows Media Player URL Flipping Sample

Demonstrates how to do “URL flips” in a Web page. URLs are embedded into a media file and when encountered, will display the Web pages in Microsoft Internet Explorer by using the embedded URLs.

Multimedia\WMP\webpages\urlflip

Portable Device API Sample

This application Demonstrates how to use the Portable Device APIs to work with portable devices. This includes discovering installed portable devices, enumerating device content, modifying content meta-data and transferring content to and from a device.

Multimedia\Wpd\WpdApiSample\cpp

Portable Device API Services Sample

This application Demonstrates how to use the Portable Device APIs to work with portable device services. This includes discovering installed device services, enumerating content under device services, modifying content meta-data and invoking methods on services.