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).

 See also:

New Win32 Samples in Windows SDK for Windows 7: Networking and Related Services

New Win32 Samples in Windows SDK for Windows 7: Multimedia

New Win32 Samples in Windows SDK for Windows 7: Security

New Win32 Samples in Windows SDK for Windows 7: Systems Management

New Win32 Samples in Windows SDK for Windows 7: Open Packaging Conventions (OPC)

New Win32 Samples in Windows SDK for Windows 7: Tablet PC and MultiTouch

New Win32 Samples in Windows SDK for Windows 7: Web

New Win32 Samples in Windows SDK for Windows 7: Windows Base

New Win32 Samples in Windows SDK for Windows 7: Windows User Interface

New Win32 Samples in Windows SDK for Windows 7: Windows XML Paper Specification (XPS)

New Win32 Samples in Windows SDK for Windows 7: Communication

 

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

Multimedia\audio\RenderSharedTimerDriven

Simple "Hello, World" Direct2D application that draws text to the screen.

Demonstrates how to use Direct2D to draw the text, “Hello, World.”

Multimedia\Direct2D\Direct2DHelloWorld

Direct3D/Direct2D Interoperability Sample

Demonstrates how to use Direct2D to project 2D content onto a 3D surface.

Multimedia\Direct2D\DXGI Interoperation Sample

GDI/Direct2D Interoperability Sample

Demonstrates how to write Direct2D content to a GDI DC.

Multimedia\Direct2D\GdiInteropSample

Direct2D Geometry Realization Sample

Demonstrates how to use meshes and A8 render targets to improve performance when rendering complex shapes.

Multimedia\Direct2D\GeometryRealizationSample

Interactive 3D Text Sample

Demonstrates how to use DirectWrite and Direct2D to create editable 3D text.

Multimedia\Direct2D\Interactive3dTextSample

Direct2D ListView Control Sample

Demonstrates how to use Direct2D to create a list view control.

Multimedia\Direct2D\ListViewSample

Direct2D Antialiasing Sample

Demonstrates different antialiasing rendering modes.

Multimedia\Direct2D\MSAARenderingSample

Direct2D Saving an Image as a File Example

Demonstrates how to write Direct2D content to an image file.

Multimedia\Direct2D\SaveAsImageFileSample

Simple Direct2D Application

Demonstrates a simple Direct2D application. It draws text, images, shapes, and creates a pattern.

Multimedia\Direct2D\SimpleDirect2DApplication

Direct2D Animate Along a Path Sample

Demonstrates how to animate an object along a geometric path.

Multimedia\Direct2D\SimplePathAnimationSample

Direct2D Text Animation Sample

Demonstrates different ways to render animated text.

Multimedia\Direct2D\TextAnimationSample

DMO DMODemo

Demonstrates how to use a DMO.

Multimedia\DirectShow\DMO\DMODemo

A Choose Font Dialog Using DirectWrite

Demonstrates choosing a font face, size and weight.

Multimedia\DirectWrite\ChooseFont

Custom Font Loader Sample

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.

Multimedia\DirectWrite\HelloWorld

DirectWrite layout sample

Demonstrates various DirectWrite features such as: Glyph rendering, Complex script shaping, Script analysis, Bidi ordering (?abc?), Line breaking, Font fallback, Font enumeration, ClearType rendering, OpenType styles, Inline objects, Trimming, and Selection hit-testing.

Multimedia\DirectWrite\PadWrite

DirectWrite Text Rendering Sample

Demonstrates the rendering capabilities of DirectWrite, both to a DIB and a Direct2D surface.

Multimedia\DirectWrite\RenderTest

A simple version of Hello World with DirectWrite

A version of the DirectWrite Hello World sample that uses simple text only.

Multimedia\DirectWrite\SimpleHelloWorld

DirectWrite Text Dialog Sample

Demonstrates font enumeration, changing font face, style, weight, underline, and size using DirectWrite. Displays the changes in real time.

Multimedia\DirectWrite\TextDialogSample

Windows Color System Color Translation Sample

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.

Multimedia\Wpd\

 

 

Karin Meier-Magruder

Program Manager for Samples

Windows SDK Team