Welcome to
Fundamentals of Audio and Video Programming for
This book is for software developers who want to add sound, music, or video to their programs. Not just any sound, music or video, but fancy stuff: special effects, 3-D effects, random and ambient effects, and so on. Although you ll learn how to do a straight
The primary philosophy of the book and its
This book is for programmers who are already adept at Visual C++. You should already have written a number of C++ applications or tools, and understand topics such as objects, inheritance, compiling, and debugging. Primarily, the main software tools we will be using are C++, with the development environment provided by Visual Studio.
If you are reading this book, you have probably already experimented with graphics and sound. The more experience that you have with Microsoft DirectX, the easier coding will be, although if you have no experience of the audio, music or video Software Development Kits (SDKs) within DirectX, you will be fine because we start from the beginning. The typical DirectX programmer understands Direct 3D much better than any of the other DirectX
DirectX is based on Microsoft s Component Object Model (COM), which
The team writing this book is from the documentation
In this book, we will
The book starts with an introduction to sound effects: first mono, then stereo, then 3-D, then 3-D with special and environmental effects. Following this, we examine the important topics of streaming sound and the use of property sets to get EAX environmental reverb effects to work. We ll also look at what s possible with 5.1/6.1/7.1 surround sound.
In many of today s games, there is a move away from using video clips (often referred to as cut scenes), partly because of the difficulty in obtaining good clips, and the lack of options in rendering them. This difficulty is partly due to the lack of connectivity between DirectShow (the video capture and rendering SDK) and the rest of DirectX. DirectX 9 has gone a long way towards remedying this issue, and the video chapters describe how to take advantage of this improvement. The video-based samples that accompany these chapters are fun and impressive, showing how to make a game out of rendering the video, and how to render video to a Direct3D surface (for example, onto a wall in a room).
The book also explains the techniques involved in capturing raw sound and video, such as cleaning noise out of samples, and going through the process of preparing them for repeated rendering. In this case, we will be using some tools developed outside of Microsoft.
So, close your door, install the book CD, go to the directory of executables, and pump up the volume.
Fun was never
One of the main differences between SDK documentation and a book is that since the SDK documentation comes out with the product, it usually lacks the benefit of experience using the material. A book should not simply be a rehash of the SDK docs, but a
First mention goes to Mike Wasson, a programming writer with several
Cornel Moiceanu, a tools programmer at Microsoft, contributed some of his own compositions to the music tracks available on the CD.
Originating the content of a book is of course only part of the story. Cathy McDonald took on the awesome task of editing our
At Microsoft Press, Juliana Aldous Atkinson helped the book proposal become reality, before handing over the publishing task to Robin Van Steenburgh. Thanks also to Lynn Finnel, an editor at MS Press, for her hard work and persistence with the project, Tess McMillan for building the CD, and to Joel Panchot, the MS Press artist, for so many inspired pieces of artwork.
There are also those who contributed their time in technically reviewing the content and code samples. Stephen Estrop and Dennis Evseev provided invaluable feedback on the VMR chapters, while Dugan Porter, Stephen Handley and Alan Ludwig provided insightful feedback on the audio chapters.
From the management side, User Education manager Tom Woolums approval of the
Finally I must thank the development
For my contribution, I wrote seven of the eight chapters on audio, and the samples that go along with them.
Thanks for buying this book, and I hope you enjoy working with it as much as we did
Dr. Peter Turcan
SDK Writing Manager
Digital Media Division
Microsoft Corporation