Wavedev2 Porting Guide

Foreword  I’ve been working on a wavedev2 porting guide over the last few weeks and decided that it’s better to post what I’ve go so far rather than wait until it’s what I would consider finished. Expect future updates/additions as time allows, and feel free to ask for specific information in the comments.  Overview   This whitepaper gives an…

7

The Wavedev2 ForceSpeaker API

This is just a quick note describing the behavior of the MM_WOM_FORCESPEAKER API built into the wavedev2 wave driver.   One issue in Smartphone devices is determining where to route ringtones and other high-priority notifications. This is driven by two scenarios:   1. A fairly common design feature of Smartphone devices is a separate “high-volume” speaker on the…

13

Multichannel Audio in Windows CE

Most of the infrastructure is in place to support multichannel audio in Windows CE, although the number of components that we ship to actually implement it is limited. In this blog I’ll cover the varying types of multichannel audio and what features are in place in Windows CE to support it. For the purposes of…

10

Windows CE Audio: What does the term "mixer" mean?

In the Windows CE audio stack, the term “mixer” is used to refer to a couple of different, unrelated components. This blog will try to define each of them and how they differ. There are usually three different contexts in which “mixer” is used: the “Software Mixer”, the “WaveDev2 Mixer”, and the “Mixer API”. The…

4

The Wavedev2 Gainclass Implementation

Goals   Back in 2000, while we were defining the requirements for the Windows Mobile Smartphone audio design, one of our goals was to mute most audio applications while a phone call is in progress.   A secondary issue is the fact that most of the time the user keeps their phone in their pocket or backpack,…

13

The Wavedev2 MIDI Implementation

The wavedev2 wave driver sample code includes a fairly primitive MIDI synthesizer as part of the source code. The reason for its relative simplicity dates back to the question: “What can you implement in two weeks with no additional ROM hit to run on a 100MHz ARM processor”? Seriously, the original goal was just to…

10

Windows CE Audio Driver Samples

This is my first blog post, so please feel free to leave feedback with questions or comments, especially if you feel I’ve gotten anything wrong or if there’s some critical bit of infomation missing. Windows CE currently ships audio driver samples descended from three distict codebases: MDD/PDD, WaveDev2, and UAM. There are historical and functional reasons for…

14