Shiny graphics, desktop widgets, a redesigned Start menu … most of what you’ve likely heard about Windows Vista means little to making music. So, we’ve grilled the senior technical expert and CTO at long-time Windows developer Cakewalk in a CDM exclusive on the guts of the new Windows and what it really means for audio production.
Cakewalk’s Noel Borthwick should know the answers. He’s not only worked on getting SONAR 6.2 to work on Vista; he’s also worked with Microsoft to make sure music customers get features they need. Rather than water this down, we’ll get all the way into the technical details, but here’s the brief summary of some of the most interesting benefits, as I see it:
- More stability and security should help keep misbehaved drivers and malware from taking down your system.
- Better, more “glitch-resistent” low-latency driver functionality will improve audio performance, particularly if using the new WaveRT driver model.
- Better performance from the built-in audio included on Vista-ready computers and other supported built-in hardware will make your computer’s sound hardware more useful for day-to-day work. Or, in other words, you won’t always have to lug around an extra interface to fill in for your laptop’s headphone jack. (Interestingly, I’ll bet this could extend to Apple’s Intel MacBooks and MacBook Pros, which use the common Realtek audio chipset — perfect if you’re dual-booting to run SONAR and FL Studio. We should know soon.)
Later this month or early next, I’ll be ready to throw my full arsenal of favorite Windows music tools at the new OS (SONAR, Ableton Live, Max/MSP, Audition Pro, and others). In the meantime, we can get to know the OS’ core better.
Noel Borthwick is Cakewalk’s CTO and Vista expert; he has played a key role in collaborating with Microsoft on the specification of the WaveRT architecture for professional audio applications.
The main performance benefits for DAW users can be attributed to the MMCSS and WaveRT implementation in Vista.
DAW users are aware that streaming low-latency audio comes at the price of CPU consumption. Also, there is a threshold beyond which lower latency can cause glitches in audio playback. To address this long-standing issue, Vista has new features designed to aid real-time streaming multimedia applications. The new Multimedia Class Scheduler (MMCSS) and WaveRT audio drivers offer applications a more efficient mechanism to stream low-latency audio with a lower CPU hit.
Vista now takes advantage of the Graphics Processing Unit (GPU) on video cards for many graphics-oriented functions. This can translate into saved CPU cycles and smoother audio when you have many graphics-intensive plug-ins loaded. By offloading drawing functions to the GPU, you have more CPU resources left for your audio.
Using current hardware and drivers, users can expect equivalent performance to XP on Vista with the caveat that they will not be able to run Aero if their system is not robust enough. The Aero feature in Vista provides visual effects such as glass-like translucent window elements that you can see through. Vista scales to the hardware capabilities of the computer on which it is installed, so all computers that meet minimal hardware requirements will have Aero enabled. However, depending on your video hardware capabilities, Aero features can also use native CPU. If audio performance is compromised, the user can switch off Aero from the Control Panel.
Vista has numerous enhancements that will provide more system stability.
To start, the underlying audio subsystem has been re-architected. For example, driver components that were previously required to run in kernel mode now run in user mode. What this means is that a faulty driver cannot bring down the entire operating system in Vista. Additionally, Vista now enforces security to a much higher degree than XP or previous operating systems. The User Account Control (UAC) features protect the system from malicious software, such as spyware, etc. and programs that can change critical windows settings without the users knowledge. By running SONAR as a standard user without administrative privileges, DAW users can now keep their machines safer and less prone to failure.
Audio Guts, Explained
WaveRT driver: lower CPU consumption at lower latencies
WaveRT is the new Vista architecture for high-performance, real-time, low-latency audio drivers, designed for pro audio. The streaming model for such drivers is somewhat like [Steinberg's] ASIO and [Windows' previous driver model] DirectKS, but there are important differences. The WaveRT signal flow permits direct access to the internal audio hardware buffers and sample position counters, allowing a DAW application to stream audio to the hardware in the most efficient manner possible. Direct access to buffers and sample position means no costly user mode to kernel mode transitions on each audio pump cycle. With ASIO and Kernel Streaming (Direct KS WDM drivers) these transitions were unavoidable in Windows XP. This translates into lower CPU consumption while running at very low audio playback latencies.
Most off-the-shelf Vista-logo machines that will be available in 2007 will ship with onboard audio that is WaveRT-compliant. This promises low-latency audio playback from even consumer-grade laptops and desktops. When more pro audio vendors make WaveRT drivers available, DAW users will benefit from more efficient low-latency playback.
Multimedia Class Scheduler (MMCSS): more glitch-resistant audio playback
The Multimedia Class Scheduler service allows multimedia applications to register their time-critical processing to run at an elevated thread priority, thus ensuring prioritized access to CPU resources for time-sensitive DSP processing and mixing tasks. You can think of this as anti-glitch insurance against other, non-audio-related processes running on your computer competing for CPU. Basically, with MMCSS you minimize interruptions or glitches in audio playback even when running other applications in the background.
CDM Q & A with Noel Borthwick
Peter: New validation requirements for drivers sound like a good thing as far as system reliability and security, but won’t this cause added compatibility issues? And I understand that the 64-bit version of Windows Vista (x64) won’t allow unsigned drivers at all?
Noel: You can get non-signed x64 drivers to work. You have to explicitly enable loading of unsigned drivers at boot up time of Vista x64. To allow unsigned drivers, you must press F8 at boot up time of Vista X64 and choose “Disable Driver Signature Enforcement” from the menu. As an example, we have tested the M-Audio FireWire Audiophile x64 drivers under Vista, although they are not signed. Note: Microsoft may remove this option in a future update of Vista.
Peter: What kinds of latency can we expect from Vista?
Noel: You will get the same millisecond latency in Vista as in XP with ASIO and WDM drivers. The latency is a function of the driver-supported buffer size, not the operating system. However, WaveRT drivers, when available, promise a more efficient low-latency experience under Vista. I.e., there will be lower CPU usage when running low latencies. WASAPI, as the name implies, is an API not a driver model. The new driver functionality that is relevant to Vista is WaveRT. See http://www.microsoft.com/whdc/device/audio/wavertport.mspx for more info on this.
Peter: I see that Vista includes new security measures for protecting buffer overruns from malware attacks. I’ll be honest, I have no idea what this would mean for apps and memory addressing.
Noel: Doesn’t mean much unless an application makes use of this. Most audio applications will not use this due to increased processing overhead.
Peter: We’ve gone through a lot of the technical details. The big question for many users is, how long should they wait before upgrading?
Noel: They should wait as long as they have working drivers for the components they need, which shouldn’t be very long, since most pro audio vendors are already releasing versions of their drivers that are signed for Vista. (Most of these are basically the same XP DirectKS or ASIO drivers that have been signed for Vista.) Many applications such as SONAR 6 are Vista-ready today.
Peter: I have some of my own opinions on the different Vista editions, but what version are you recommending?
A: That all depends on what features you want. A resource for sorting this out is Microsoft’s official Windows Vista Product Guide. Ed.: Noel notes that this is the best place to look partly because the non-Microsoft references are sometimes outdated; you’ll find some pretty exhaustive information on features. My personal feeling is that most CDM readers will want Vista Ultimate, because otherwise they’ll miss power features like Remote Desktop. We’ll talk more about this once I get a review copy of Vista’s final release. -PK
However, access to RAM is one of the most attractive aspects of native 64-bit computing so here is a breakdown of RAM supported in the different Vista offerings:
(64 bit OS)
Windows Vista Business: 128GB+
Windows Vista Home Premium: 16GB
Windows Vista Home Basic: 8GB
(32 bit OS)
Windows Vista Home Premium: 4GB
Windows Vista Home Basic: 4GB
Peter: Does MMCSS benefit all audio operations (e.g., if people are using ASIO drivers), or just WaveRT?
Noel: The MMCSS subsystem itself is independent of WaveRT. MMCSS is the Multimedia Class Scheduler service and affects the prioritization of application threads that are registered with MMCSS. It is up to the application to register its time critical processing threads with MMCSS. You will see MMCSS benefits using ASIO, WDM and WaveRT capable drivers in SONAR. The combination of MMCSS and WaveRT will provide the maximum benefit.
Peter: Offloading drawing functions to the GPU of course makes sense in theory, but have you seen noticeable real-world benefits?
Noel: Regarding graphics-intensive audio plugins, many plug-ins make use of transparency today. This is most commonly done using the “alpha blending” GDI operation which can be GPU-assisted. Additionally, the new Windows Display Driver Model (WDDM) in Vista makes heavy use of the GPU, so there are more graphics operations that use the GPU than before. Also, the Vista operating system itself is more graphics hungry than XP, so the GPU plays a strong role in offloading opeations that would otherwise use CPU cycles. The ability to offload graphics to the GPU can also open the door to applications and plug-in developers to create more graphically rich applications without taxing the native CPU.
Peter: Is UAC likely to then prompt users during any typical operations for music? I can imagine it would for music drivers, though would they simply approve a prompt to, say, install a new driver?
Noel: You will not be prompted for permission during normal operations of your DAW. With properly-designed UAC compliant applications, you typically need administrative privileges only to install new components such as plugins or drivers. Vista has really locked down the prohibited operations that an application can perform without administrator privileges. In “UAC Administrator Approval Mode”, the default mode in Vista even for administrators, if an application attempts to write to certain prohibited registry or folder locations, Vista will “virtualize” these operations writing to a different location instead. This can be very confusing to an end user since files are not written in the expected location. Additionally, virtualization only applies to the X86 flavor of Vista. Vista X64 versions will simply fail these operations and cause application malfunction. All these factors make it very important for applications to support UAC to guarantee a smooth Vista user experience.
CDM: Thanks, Noel! Stay tuned to CDM for detailed real-world information on Vista for audio and music you won’t find anywhere else. (I can guarantee that, because information I can’t find anywhere else I’ll get and put here — I need it, too!) I’ll be live at the launch event with Microsoft in New York (yeah, we’ll see whether Bill Gates is able to muster a reality distortion field or not, or maybe they’ll at least give me champagne), and then we’ll run Vista through its paces running a variety of music software from Cakewalk, Ableton, Image Line, and other developers.