The Wayback Machine - https://web.archive.org/web/20111027234243/http://www.codeguru.com/cpp/g-m/

    Graphics & Multimedia

    Simple C++ MP3 Player Class

    A no frills MP3 player class, based on DirectShow.

    Library for Raw Video Processing

    Learn how to perform image processing on AVI files using the Microsoft AVIFile API.

    Rubix Cube

    This program presents an original way of the famous Rubik's Cube by an assembly of 27 multi-colored cubies isolated in the space. Even during its deformations, it allows a 3D vision of the cube thanks to the basic MFC graphic functions. This simulation can also rapidly calculate a solution to reordering the Cube.

    C++ Programming: Easy Screen Capture Using MFC/ATL

    Learn to use CScreenImage, an MFC/ATL extension class for screen image captures.

    How to add DMO in DirectShow filter graph

    In this article, Mufti Mohammed demonstrates how we can easily add audio effects by placing an audio DMO into the DirectShow filter graph.

    Tip: Detect if a Language Font is Installed (Such as East Asian)

    Check if any language (such as East Asian) is Installed on a user's computer.

    How to Use a Font Without Installing It

    How to use a font without installing it first on user systems.

    Outline Text, Part 1

    How to draw outlined text with GDI/GDI+.

    Outline Text, Part 2

    Display outline text with a translucent shadow and display a cached outline text for video rendering.

    Windows Imaging Component

    Use Windows Imaging Component(WIC), the new Imaging library from Microsoft to open and save images, including HD Photo format images.

    A Multidevice ASIO Output Plugin for WinAMP

    Explore a C++ replacement of the official ASIO SDK that supports multiple ASIO devices put to the test in a tiny WinAMP output DLL.

    Graphics Class Design : Shape

    Class Shape can provide you with the ability to represent things appearing in a Window. Learn about this class from an industry legend.

    Guitar Tuner Vista Gadget Using Silverlight

    Walk through the development of a simple guitar tuner Vista sidebar gadget and in the process learn a little bit about Silverlight, XAML, and Vista gadgets.

    AL 3D Audio and Environmental Audio Extension

    Games and sophisticated applications require the use of a 3D Audio facility to place their gamers or users in a 3D Space. This results in a virtual world in which the user is immersed, resulting in an improved user response. Learn to use a technology by Creative Labs, the EAX or Environmental Audio Extension, that makes the virtual world richer with respect to 3D sound.

    How to Construct a Reusable Silverlight ASP.NET User Control

    Silverlight provides new opportunities for building lasting connections with users. In this article, you will learn how to use this new tool to create a simple logo control.

    How to Save and Load a Windows Region with the Win32 API

    Learn how to save a Windows region to a file with GetRegionData and how to load and re-create it with ExtCreateRegion the Win32 API way.

    ImageStone

    ImageStone is a powerful C++ class library for image manipulation. It is written in pure C++ and is easily portable. Its features include load/save (supports BMP, GIF, JPG, PNG, TIF, ICO, TGA, PCX, PSD...), display, histogram, undo/redo, and image transformation with over 100 predefined effects.

    Capturing Windows Regardless of Their Z-Order

    Capture a top window's content to a BMP file, regardless of the window's z-order.

    Find Simplicity and Portability in PNGwriter Graphics Library

    PNGwriter is an easy-to-use open source graphics library that uses PNG as its output format. Jump right in with a demo for creating a PNG programmatically.

    Multimedia Audio SDK

    No amount of description of a tune can ever replace the experience of hearing it. But, playing a sound file synchronously or asynchronously, mixing sound, or excercising still finer control over it has been a pain in the neck. Audio API makes playing sound a very comfortable and enjoyable experience.

    Extracting the Thumbnails and EXIF Information of JPEG Files

    Digital cameras add material to the JPEG files they create, containing information that is easy to extract: thumbnails and information EXIF.

    How Speech Recognition Works

    Learn about the basic functioning of Speech Recognition.

    Using a Camera with Windows Mobile 5

    Learn how to access a camera and capture video by using a Windows Mobile 5.0 API called DirectShow.

    Transparent Flash Control in Plain C++

    Learn about OLE container implementation to host a Transparent Flash Player Control using plain C++. No ATL, MFC, or other libraries are used.

    Progress Sphere

    Learn about a class that displays and automates a translucent, shadowed modal dialog with a progress sphere.

    DVD Explorer

    Learn about a new utility to analyse the data's structure on a DVD.

    Using Windows Vista Icons

    Learn about the changes in the .ico format in Windows Vista and how to compile Vista icons into your applications.

    Setting Up OpenGL in an MFC Control

    Learn how set up an OpenGL rendering context inside an MFC control and make use of the timers MFC has to offer.

    Intercept Calls to DirectX with a Proxy DLL

    Learn to intercept calls to DirectX (D3D) by using a proxy DLL ("stub-dll"). The concept is used to show information on top of a DirectX full screen game, without touching the game's source.

    PortAudio: Portable Audio Processing for All Platforms

    The days of locking your audio applications into one platform are over. PortAudio, a free, cross-platform audio I/O library, enables you to record and/or play sound using a simple callback function.

    File Open and Save As Dialogs for MFC Applications Using GDI+

    Learn about CFileDialog-derived classes that offer an easy way to implement File Open and Save As dialogs in MFC applications that use GDI+.

    Mould Text in Any Shape

    Sometimes, putting text in a rectangular block may just be a little too straight. With the C++ class QEnvelopeText, you can mould a piece of body type in any shape.

    Anti-Aliased Image Transformation (Aaform)

    Given an image and a quadralateral, Aaform will fit the image onto the quadraleteral passed using geometry.

    Anti-Aliased Image Rotation (Aarot)

    Rotate images using geometry.

    Let Your Characters Dance and Wiggle

    This versatile class arranges the characters of a text string along any curve.

    Make GDI+ Less Finicky About Fonts

    Windows GDI+ understands only half of the fonts out there. Use the QGraphicsText class to work with the other half.

    Drawing Curved Objects

    Add support for interactive curve drawing to your MFC app by dropping in theQBezierTracker class.

    Scaling, Rotating, and Shearing with QTransformTracker

    This CRectTracker on steroids not only lets you move and scale screen objects, but also rotate and shear them.

    "Rubber Sheeting" with QWarpTracker

    Warping is the most drastic way to change the form of a GDI+ graphics object. The class QWarpTracker lets you do it interactively.

    Cross-Platform Game Development for C++ Devs

    Are you an aspiring game developer who's not sure how to get started? Get a close-up look at an open source, cross-platform gaming engine that can have you on your way to creating a hit game title in no time.

    The Mists of Avalon

    Learn about "Avalon," the exciting new presentation subsystem of the upcoming Windows platforms. After an introduction to declarative drawing and XAML, you'll use XAMLPad to get a first taste of Avalon programming.

    Capture Live Video from Various Video Devices

    LiveVideo captures various video sources from various devices attached to the computer.

    Puzzle, a Game with the MFC Doc/View Architecture (SDI/MDI)

    Learn how to display a menu with thumbnails and several other windows, move and manage the pieces of a puzzle with a linked list, and then show them without flicker.

    Build a Maintenance Application with the XmlTextWriter/XmlTextReader Classes

    Tom Archer presents a step-by-step tutorial for building an application that uses the .NET XML classes to read and write video information to an XML file.

    DirectShow Single-Frame Capture Class Without MFC

    Learn how to use DirectShow to capture a frame into a Windows DIB from a DV Camera or Web Camera, FireWire, or USB.

    MFC Multithreaded Classes for Recording, Playing, and Saving (WAV Files)

    Record sound and echo it to the computer speakers. The sound is also saved in a sound file that can be played back to the computer speakers.

    Wave Player & Recorder Library

    An easy to use wave library that can be used in a wave player or a wave recorder.

    2D & 3D Visualization Techniques for Geo-Referenced Images

    Provides some conceptual background for working with geo-referenced imagery and specific details for GeoTIFF images. Also provides a 2D & 3D sample project with first person fly throughs.

    An MFC OpenGL Polygon Tessellation Demo

    Discover a MSVC++ V6 MFC SDI project that demonstrates how to access the OpenGL polygon tesselation functions in an MFC C++ application.

    Video for Windows Single-Frame Capture Class Without MFC

    Learn to capture single frames from a webcam to memory for environments where it isn't possible to use MFC.