simphonics, inc. fxdirect audio system for v+. simphonics, inc. what is fxdirect ® audio subsystem...
TRANSCRIPT
SimPhonics, Inc.
FXFXDirectDirect
Audio System for V+Audio System for V+
SimPhonics, Inc.
What Is FXDirect®What Is FXDirect®
• Audio Subsystem Add-on to V+– Currently built-in
• Consists of Objects for Manipulation of Audio– Synthesis/sampling– Mixing
• Audio Subsystem Add-on to V+– Currently built-in
• Consists of Objects for Manipulation of Audio– Synthesis/sampling– Mixing
SimPhonics, Inc.
What Is FXDirect®What Is FXDirect®
• V+ Wrapper Around DirectSound®
• Can be used with advanced hardware (SMx)– FXDirect alone – 4 channels (OTS sound
Cards)– FXDirect with SMx – Up to 50 Channels
• V+ Wrapper Around DirectSound®
• Can be used with advanced hardware (SMx)– FXDirect alone – 4 channels (OTS sound
Cards)– FXDirect with SMx – Up to 50 Channels
SimPhonics, Inc.
• Basic Sampling Theory
• Evolution of Audio Generation
• Sampling Versus Synthesis
• Microsoft DirectX
• FXDirect
• Demo and Hands-On
OverviewOverview
SimPhonics, Inc.
Basic Sampling TheoryBasic Sampling Theory
• “Sampling” is Digitizing Waveforms• Finite sample rate
• Typical 22khz, up to 48khz
• “Sampling” is Digitizing Waveforms• Finite sample rate
• Typical 22khz, up to 48khz
SimPhonics, Inc.
Analog/Digital - Digital/Analog Analog/Digital - Digital/Analog
SimPhonics, Inc.
Bandwidth IssuesBandwidth Issues
• Nyquist Frequency– Maximum Usable Frequency is ½ Sample Rate– Assumes Ideal Conditions
• Nyquist Frequency– Maximum Usable Frequency is ½ Sample Rate– Assumes Ideal Conditions
SimPhonics, Inc.
Bandwidth IssuesBandwidth Issues
• Higher Sample Rates– More samples (memory & processor overhead)– Higher quality
• Lower Sample Rates– Less samples, lower quality of audio
• Typical Industry– CD quality audio is 44.1khz– Telephone quality is 8khz.
• Higher Sample Rates– More samples (memory & processor overhead)– Higher quality
• Lower Sample Rates– Less samples, lower quality of audio
• Typical Industry– CD quality audio is 44.1khz– Telephone quality is 8khz.
SimPhonics, Inc.
Sample Bit DepthsSample Bit Depths
• More Bits Per Sample– Higher Quality (Lower THD)
• Typical Industry– CD quality 16 Bit– Telephone quality is 12 Bit– Up to 24 With Gadget Labs System
• More Bits Per Sample– Higher Quality (Lower THD)
• Typical Industry– CD quality 16 Bit– Telephone quality is 12 Bit– Up to 24 With Gadget Labs System
SimPhonics, Inc.
Sample Rate vs. Control Rate Processing
Sample Rate vs. Control Rate Processing
• Sample Rate– Processor Runs at Sample Rate
– Processor Manipulates Samples
– Very High Overhead
• Control Rate– Processor Runs at 20 – 30Hz
– Processor Manipulates Buffers of Samples
– At 22kHz SR, Buffer Would be 733 Samples, 1 Sec.
• Sample Rate– Processor Runs at Sample Rate
– Processor Manipulates Samples
– Very High Overhead
• Control Rate– Processor Runs at 20 – 30Hz
– Processor Manipulates Buffers of Samples
– At 22kHz SR, Buffer Would be 733 Samples, 1 Sec.
SimPhonics, Inc.
Sample Rate ProcessingSample Rate Processing
• SimPhonics FX-30 System– Manipulate Individual Samples– DSP Iterates at Sample Rate
• SimPhonics FX-30 System– Manipulate Individual Samples– DSP Iterates at Sample Rate
TO HOST PC CPU AUDIO OUTPUT
DSP
Control Rate Processing (30 - 60Hz)
Sample Rate Processing (8 - 50kHz)
Control Data Sample Generation
SimPhonics, Inc.
Control Rate ProcessingControl Rate Processing
• Much Lower Processing Rates – Typically 20 – 30Hz– Samples Are Stored As “Chunks” or Buffers
• Much Lower Processing Rates – Typically 20 – 30Hz– Samples Are Stored As “Chunks” or Buffers
TO HOST PC CPU AUDIO OUTPUT
SOUND CARD
Control Rate Processing (30 - 60Hz)
Sample Rate Processing (8 - 50kHz)
SimPhonics, Inc.
Which Technique to Use?Which Technique to Use?
• Good Question
• PC Technology Can’t Operate at SR– Very Inefficient
• Dedicated DSP is Ideal for SRP– Big Bucks– Non Standard
• Good Question
• PC Technology Can’t Operate at SR– Very Inefficient
• Dedicated DSP is Ideal for SRP– Big Bucks– Non Standard
SimPhonics, Inc.
When to Use SRPWhen to Use SRP
• Mixing Low Latency Audio Input– Delays Using CRP are Unacceptable– Simulating Voice Systems (Intercoms, etc)
• Super Special Stuff– ???
• Mixing Low Latency Audio Input– Delays Using CRP are Unacceptable– Simulating Voice Systems (Intercoms, etc)
• Super Special Stuff– ???
SimPhonics, Inc.
New Technology and Standards Make CRP Work for SimulationNew Technology and Standards Make CRP Work for Simulation
• Before DirectX, No Standard Mixing API
• Intel’s MMX Initiative– Intel and Microsoft Collaborate/Squabble
• Microsoft Launches DirectX®– DirectSound is a Subset of DirectX
• Before DirectX, No Standard Mixing API
• Intel’s MMX Initiative– Intel and Microsoft Collaborate/Squabble
• Microsoft Launches DirectX®– DirectSound is a Subset of DirectX
SimPhonics, Inc.
DirectSoundDirectSound
WAVE FILES
Secondary Buffer
Secondary Buffer
Secondary Buffer
Direct Sound Mixer
Sound Card Channel
Text to Speech
V+ I/O Device
DISComm+ Network
Secondary Buffers
Primary Buffer
SimPhonics, Inc.
Sample Rate ConversionSample Rate Conversion
• Important DirectSound Feature– Different SR Secondary Buffers are Combined– DirectSound Does the SRC
• Quality and Overhead User Configurable– Control Panel, Multimedia Icon
• Important DirectSound Feature– Different SR Secondary Buffers are Combined– DirectSound Does the SRC
• Quality and Overhead User Configurable– Control Panel, Multimedia Icon
SimPhonics, Inc.
Using FXDirect with DirectSoundUsing FXDirect with DirectSound
WAVE FILES
Secondary Buffer
Secondary Buffer
Secondary Buffer
Direct Sound Mixer
Sound Card Channel
Secondary Buffers
SimPhonics, Inc.
Dynamic Control of SoundsDynamic Control of Sounds
• Since DirectSound Performs SRC:– Frequency and Amplitude May be Controlled in Real-Time
• Since Any Waveform Can Be Used:– CRP Can Be Used in Most Cases for SRP.
– I.E. Sine Wave Can Be Synthesized Off-Line and Used as a Secondary Buffer FXDirect Object
• Therefore, Don’t Let Them Tell You:– You can’t Use CRP for Simulation Systems
• Since DirectSound Performs SRC:– Frequency and Amplitude May be Controlled in Real-Time
• Since Any Waveform Can Be Used:– CRP Can Be Used in Most Cases for SRP.
– I.E. Sine Wave Can Be Synthesized Off-Line and Used as a Secondary Buffer FXDirect Object
• Therefore, Don’t Let Them Tell You:– You can’t Use CRP for Simulation Systems
SimPhonics, Inc.
Multiple ChannelsMultiple Channels
Secondary Buffer
Secondary Buffer
Secondary Buffer
Secondary Buffer
Secondary Buffer
Secondary Buffer
WAVE FILES
Secondary Buffer
Secondary Buffer
Secondary Buffer
Direct Sound Mixer
Sound Card Channel
SimPhonics, Inc.
Practical ExamplePractical Example
SimPhonics, Inc.
• FXDirect can use Almost Any Sound Card– Direct Sound Driver for Best Performance– Full Duplex for Voice I/O– WDM Driver Desirable
• FXDirect can use Almost Any Sound Card– Direct Sound Driver for Best Performance– Full Duplex for Voice I/O– WDM Driver Desirable
FXDirect OperationFXDirect Operation
SimPhonics, Inc.
FXDirect OperationFXDirect Operation
Platform Shell Configure Menu Associates FXDirect Channels with Audio Outputs
Platform Shell Configure Menu Associates FXDirect Channels with Audio Outputs
SimPhonics, Inc.
Channels Versus OutputsChannels Versus Outputs
• Multi-Channel Cards are VERY Rare– Most Do Not Use WDM Driver
– Others Do Not Enumerate Channels Properly
• As of Today, Only Two Exist– Gadget Labs With Stage Research and SimPhonics Drivers
– Echo Corporation’s Layla System
• Multi-Channel Cards are VERY Rare– Most Do Not Use WDM Driver
– Others Do Not Enumerate Channels Properly
• As of Today, Only Two Exist– Gadget Labs With Stage Research and SimPhonics Drivers
– Echo Corporation’s Layla System
SimPhonics, Inc.
FXDirect OperationFXDirect Operation
Stereo Channels are Actually 2 Outputs,Left and Right
Stereo Channels are Actually 2 Outputs,Left and Right
SimPhonics, Inc.
FXDirect MessagesFXDirect Messages
• Message Area of the Platform Shell– Run-time and Initialization Messages– Always Look at this Area When There is Trouble
• Message Area of the Platform Shell– Run-time and Initialization Messages– Always Look at this Area When There is Trouble
SimPhonics, Inc.
FXDirect Hands-onand Demo
FXDirect Hands-onand Demo