What s New in Core Audio
|
|
|
- Archibald Elliott
- 9 years ago
- Views:
Transcription
1 Media #WWDC15 What s New in Core Audio Session 507 Akshatha Nagesh AudioEngine er Torrey Holbrook Walker Senior New Feature Salesperson 2015 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from Apple.
2 Agenda AVAudioEngine Recap What s New Inter-device Audio AVAudioSession What s New Audio Unit Extensions Nob Hill Thursday 11:00 AM
3 AVAudioEngine Recap
4 Core Audio Stack ios and OS X AVAudioEngine Introduced in ios 8.0/OS X Application AVFoundation Refer to WWDC14 session 502 AVAudioEngine in Practice OpenAL AVAudioSession AVAudioPlayer AVAudioRecorder AVAudioEngine MIDI AudioToolbox Audio Codecs CoreAudio and Drivers
5 AVAudioEngine Goals Provide powerful, feature-rich API set Achieve simple as well as complex tasks Simplify real-time audio
6 AVAudioEngine Features Objective-C / Swift API set Low latency, real-time audio Play and record audio Connect audio processing blocks Capture audio at any point in the processing chain Implement 3D audio for games
7 AVAudioEngine Building blocks Node-AVAudioNode Source nodes: Provide data for rendering Processing nodes: Process data Destination node: Terminating node connected to output hardware
8 Sample Engine Setup Karaoke InputNode EffectNode (Delay) PlayerNode (Backing Track) MixerNode OutputNode NodeTapBlock (Analyze) PlayerNode (Sound Effects)
9 Sample Engine Setup Karaoke Source nodes InputNode EffectNode (Delay) PlayerNode (Backing Track) MixerNode OutputNode NodeTapBlock (Analyze) PlayerNode (Sound Effects)
10 Sample Engine Setup Karaoke Processing nodes InputNode EffectNode (Delay) PlayerNode (Backing Track) MixerNode OutputNode NodeTapBlock (Analyze) PlayerNode (Sound Effects)
11 Sample Engine Setup Karaoke Destination node InputNode EffectNode (Delay) PlayerNode (Backing Track) MixerNode OutputNode NodeTapBlock (Analyze) PlayerNode (Sound Effects)
12 Mixer Nodes AVAudioMixerNode Performs sample rate conversion, up/down mixing of channels Supports mono, stereo and multichannel inputs AVAudioEnvironmentNode Simulates a 3D space (listener is implicit) Supports mono and stereo inputs Spatializes only mono inputs
13 AVAudioMixing Protocol Defines properties for a mixer input bus Source nodes conform to this protocol Properties cached when not connected to a mixer Properties applied on connection to a mixer
14 AVAudioMixing Protocol Properties Common (all mixer nodes) volume - player.volume = 0.5 Stereo (AVAudioMixerNode) pan - player.pan = D (AVAudioEnvironmentNode) position - player.position = AVAudioMake3DPoint(-2.0, 0.0, 5.0) obstruction, occlusion, renderingalgorithm and more
15 AVAudioMixing Protocol Sample setup MixerNode PlayerNode MixerNode (Main Mixer) EnvironmentNode
16 AVAudioMixing Protocol Sample setup properties are cached MixerNode PlayerNode Mixing Settings volume = 0.5 pan = -1.0 position = (-1, 2, -5) MixerNode (Main Mixer) EnvironmentNode
17 AVAudioMixing Protocol Sample setup volume and pan take effect Mixing Settings MixerNode PlayerNode volume = 0.5 pan = -1.0 position = (-1, 2, -5) MixerNode (Main Mixer) EnvironmentNode
18 AVAudioMixing Protocol Sample setup MixerNode PlayerNode Mixing Settings volume = 0.5 pan = -1.0 position = (-1, 2, -5) MixerNode (Main Mixer) EnvironmentNode volume and position take effect
19 Handling Multichannel Audio Hardware setup OS X ios AVAudioEngine setup
20 Handling Multichannel Audio Hardware setup: OS X User can configure the hardware through Audio MIDI Setup
21 Handling Multichannel Audio Hardware setup: ios Configure AVAudioSession Playback use case: - Activate audio session - Check maximumoutputnumberofchannels - Set preferredoutputnumberofchannels - Verify actual outputnumberofchannels
22 Handling Multichannel Audio Hardware setup: ios-code example // example: audio playback use case do { let desirednumchannels = 6 // for 5.1 rendering let audiosession = AVAudioSession.sharedInstance() let category = AVAudioSessionCategoryPlayback try audiosession.setcategory(category) try audiosession.setactive(true) // check maximum available output number of channels let maxchannels = audiosession.maximumoutputnumberofchannels
23 Handling Multichannel Audio Hardware setup: ios-code example // example: audio playback use case do { let desirednumchannels = 6 // for 5.1 rendering let audiosession = AVAudioSession.sharedInstance() let category = AVAudioSessionCategoryPlayback try audiosession.setcategory(category) try audiosession.setactive(true) // check maximum available output number of channels let maxchannels = audiosession.maximumoutputnumberofchannels
24 Handling Multichannel Audio Hardware setup: ios-code example // example: audio playback use case do { let desirednumchannels = 6 // for 5.1 rendering let audiosession = AVAudioSession.sharedInstance() let category = AVAudioSessionCategoryPlayback try audiosession.setcategory(category) try audiosession.setactive(true) // check maximum available output number of channels let maxchannels = audiosession.maximumoutputnumberofchannels
25 Handling Multichannel Audio Hardware setup: ios-code example if maxchannels >= desirednumchannels { // set preferred number of output channels try audiosession.setpreferredoutputnumberofchannels(desirednumchannels) } let actualchannelcount = audiosession.outputnumberofchannels // adapt to the actual number of output channels.. } catch { // handle errors }
26 Handling Multichannel Audio Hardware setup: ios-code example if maxchannels >= desirednumchannels { // set preferred number of output channels try audiosession.setpreferredoutputnumberofchannels(desirednumchannels) } let actualchannelcount = audiosession.outputnumberofchannels // adapt to the actual number of output channels.. } catch { // handle errors }
27 Handling Multichannel Audio AVAudioEngine setup: ios / OS X Multichannel content AVAudioMixerNode Spatialized content (games) AVAudioEnvironmentNode
28 Handling Multichannel Audio AVAudioEngine setup: multichannel content Multichannel Content (5.1) PlayerNode MixerNode OutputNode Multichannel Hardware (5.1)
29 Handling Multichannel Audio AVAudioEngine setup: multichannel content set connection format get hardware format Multichannel Content (5.1) PlayerNode MixerNode OutputNode Multichannel Hardware (5.1)
30 Handling Multichannel Audio AVAudioEngine setup: multichannel content set connection format get hardware format Multichannel Content (5.1) PlayerNode MixerNode OutputNode Multichannel Hardware (5.1) // get output hardware format let output = engine.outputnode let outputhwformat = output.outputformatforbus(0) // connect mixer to output let mainmixer = engine.mainmixernode engine.connect(mainmixer, to: output, format: outputhwformat)
31 Handling Multichannel Audio AVAudioEngine setup: multichannel content set connection format get hardware format Multichannel Content (5.1) PlayerNode MixerNode OutputNode Multichannel Hardware (5.1) // get output hardware format let output = engine.outputnode let outputhwformat = output.outputformatforbus(0) // connect mixer to output let mainmixer = engine.mainmixernode engine.connect(mainmixer, to: output, format: outputhwformat)
32 Handling Multichannel Audio AVAudioEngine setup: multichannel content get content format set connection format Multichannel Content (5.1) PlayerNode MixerNode OutputNode Multichannel Hardware (5.1)
33 Handling Multichannel Audio AVAudioEngine setup: multichannel content get content format set connection format Multichannel Content (5.1) PlayerNode MixerNode OutputNode Multichannel Hardware (5.1) do { // open multichannel file for reading let mcfile = try AVAudioFile(forReading: fileurl) // connect player to mixer engine.connect(player, to: mainmixer, format: mcfile.processingformat) } catch {.. }
34 Handling Multichannel Audio AVAudioEngine setup: multichannel content Multichannel Content (5.1) PlayerNode MixerNode OutputNode Multichannel Hardware (5.1) channel mapping // schedule file on player // start engine // start player
35 Handling Multichannel Audio AVAudioEngine setup: spatialized content Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1)
36 Handling Multichannel Audio AVAudioEngine setup: spatialized content set compatible format get hardware format Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1)
37 Handling Multichannel Audio AVAudioEngine setup: spatialized content set compatible format get hardware format Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1) // map output hardware channel layout to a compatible layout let layouttag = kaudiochannellayouttag_audiounit_5_0 // for 5.1 HW layout let layout = AVAudioChannelLayout(layoutTag: layouttag) let envoutputformat = AVAudioFormat( standardformatwithsamplerate: outputhwformat.samplerate, channellayout: layout); engine.connect(envnode, to: output, format: envoutputformat)
38 Handling Multichannel Audio AVAudioEngine setup: spatialized content set compatible format get hardware format Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1) // map output hardware channel layout to a compatible layout let layouttag = kaudiochannellayouttag_audiounit_5_0 // for 5.1 HW layout let layout = AVAudioChannelLayout(layoutTag: layouttag) let envoutputformat = AVAudioFormat( standardformatwithsamplerate: outputhwformat.samplerate, channellayout: layout); engine.connect(envnode, to: output, format: envoutputformat)
39 Handling Multichannel Audio AVAudioEngine setup: spatialized content set compatible format get hardware format Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1) // map output hardware channel layout to a compatible layout let layouttag = kaudiochannellayouttag_audiounit_5_0 // for 5.1 HW layout let layout = AVAudioChannelLayout(layoutTag: layouttag) let envoutputformat = AVAudioFormat( standardformatwithsamplerate: outputhwformat.samplerate, channellayout: layout); engine.connect(envnode, to: output, format: envoutputformat)
40 Handling Multichannel Audio AVAudioEngine setup: spatialized content get content format set connection format Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1)
41 Handling Multichannel Audio AVAudioEngine setup: spatialized content get content format set connection format Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1) let file = try AVAudioFile(forReading: fileurl) engine.connect(player, to: envnode, format: file.processingformat) // set multichannel rendering algorithm player.renderingalgorithm = AVAudio3DMixingRenderingAlgorithm.SoundField
42 Handling Multichannel Audio AVAudioEngine setup: spatialized content get content format set connection format Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1) let file = try AVAudioFile(forReading: fileurl) engine.connect(player, to: envnode, format: file.processingformat) // set multichannel rendering algorithm player.renderingalgorithm = AVAudio3DMixingRenderingAlgorithm.SoundField
43 Handling Multichannel Audio AVAudioEngine setup: spatialized content Mono Content PlayerNode Environment Node OutputNode Multichannel Hardware (5.1) spatial mapping // schedule file on player // start engine // start player
44 AVAudioEngine What s new
45 AVAudioEngine What s new Splitting support Audio format conversion support AVAudioCompressedBuffer AVAudioConverter AVAudioSequencer
46 AVAudioEngine What s new Splitting support Audio format conversion support AVAudioCompressedBuffer AVAudioConverter AVAudioSequencer
47 Splitting Support Sample setup PlayerNode EffectNode MixerNode
48 Splitting Support Sample setup PlayerNode EffectNode MixerNode Only one-to-one connections were supported
49 Splitting Support Sample setup PlayerNode MixerNode
50 Splitting Support Sample setup EffectNode 1 PlayerNode MixerNode EffectNode 2
51 Splitting Support Code example EffectNode 1 PlayerNode MixerNode EffectNode 2
52 Splitting Support Code example EffectNode 1 PlayerNode MixerNode EffectNode 2 Connection points AVAudioConnectionPoint [node, bus]
53 Splitting Support Code example // Create an array of player connection points let connpoints = [ AVAudioConnectionPoint(node: effect1, bus: 0), AVAudioConnectionPoint(node: mixer, bus: 1), AVAudioConnectionPoint(node: effect2, bus: 0)]
54 Splitting Support Code example // Create an array of player connection points let connpoints = [ AVAudioConnectionPoint(node: effect1, bus: 0), AVAudioConnectionPoint(node: mixer, bus: 1), AVAudioConnectionPoint(node: effect2, bus: 0)] // Make player connections engine.connect(player, toconnectionpoints: connpoints, frombus: 0, format: playerformat) // Make effect nodes to mixer connections..
55 AVAudioMixing Protocol With splitting EffectNode (Reverb) PlayerNode MixerNode EffectNode (Distortion)
56 AVAudioMixing Protocol With splitting EffectNode (Reverb) volume = 0.5 PlayerNode Mixing Settings volume = 0.5 MixerNode EffectNode (Distortion) volume = 0.5 // set player s global mixing setting player.volume = 0.5
57 AVAudioMixing Protocol With splitting volume = 0.8 (override) EffectNode (Reverb) Mixing Settings volume = 0.8 PlayerNode Mixing Settings volume = 0.5 MixerNode EffectNode (Distortion) volume = 0.5 // override mixing settings of mixer bus0 if let mxdest0 = player.destinationformixer(mixer, bus: 0) { mxdest0.volume = 0.8 }
58 AVAudioMixing Protocol With splitting EffectNode (Reverb) Mixing Settings volume = 0.8 PlayerNode Mixing Settings volume = 0.5 MixerNode EffectNode (Distortion) Mixing Settings volume = 0.2 volume = 0.2 (override) // override mixing settings of mixer bus1 if let mxdest1 = player.destinationformixer(mixer, bus: 1) { mxdest1.volume = 0.2 }
59 AVAudioMixing Protocol With splitting EffectNode (Reverb) Mixing Settings volume = 0.8 PlayerNode Mixing Settings volume = 0.5 MixerNode EffectNode (Distortion) Mixing Settings volume = 0.2 settings lost // disconnect mixer bus1 input, corresponding mixing settings are lost engine.disconnectnodeinput(mixer, bus: 1)
60 AVAudioMixing Protocol With splitting EffectNode (Reverb) Mixing Settings volume = 0.8 PlayerNode Mixing Settings volume = 0.5 MixerNode EffectNode (Distortion)
61 AVAudioMixing Protocol With splitting EffectNode (Reverb) Mixing Settings volume = 0.8 PlayerNode Mixing Settings volume = 0.5 MixerNode EffectNode (Distortion) volume = 0.5 (global settings) // make a new connection, player s global mixing settings take effect engine.connect(effect2, to:mixer, frombus: 0, tobus: 1, format: format)
62 AVAudioMixing Protocol With splitting Source node with multiple mixer connections Properties changed on source node - Applied to all existing/new mixer connections Properties on individual mixer connections - Can be overridden - Not preserved on disconnections
63 Splitting support Restrictions From the split node to the mixer where all split paths terminate: Cannot have AVAudioUnitTimeEffect Cannot have any rate conversion
64 AVAudioEngine What s new Splitting support Audio format conversion support AVAudioCompressedBuffer AVAudioConverter AVAudioSequencer
65 AVAudioBuffer AVAudioPCMBuffer Uncompressed (PCM) audio data AVAudioCompressedBuffer (new in ios 9.0 / OS X El Capitan) Compressed audio data Used with AVAudioConverter
66 AVAudioConverter Utility class, higher-level equivalent for AudioConverter Audio format conversion PCM to PCM - Integer/float, bit depth, interleave/deinterleave, sample rate conversion PCM to/from compressed - Encoding - Decoding Can be used in conjunction with AVAudioEngine
67 AVAudioConverter With AVAudioEngine: sample use case AVAudioEngine PlayerNode EffectNode OutputNode
68 AVAudioConverter With AVAudioEngine: sample use case AVAudioEngine PlayerNode EffectNode OutputNode Compressed Audio Stream
69 AVAudioConverter With AVAudioEngine: sample use case AVAudioEngine PlayerNode EffectNode OutputNode PCMBuffer 1 Compressed Audio Stream PCMBuffer 2 PCMBuffer 3
70 AVAudioConverter With AVAudioEngine: sample use case AVAudioEngine PlayerNode EffectNode OutputNode PCMBuffer 1 Compressed Audio Stream AVAudio Converter PCMBuffer 2 PCMBuffer 3
71 AVAudioConverter Code example: encoding // Input format: 44.1 khz, 2 channel, non-interleaved, 16-bit signed integer let informat = AVAudioFormat( commonformat: AVAudioCommonFormat.PCMFormatInt16, samplerate: 44100, channels: 2, interleaved: false) // Output format: 44.1 khz, 2 channel, AAC var outdesc = AudioStreamBasicDescription( msamplerate: 44100, mformatid: kaudioformatmpeg4aac, mformatflags: 0, mbytesperpacket: 0, mframesperpacket: 0, mbytesperframe: 0, mchannelsperframe: 2, mbitsperchannel: 0, mreserved: 0) let outformat = AVAudioFormat(streamDescription: &outdesc)
72 AVAudioConverter Code example: encoding // Input format: 44.1 khz, 2 channel, non-interleaved, 16-bit signed integer let informat = AVAudioFormat( commonformat: AVAudioCommonFormat.PCMFormatInt16, samplerate: 44100, channels: 2, interleaved: false) // Output format: 44.1 khz, 2 channel, AAC var outdesc = AudioStreamBasicDescription( msamplerate: 44100, mformatid: kaudioformatmpeg4aac, mformatflags: 0, mbytesperpacket: 0, mframesperpacket: 0, mbytesperframe: 0, mchannelsperframe: 2, mbitsperchannel: 0, mreserved: 0) let outformat = AVAudioFormat(streamDescription: &outdesc)
73 AVAudioConverter Code example: encoding // Create a converter let converter = AVAudioConverter(fromFormat: informat, toformat: outformat) // Allocate an input PCM buffer let inbuffer = AVAudioPCMBuffer(PCMFormat: informat, framecapacity: 1024) // Allocate an output compressed buffer let outbuffer = AVAudioCompressedBuffer( format: outformat, packetcapacity: 8, maximumpacketsize: converter.maximumoutputpacketsize)
74 AVAudioConverter Code example: encoding // Create a converter let converter = AVAudioConverter(fromFormat: informat, toformat: outformat) // Allocate an input PCM buffer let inbuffer = AVAudioPCMBuffer(PCMFormat: informat, framecapacity: 1024) // Allocate an output compressed buffer let outbuffer = AVAudioCompressedBuffer( format: outformat, packetcapacity: 8, maximumpacketsize: converter.maximumoutputpacketsize)
75 AVAudioConverter Code example: encoding // Create a converter let converter = AVAudioConverter(fromFormat: informat, toformat: outformat) // Allocate an input PCM buffer let inbuffer = AVAudioPCMBuffer(PCMFormat: informat, framecapacity: 1024) // Allocate an output compressed buffer let outbuffer = AVAudioCompressedBuffer( format: outformat, packetcapacity: 8, maximumpacketsize: converter.maximumoutputpacketsize)
76 AVAudioConverter Code example: encoding // Create an input block that s called when converter needs input let inputblock : AVAudioConverterInputBlock = { innumpackets, outstatus in if (<no_data_available>) { outstatus.memory = AVAudioConverterInputStatus.NoDataNow; return nil; } else if (<end_of_stream>) { outstatus.memory = AVAudioConverterInputStatus.EndOfStream; return nil; } else {.. outstatus.memory = AVAudioConverterInputStatus.HaveData; return inbuffer; // fill and return input buffer } }
77 AVAudioConverter Code example: encoding // Create an input block that s called when converter needs input let inputblock : AVAudioConverterInputBlock = { innumpackets, outstatus in if (<no_data_available>) { outstatus.memory = AVAudioConverterInputStatus.NoDataNow; return nil; } else if (<end_of_stream>) { outstatus.memory = AVAudioConverterInputStatus.EndOfStream; return nil; } else {.. outstatus.memory = AVAudioConverterInputStatus.HaveData; return inbuffer; // fill and return input buffer } }
78 AVAudioConverter Code example: encoding // Create an input block that s called when converter needs input let inputblock : AVAudioConverterInputBlock = { innumpackets, outstatus in if (<no_data_available>) { outstatus.memory = AVAudioConverterInputStatus.NoDataNow; return nil; } else if (<end_of_stream>) { outstatus.memory = AVAudioConverterInputStatus.EndOfStream; return nil; } else {.. outstatus.memory = AVAudioConverterInputStatus.HaveData; return inbuffer; // fill and return input buffer } }
79 AVAudioConverter Code example: encoding // Create an input block that s called when converter needs input let inputblock : AVAudioConverterInputBlock = { innumpackets, outstatus in if (<no_data_available>) { outstatus.memory = AVAudioConverterInputStatus.NoDataNow; return nil; } else if (<end_of_stream>) { outstatus.memory = AVAudioConverterInputStatus.EndOfStream; return nil; } else {.. outstatus.memory = AVAudioConverterInputStatus.HaveData; return inbuffer; // fill and return input buffer } }
80 AVAudioConverter Code example: encoding // Conversion loop outerror = nil while (true) { let status = converter.converttobuffer(outbuffer, error: outerror, withinputfromblock: inputblock) if status == AVAudioConverterOutputStatus.EndOfStream status == AVAudioConverterOutputStatus.Error { break } // outbuffer contains output data.. }
81 AVAudioConverter Code example: encoding // Conversion loop outerror = nil while (true) { let status = converter.converttobuffer(outbuffer, error: outerror, withinputfromblock: inputblock) if status == AVAudioConverterOutputStatus.EndOfStream status == AVAudioConverterOutputStatus.Error { break } // outbuffer contains output data.. }
82 AVAudioConverter Code example: encoding // Conversion loop outerror = nil while (true) { let status = converter.converttobuffer(outbuffer, error: outerror, withinputfromblock: inputblock) if status == AVAudioConverterOutputStatus.EndOfStream status == AVAudioConverterOutputStatus.Error { break } // outbuffer contains output data.. }
83 AVAudioEngine What s new Splitting support Audio format conversion support AVAudioCompressedBuffer AVAudioConverter AVAudioSequencer
84 AVAudioSequencer Plays MIDI files Associated with an AVAudioEngine during instantiation Sends MIDI events to AVAudioUnitMIDIInstrument nodes in the engine
85 AVAudioSequencer Sample setup AVAudioEngine InstrumentNode MixerNode OutputNode
86 AVAudioSequencer Sample setup AVAudioEngine InstrumentNode AVAudioSequencer MixerNode OutputNode
87 AVAudioSequencer Sample setup AVAudioEngine InstrumentNode AVAudioSequencer MixerNode OutputNode
88 AVAudioSequencer Code example: AVAudioEngine setup do { // setup instrument node (e.g. sampler) let sampler = AVAudioUnitSampler() engine.attachnode(sampler) engine.connect(sampler, to: engine.mainmixernode, format: format) try sampler.loadinstrumentaturl(insturl) // start the engine try engine.start() } catch { // handle errors }
89 AVAudioSequencer Code example: AVAudioEngine setup do { // setup instrument node (e.g. sampler) let sampler = AVAudioUnitSampler() engine.attachnode(sampler) engine.connect(sampler, to: engine.mainmixernode, format: format) try sampler.loadinstrumentaturl(insturl) // start the engine try engine.start() } catch { // handle errors }
90 AVAudioSequencer Code example: AVAudioSequencer setup do { // create sequencer and associate with engine let sequencer = AVAudioSequencer(audioEngine: engine) // load MIDI file try sequencer.loadfromurl(fileurl, options: AVMusicSequenceLoadOptions.SMF_PreserveTracks) // start sequencer sequencer.preparetoplay() try sequencer.start() // audio will start playing } catch { // handle error }
91 AVAudioSequencer Code example: AVAudioSequencer setup do { // create sequencer and associate with engine let sequencer = AVAudioSequencer(audioEngine: engine) // load MIDI file try sequencer.loadfromurl(fileurl, options: AVMusicSequenceLoadOptions.SMF_PreserveTracks) // start sequencer sequencer.preparetoplay() try sequencer.start() // audio will start playing } catch { // handle error }
92 AVAudioSequencer Code example: AVAudioSequencer setup do { // create sequencer and associate with engine let sequencer = AVAudioSequencer(audioEngine: engine) // load MIDI file try sequencer.loadfromurl(fileurl, options: AVMusicSequenceLoadOptions.SMF_PreserveTracks) // start sequencer sequencer.preparetoplay() try sequencer.start() // audio will start playing } catch { // handle error }
93 AVAudioSequencer Handling multiple tracks AVAudioEngine t1 t2 InstrumentNode 1 AVAudioSequencer MixerNode OutputNode InstrumentNode 2
94 AVAudioSequencer Handling multiple tracks AVAudioEngine t1 InstrumentNode 1 AVAudioSequencer MixerNode OutputNode t2 InstrumentNode 2
95 AVAudioSequencer Code example: handling multiple tracks // create and setup engine // create sequencer // load MIDI file.. // send individual tracks to different instrument nodes in the engine let tracks = sequencer.tracks tracks[0].destinationaudiounit = sampler tracks[1].destinationaudiounit = midisynth // start sequencer..
96 AVAudioSequencer Transport controls Prepare to play, start, stop Set playback position Seconds or beats Set playback rate
97 Demo AVAudioEngine Akshatha Nagesh AudioEngine er Torrey Holbrook Walker Senior New Feature Salesperson
98 Summary AVAudioEngine Recap Handling multichannel audio What s new Splitting support Audio format conversion support - AVAudioCompressedBuffer - AVAudioConverter AVAudioSequencer
99 Inter-device Audio Mode for ios Torrey Holbrook Walker Senior New Feature Salesperson
100 Recording From ios Devices
101 Recording From ios Devices
102 Recording From ios Devices Digital USB Audio Digital USB Audio
103 Recording Audio From ios Digital recording is possible with USB host mode and USB hardware 3rd party software/frameworks Couldn t this be simpler?
104 Inter-device Audio Mode Record audio digitally over the Lighting to USB cable Stereo 48 khz stream format USB 2.0 audio class-compliant implementation
105 Inter-device Audio Mode No additional hardware No additional software No need to modify OS X or ios applications No system sounds routed to USB
106 Inter-device Audio Mode Device can charge and sync Temporarily disabled functionality Photo import Tethering QuickTime screen capture
107 Inter-device Audio Mode Accessible via Audio MIDI Setup
108 Inter-device Audio Mode
109 Demo Inter-device audio mode Torrey Holbrook Walker Senior New Feature Salesperson
110 Inter-device Audio Mode Requires OS X El Capitan and ios 9 Works on all iphones with a lightning connector Works on all ipads with a lightning connector except first-gen ipad mini Supports multiple devices simultaneously (if you ve got the hubs)
111 CoreAudioKit View weak var viewcontainer: NSView! weak var iosdeviceview: NSView? var controller : func toggleiosdeviceview(sender: NSButton) { if iosdeviceview == nil { controller = CAInterDeviceAudioViewController() iosdeviceview = controller!.view viewcontainer.addsubview(iosdeviceview!) } else { iosdeviceview!.removefromsuperview() iosdeviceview = nil controller = nil } }
112 More CoreAudioKit View Controllers CABTLEMIDIWindowController Displays UI for configuring Bluetooth LE MIDI devices NSWindowController subclass
113 CABTLEMIDIWindowController
114 More CoreAudioKit View Controllers CANetworkBrowserWindowController Displays UI for managing AVB audio devices NSWindowController subclass
115 CoreAudioKit View Controller (cont.)
116 What s New in AVAudioSession Torrey Holbrook Walker Senior New Feature Salesperson
117 Navigation Prompts and Podcasts Problem Listening to podcast while driving Navigation prompts duck podcast audio > Bad user experience!
118 Navigation Prompts and Podcasts Solution Podcast and audio book apps: Use AVAudioSessionModeSpokenAudio Navigation and fitness apps: Use AVAudioSessionCategoryOptions.InterruptSpokenAudioAndMixWithOthers 1st party apps have opted in: Maps, Podcasts, ibooks
119 Navigation Application Session setup do { let audiosession = AVAudioSession.sharedInstance() let category = AVAudioSessionCategoryPlayback var categoryoptions = AVAudioSessionCategoryOptions.DuckOthers if #available(ios 9.0, *) { categoryoptions.unioninplace(.interruptspokenaudioandmixwithothers) } try audiosession.setcategory(category, withoptions: categoryoptions) } catch { // handle errors... }
120 Navigation Application Starting navigation prompts func startnavprompt(promptpath : NSURL) { do { let audiosession = AVAudioSession.sharedInstance() let player = try AVAudioPlayer(contentsOfURL: promptpath) player.delegate = self try audiosession.setactive(true) player.play() } catch { // handle errors... } }
121 Navigation Application Completing navigation prompts // AVAudioPlayerDelegate method func audioplayerdidfinishplaying(player: AVAudioPlayer, successfully flag: Bool) { do { let audiosession = AVAudioSession.sharedInstance() try audiosession.setactive(false, withoptions:.optionnotifyothersondeactivation) } catch { // handle errors... } }
122 Podcast Application Session setup do { let audiosession = AVAudioSession.sharedInstance() let category = AVAudioSessionCategoryPlayback var mode = AVAudioSessionModeDefault if #available(ios 9.0, *) { mode = AVAudioSessionModeSpokenAudio } try audiosession.setcategory(category) try audiosession.setmode(mode)...
123 Podcast Application Session setup... // add interruption handler NSNotificationCenter.defaultCenter().addObserver(self, selector: "handleinterruption:", name:avaudiosessioninterruptionnotification, object: audiosession) // register for other important notifications } catch { } // handle errors...
124 Podcast Application Interruption handling func handleinterruption(notification: NSNotification) { let userinfo = notification.userinfo as! [String: AnyObject] let type = userinfo[avaudiosessioninterruptiontypekey] as! AVAudioSessionInterruptionType switch type { case.began: // update UI to indicate that playback has stopped if (state == isplaying) { wasplaying = true state = stopped }...
125 Podcast Application Interruption handling (cont.)... case.ended: if let flag = userinfo[avaudiosessioninterruptionoptionkey] as? AVAudioSessionInterruptionOptions { if flag ==.OptionShouldResume && wasplaying { // rewind the audio a little player.play() state = isplaying // and update the UI to reflect that playback has resumed } } } // end switch } // end func
126 Recap Enhanced AVAudioEngine Inter-device audio mode CoreAudioKit View Controllers for IDAM, BLE MIDI, and AVB AVAudioSessionModeSpokenAudio AVAudioSessionCategoryOptions.InterruptSpokenAudioAndMixWithOthers
127 Related Sessions Audio Unit Extensions Nob Hill Thursday 11:00 AM What's New in SpriteKit Mission Wednesday 10:00 AM Enhancements to SceneKit Mission Wednesday 2:30 PM
128 Related Labs Audio Lab Audio Lab Graphics, Games, and Media Lab A Graphics, Games, and Media Lab A Thursday 9:00 AM Thursday 1:30 PM
129 More Information Technical Support Developer Technical Support Apple Developer Forums Bugs General Inquiries Craig Keithley, Technologies Evangelist
130
Going Social with ReplayKit and Game Center
Graphics and Games #WWDC15 Going Social with ReplayKit and Game Center What s new in social gaming Session 605 Edwin Iskandar Software Engineer Megan Gardner Software Engineer 2015 Apple Inc. All rights
ios Audio Programming Guide
ios Audio Programming Guide A Guide to Developing Applications for Real-time Audio Processing and Playback izotope, Inc. izotope ios Audio Programming Guide This document is meant as a guide to developing
Mobile Application Development
Mobile Application Development Lecture 23 Sensors and Multimedia 2013/2014 Parma Università degli Studi di Parma Lecture Summary Core Motion Camera and Photo Library Working with Audio and Video: Media
ios Application Development &
Introduction of ios Application Development & Swift Programming Language Presented by Chii Chang [email protected] Outlines Basic understanding about ios App Development Development environment: Xcode IDE Foundations
Soundcraft Signature MTK Recording Guide
Soundcraft Signature MTK Recording Guide S O U N D C R A F T S I G N AT U R E M T K R E C O R D I N G G U I D E 2 Table of Contents USB Overview... 04 Installing the Drivers (PC Only)... 04 Finding the
Using the US-122 with GigaStudio and Cubasis
Using the US-122 with GigaStudio and Cubasis To use the US-122 with the supplied GigaStudio 24 and Cubasis applications together on Windows, you will need to carry out the following steps after installing
GETTING STARTED WITH STUDIO ONE ARTIST
GETTING STARTED WITH STUDIO ONE ARTIST 2009, PreSonus Audio Electronics, Inc. All Rights Reserved. TABLE OF CONTENTS Studio One Artist Features...3 System Requirements...4 Installation and Authorization...5
Logic Pro 9. TDM Guide
Logic Pro 9 TDM Guide Copyright 2009 Apple Inc. All rights reserved. Your rights to the software are governed by the accompanying software license agreement. The owner or authorized user of a valid copy
Professional 24-bit USB Audio Interface. User s Guide
Professional 24-bit USB Audio Interface User s Guide - Copyright 2016 Revision 1, January 2016 www.esi-audio.com INDEX 1. Introduction... 4 1.1 Features... 4 2. Installation... 5 2.1 System Recommendation...
The diagram below illustrates the steps from stored music to audio device; key elements of the audio chain are discussed later in this guide.
USB Audio Guide We realise that most audiophiles are not computer experts and will not have access to the advanced and expensive test equipment we use during product development. So, with this guide, we
October2013 VB-Audio Software V.Burel Configuring System Settings VB-CABLE revision 0 VB-AUDIO CABLE
VB-AUDIO CABLE Virtual Audio Device working as Virtual Audio Cable Configuring VB-CABLE System Settings How to configure VB-CABLE Latency and Internal Sample rate. How to configure HiFi-CABLE Latency HiFi-CABLE
Mbox Basics Guide. Version 6.7 for LE Systems on Windows XP or Mac OS X. Digidesign
Mbox Basics Guide Version 6.7 for LE Systems on Windows XP or Mac OS X Digidesign 2001 Junipero Serra Boulevard Daly City, CA 94014-3886 USA tel: 650 731 6300 fax: 650 731 6399 Technical Support (USA)
Source Live 2.0 User Guide
Source Live 2.0 User Guide 1 Contents 1. Introducing Source Live 2. Installation and network requirements 2.1 System requirements 2.2 Supported hosts and DAWs 2.3 Network configuration and requirements
Windows Audio Drivers Guide
Windows Audio Drivers Guide Version 7.3 Copyright 2007 Digidesign, a division of Avid Technology, Inc. All rights reserved. This guide may not be duplicated in whole or in part without the express written
Axia IP-Audio Driver Update v2.6.1.18 11 June, 2013
Axia IP-Audio Driver Update v2.6.1.18 11 June, 2013 The Axia IP-Audio driver Version 2.6.1.18 is compatible with 32-bit and 64-bit versions of Windows 7 and Vista, as well as earlier 32-bit versions of
Message from the Development Team. Contents. Message from the Development Team..2. Panel Controls and Terminals...3. Using the UR22mkII...
EN Contents Contents Message from the Development Team..2 Panel Controls and Terminals...3 Front Panel...3 Rear Panel...5 Software...7 Using the UR22mkII...10 Connections...10 Configuring Audio Driver
Using Safari to Deliver and Debug a Responsive Web Design
Media #WWDC15 Using Safari to Deliver and Debug a Responsive Web Design Session 505 Jono Wells Safari and WebKit Engineer 2015 Apple Inc. All rights reserved. Redistribution or public display not permitted
USER GUIDE ENGLISH ( 3 6 )
USER GUIDE ENGLISH ( 3 6 ) GUÍA DEL USUARIO ESPAÑOL ( 7 10 ) GUIDE D'UTILISATION FRANÇAIS ( 11 14 ) GUIDA PER L'USO ITALIANO ( 15 18 ) BENUTZERHANDBUCH DEUTSCH ( 19 22 ) USER GUIDE (ENGLISH) Box Contents
USER GUIDE ENGLISH ( 3 6 )
USER GUIDE ENGLISH ( 3 6 ) GUÍA DEL USUARIO ESPAÑOL ( 7 10 ) GUIDE D'UTILISATION FRANÇAIS ( 11 14 ) GUIDA PER L'USO ITALIANO ( 15 18 ) BENUTZERHANDBUCH DEUTSCH ( 19 22 ) USER GUIDE (ENGLISH) Box Contents
Apogee ONE. QuickStart Guide. V3, March, 2013
Apogee ONE QuickStart Guide V3, March, 2013 Contents Overview!... 5 Introduction! 5 Package contents! 6 ONE Panel Tour! 8 Optional Battery Power! 9 Connecting to your Mac!... 10 System Requirements! 10
Version 1.0. PNY DUO-LINK 4 User Manual
Version 1.0 PNY DUO-LINK 4 User Manual Table of Contents 1. PRODUCT DESCRIPTION 3 2. SYSTEM REQUIREMENTS 4 3. DUO-LINK APP INSTALLATION 4 4. DUO-LINK APP DESCRIPTION 6 5. FILE MANAGEMENT 7 5.1 Types of
Source-Live 1.3 User Guide
Source-Live 1.3 User Guide Source Elements 2005-2011 Source-Live 1.3 User Guide 1 1. Introducing Source-Live Source-Live is an RTAS and VST plug-in for Avid Pro Tools and supported VST hosts. Source- Live
Cubase LE 5. Installing Cubase LE 5. Trademarks. Quick Start Guide
Cubase LE 5 Quick Start Guide This chapter explains basic operations for using the unit with Cubase LE 5. This explanation is not intended to replace the user s manual for Cubase LE 5. Also, since Cubase
2. Download, save and unzip the Cambridge Audio USB 2.0 driver from the Cambridge Audio website
ASIO (Audio Stream Input/Output) is another method of audio transport which is superior to WASAPI as it bypasses the Windows Kernel Mixer (and the distortion this adds). Just like WASAPI, to use ASIO the
Editor / Plug-In Editor Manual
Editor / Plug-In Editor Manual E 3 Table of Contents Introduction................................................. Main features...................................................................... Please
XONE:23C QUICK START GUIDE
XONE:23C QUICK START GUIDE Download Software Download Device Drivers Mac OS X The XONE:23C is class compliant and will work on a Mac without drivers, but for optimal performance we recommend you install
Supported Audio Interfaces for DAD version 8+
Supported Interfaces for DAD version 8+ Overview This document is to be used as a general reference for commonly used audio cards that are supported within DAD. All references to refer to the number of
Game Center Programming Guide
Game Center Programming Guide Contents About Game Center 8 At a Glance 9 Some Game Resources Are Provided at Runtime by the Game Center Service 9 Your Game Displays Game Center s User Interface Elements
8x8 Virtual Office Mobile User Guide for ios
8x8 User Guide for ios Works with iphone, ipad and ipod Touch Version 4.0, October 2012 The Champion For Business Communications Table of Contents Introduction...3 Features...3 Technical Requirements...4
MixMeister EZ Converter Setup & Troubleshooting Contents:
MixMeister EZ Converter Setup & Troubleshooting Contents: Windows Vista and Windows 7 Setup Instructions... 2 Windows XP Setup Instructions... 4 Macintosh OSX - Setup Instructions... 6 Troubleshooting...
QUALITY AV PRODUCTS INMATE/INMATE USB PROFESSIONAL 19" MIXER. User Guide and Reference Manual
INMATE/INMATE USB PROFESSIONAL " MIXER User Guide and Reference Manual INTRODUCTION Welcome to the NEWHANK INMATE and INMATE USB professional " mixers series user manual. INMATE and INMATE USB both offer
Contents. Latest versions and updates
Contents Latest versions and updates... 1 Important Notice about the driver installation... 2 Selection of the Mac OS X driver... 2 Using digital input (US-366)... 2 New functions... 3 For Mac Driver...
Continuous Integration with Xcode 6
Tools #WWDC14 Continuous Integration with Xcode 6 Session 415 Brent Shank Software Engineer, Xcode 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission
Video and Audio Codecs: How Morae Uses Them
Video and Audio Codecs: How Morae Uses Them What is a Codec? Codec is an acronym that stands for "compressor/decompressor." A codec is an algorithm a specialized computer program that compresses data when
Windows Audio Drivers Guide
Windows Audio Drivers Guide Version 8.0 Legal Notices This guide is copyrighted 2008 by Digidesign, a division of Avid Technology, Inc. (hereafter Digidesign ), with all rights reserved. Under copyright
Authoring for Dolby Atmos Cinema Sound Manual
Authoring for Dolby Atmos Cinema Sound Manual Issue 3 Software v1.4 Corporate Headquarters Dolby Laboratories, Inc. 100 Potrero Avenue San Francisco, CA 94103-4813 USA Telephone 415-558-0200 Fax 415-863-1373
Advanced Graphics and Animations for ios Apps
Tools #WWDC14 Advanced Graphics and Animations for ios Apps Session 419 Axel Wefers ios Software Engineer Michael Ingrassia ios Software Engineer 2014 Apple Inc. All rights reserved. Redistribution or
D i g i g r a m. sound card range. Professional stereo and multichannel sound cards. Installation and set-up
D i g i g r a m VX sound card range Professional stereo and multichannel sound cards Table of contents VX Cards General information...4 Supported cards...4 System requirements...4 MacIntosh...4 System
Video Encoding Best Practices
Video Encoding Best Practices SAFARI Montage Creation Station and Managed Home Access Introduction This document provides recommended settings and instructions to prepare user-created video for use with
Mini Effect Gizmo. User s Manual. RJM Music Technology, Inc.
Mini Effect Gizmo User s Manual RJM Music Technology, Inc. Mini Effect Gizmo User s Manual Version 1.3 September 26, 2013 RJM Music Technology, Inc. 2525 Pioneer Ave #1 Vista, CA 92081 E-mail: [email protected]
D01167420A. TASCAM PCM Recorder. iphone/ipad/ipod touch Application USER'S GUIDE
D01167420A TASCAM PCM Recorder iphone/ipad/ipod touch Application USER'S GUIDE Contents Introduction...3 Trademarks... 3 What's in the Main Window...4 What's in the Settings Window...6 The Sharing Window...7
Frequently Asked Questions about the Sound Blaster X7
Frequently Asked Questions about the Sound Blaster X7 General 1. Why is the Sound Blaster X7 so light? The Sound Blaster X7 was designed with an external power adapter, as opposed to regular amplifiers
MIDI Setup with TonePort UX2 and KB37
MIDI Setup with TonePort UX2 and KB37 Table of Contents FOOTSWITCH CONNECTIONS... 2 TONEPORT KB37 CONTROLLER LAYOUT... 3 TONEPORT KB37 DEFAULT MESSAGES... 4 Default message map for GearBox 3.0... 4 Default
Basics. Mbox 2. Version 7.0
Basics Mbox 2 Version 7.0 Copyright 2005 Digidesign, a division of Avid Technology, Inc. All rights reserved. This guide may not be duplicated in whole or in part without the express written consent of
Audiomedia III Installation Guide
Audiomedia III Installation Guide Digidesign Inc. 3401-A Hillview Avenue Palo Alto, CA 94304 USA tel: 650 842 7900 fax: 650 842 7999 Technical Support (USA) 650 842 6699 650 856 4275 Product Information
sndio OpenBSD audio & MIDI framework for music and desktop applications
sndio OpenBSD & MIDI framework for music and desktop applications Alexandre Ratchov [email protected] AsiaBSDCon 2010 13 march 2010 A. Ratchov (AsiaBSDCon) OpenBSD and MIDI subsystem 13 march 2010 1 / 31
OVERVIEW HARDWARE. Mode buttons. USB Micro socket. Kensington Security Slot. 8x8 playable grid. Mode buttons
OVERVIEW Launchpad Mini is a compact version of the celebrated Novation Launchpad for the ipad generation. 64 three-colour pads enable you to produce and perform music with your ipad by triggering samples
Advanced Testing and Continuous Integration
Developer Tools #WWDC16 Advanced Testing and Continuous Integration Session 409 Zoltan Foley-Fisher Xcode Engineer Eric Dudiak Xcode Engineer 2016 Apple Inc. All rights reserved. Redistribution or public
Chord Limited. Mojo Dac Headphone Amplifier OPERATING INSTRUCTIONS
Chord Limited Mojo Dac Headphone Amplifier OPERATING INSTRUCTIONS -!1 - Cleaning and care instructions: Mojo requires no special care other than common sense. Spray window cleaner (clear type) may be used
VirtualDJ 8 Numark IDJLIVE II 1
VirtualDJ 8 Numark IDJLIVE II 1 Table of Contents Installation... 3 Firmware & Drivers... 3 VirtualDJ 8 Setup... 3 Advanced Setup... 4 Operation... 5 Tailored skin... 7 Advanced Audio Setup... 8 Using
The Coast to Coast AM Podcast for itunes 11
The Coast to Coast AM Podcast for itunes 11 System Requirements In order to run itunes 11, please see the system requirements at http://www.apple.com/itunes/download/. A Note on Downloading Directly to
Contents. About AirPlay 5. Preparing Your Media and Server for AirPlay 8. Opting Into or Out of AirPlay 11
AirPlay Overview Contents About AirPlay 5 At a Glance 5 Choose the Best Option for Media Playback 5 You Can Opt Into or Out of AirPlay for Video 6 Provide a Great AirPlay User Experience in Your App 6
PART 1. Using USB Mixer with a Computer
PART 1. Using USB Mixer with a Computer Universal Serial Bus Mixers The USB mixer is equipped with either one or two USB ports that allow you to play and record audio directly from your computer! Just
miditech Audiolink II
miditech Audiolink II "Class Compliant" USB Audio Interface (WinXP/Vista/Win7/Mac OSX no drivers necessary) 16 Bit/ 48 khz resolution line stereo interface XLR Mic preamp with 48 V Phantom Power and gain
2.0 AUDIO RECORDING INTERFACE
24-Bit/96kHz USB 2.0 AUDIO RECORDING INTERFACE USER MANUAL 1 of 13 Contents: 1. Instruction 03 2. Key Features 03 3. Front Panel 03 4. Rear Panel 04 5. Minimum System Requirements 04 6. Installation Process
User Manual. Ver 1.0. Solutions for the Digital Life
Model #: User Manual Ver 1.0 Solutions for the Digital Life Table of Contents Getting Started 3 Introduction 3 Package Contents 3 System Requirements 3 Installing the Receiver 5 Connecting the Receiver
DSD Native DAC Setup Guide
CHANNEL D Pure Music DSD Native DAC Setup Guide Release 1.0 Copyright 2012 Channel D www.channel-d.com CHANNEL D Pure Music DSD Native DAC Setup Guide These instructions outline the setup steps required
User Guide FFFA001106. www.focusrite.com
User Guide FFFA001106 www.focusrite.com TABLE OF CONTENTS OVERVIEW.... 3 Introduction...3 Features.................................................................... 3 Box Contents...3 System Requirements....4
Editor / Plug-In Editor Manual
Editor / Plug-In Editor Manual E 4 Table of Contents Introduction................................................. 1 Main features......................................................................
QUICK SETUP GUIDE SETUP FOR ICONNEX SOUNDCARD AND AUDACITY RECORDING SOFTWARE
QUICK SETUP GUIDE SETUP FOR ICONNEX SOUNDCARD AND AUDACITY RECORDING SOFTWARE SETUP GUIDE Congratulations on your purchase of the ikey Audio iconnex soundcard. This guide will help you setup the iconnex
For version 3.7.12p (September 4, 2012)
Zephyr Xstream INSTALLATION For version 3.7.12p (September 4, 2012) The following information applies to Zephyr Xstream units currently running a version ending in p or i. If your Xstream is running software
MEP-7000 FREQUENTLY ASKED QUESTIONS (FAQS)
MEP-7000 FREQUENTLY ASKED QUESTIONS (FAQS) Note: Unless otherwise stated, PC connection refers to a Microsoft Windows operating system. What can I connect to the MEP-7000 using the USB ports? There are
The Rush 24/7 Podcast for itunes 11
The Rush 24/7 Podcast for itunes 11 System Requirements In order to run itunes 11, please see the system requirements at http://www.apple.com/itunes/download/. A Note on Downloading Directly to Mobile
Managing Apple Devices
Core OS Managing Apple Devices Session 702 Todd Fernandez Senior Manager, Device Management 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission
MP-1010 Capture Device USB
MP-1010 Capture Device USB USER MANUAL INTRODUCTION All audio connections are cinch. Use good quality cinch-cinch cables to prevent bad audio quality. After connecting the USB audio converter to the other
What s New in Managing Apple Devices
Distribution #WWDC15 What s New in Managing Apple Devices Session 301 Todd Fernandez Senior Manager, Device Management 2015 Apple Inc. All rights reserved. Redistribution or public display not permitted
PRODUCING DV VIDEO WITH PREMIERE & QUICKTIME
This article contains guidelines and advice on producing DV video for the screen using a DV camcorder, Adobe Premiere and QuickTime. PRODUCING DV VIDEO WITH PREMIERE & QUICKTIME PRODUCING DV VIDEO WITH
8x8 Virtual Office Mobile User Guide for ios
8x8 User Guide for ios Works with iphone, ipad and ipod Touch Version 3.0, August 2012 The Champion For Business Communications Table of Contents Introduction...3 Features...3 Technical Requirements...4
Project 4: Pseudo USB Simulation Introduction to UNIVERSAL SERIAL BUS (USB) STANDARD
Project 4: Pseudo USB Simulation Introduction to UNIVERSAL SERIAL BUS (USB) STANDARD The Universal Serial Bus is a fast, bi-directional, low cost, dynamically attachable serial interface. The motivation
Hi! Let s get started.
Hi! Let s get started. What s in the Box Roku player Remote control 2 x AAA batteries for remote A/V cable RCA Power adapter Get to know your roku A Front view B C F Back view D E A B C D E F Status light
Aura. Wireless Speaker System Owner s Manual
Wireless Speaker System Owner s Manual Table of Contents Introduction 3 Included IteMS 3 Controls and ConnectionS 3 Harman Kardon Aura Front Panel ControlS 3 Harman Kardon Aura Rear Panel ControlS 4 ConnectionS
이 기기는 업무용 급 으로 전자파적합등록을 한 기기이오니 판매자 또는 사용자는 이점을 주의하시기 바라며 가정 외의 지역에서 사용하는 것을 목적으로 합니다
020-101186-01 020-101186-01 이 기기는 업무용 급 으로 전자파적합등록을 한 기기이오니 판매자 또는 사용자는 이점을 주의하시기 바라며 가정 외의 지역에서 사용하는 것을 목적으로 합니다 Table of Contents About this Document... 1 Document Conventions... 1 Audience... 1 Related
Audio File Manager For MRS Series
Audio File Manager For MRS Series Operation Manual Zoom Corporation Reproduction of this manual, in whole or in part, by any means, is prohibited. To display and/or print this manual, Adobe Acrobat 4.0
Cisco Unity Connection WAV File Issues
Cisco Unity Connection WAV File Issues Document ID: 110950 Contents Introduction Prerequisites Requirements Components Used Conventions Error: Could not load audio recording from file Error: InitMMAppletInstance
CinePlay 1.1.2. User Manual
CinePlay User Manual 1 CinePlay 1.1.2 User Manual CinePlay is a professional ios video player complete with timecode overlays, markers, masking, safe areas and much more. It is ideal for dailies, portfolios,
Features, Benefits, and Operation
Features, Benefits, and Operation 2014 Decibel Eleven Contents Introduction... 2 Features... 2 Rear Panel... 3 Connections... 3 Power... 3 MIDI... 3 Pedal Loops... 4 Example Connection Diagrams... 5,6
23425 USB DAC FAQ. My 23425 DAC is plugged into my PC but I get no audio or I get sound out of my laptop speakers. What gives? Windows Vista / 7:
23425 USB DAC FAQ My 23425 DAC is plugged into my PC but I get no audio or I get sound out of my laptop speakers. What gives? It is possible that the DAC is not the default sound playback device, and thus
USB 3.0 Universal Mini Docking Station Adapter
USB 3.0 Universal Mini Docking Station Adapter User Manual DSH-M100U3 Ver. 1.00 All brand names and trademarks are properties of their respective owners. www.vantecusa.com Copyright 2015 Vantec Thermal
Co-designed by TASCAM and
Page 1 of 6 FW-1884 Control Surface and Audio/MIDI Interface Up to 18 simultaneous inputs Comprehensive mixing, automation, editing and navigation tools for DAWs Eight 100mm motorized touchsensitive channel
Quick Start. Guide. The. Guide
Quick Start 1 Quick Start Introducing VirtualDub Working with video requires a variety of tools to achieve the best possible results. re are some processes for which dedicated-purpose tools can be invaluable
UMI3 Parametric USB MIDI Foot Controller. User s Manual
UMI3 Parametric USB MIDI Foot Controller User s Manual Table of Contents Table of Contents...2 Document revisions...3 Introduction...3 1. Hardware...4 1.1. USB Connection...4 1.2. Connecting an expression
bel canto The Computer as High Quality Audio Source A Primer
The Computer as High Quality Audio Source A Primer These are exciting times of change in the music world. With CD sales dropping and downloaded MP3 music, streamed music and digital music players taking
ScreenBeam Mini 2 Wireless Display Receiver
ScreenBeam Mini 2 Wireless Display Receiver Model #: SBWD60A User Manual Ver 1.0 Solutions for the Digital Life Table of Contents 1 Introduction 1 Package Contents 1 Features 2 System Requirements 2 2
Document authored by: Native Instruments GmbH Software version: 2.7 (01/2015)
Setup Guide Disclaimer The information in this document is subject to change without notice and does not represent a commitment on the part of Native Instruments GmbH. The software described by this document
Installation and Operation Manual Blackmagic Converters. Mac OS X Windows
Installation and Operation Manual Blackmagic Converters Mac OS X Windows July 2015 2 Welcome Thank you for purchasing Blackmagic Converters for your production needs. Blackmagic Mini Converters, Mini Converter
Using the Wireless Music Bridge
Using the Wireless Music Bridge Stream music to a room in the home from your mobile devices Now you can control and stream music from your handheld Apple * ipod, ipod touch, iphone, ipad ; Bluetooth ;
Getting Started Guide
Getting Started Guide Overview Launchpad Mini Thank you for buying our most compact Launchpad grid instrument. It may be small, but its 64 pads will let you trigger clips, play drum racks, control your
Recording using Cubase LE 6
PowerMate 3 /CMS 3 Application Note 1 Recording using Cubase LE 6 This document describes how to record a live event using the DIGITAL AUDIO INTERFACE of the PowerMate 3 / CMS 3. In preparation for the
TEAC Professional Division OWNER S MANUAL
TEAC Professional Division OWNER S MANUAL 1 Table of Contents INTRODUCTION... 4 FEATURES... 4 SYSTEM REQUIREMENTS... 6 Macintosh... 6 Windows... 6 DM-24 (not supported)... 6 DM-3200 Requirements... 6 DM-4800
Upgrading to Pro Tools 7.4
Upgrading to Pro Tools 7.4 Version 7.4 Legal Notices This guide is copyrighted 2007 by Digidesign, a division of Avid Technology, Inc. (hereafter Digidesign ), with all rights reserved. Under copyright
US-122L/US-144 Release Notes
US-122L/US-144 Release Notes Updates Always ensure that you are running the latest driver software and US-122L or US-144 firmware by visiting TASCAM s web site (http://www.tascam.com). Important Notice
Focusrite Saffire 6 USB. User Guide
Focusrite Saffire 6 USB User Guide 1 IMPORTANT SAFETY INSTRUCTIONS 1. Read these instructions. 2. Keep these instructions. 3. Heed all warnings. 4. Follow all instructions. 5. Do not use this apparatus
User Manual. For additional help please send a detailed e-mail to [email protected]. - 1 Phoenix Audio Technologies www.phnxaudio.
User Manual Please read the instructions in this manual before using the Duet Please refer to our website www.phnxaudio.com for more information, specifically to our Q&A section in our Support page. For
Desktop Headphone amplifier with Advanced DAC
HugoTT Instruction Manual Desktop Headphone amplifier with Advanced DAC Thank you for purchasing the Chord HugoTT. In order to get the most from your product, please take a few moments to read the instructions.
Berkeley Audio Design Alpha USB
QUICK USER GUIDE v1.2.2 Berkeley Audio Design Alpha USB The Alpha USB is an asynchronous High Speed USB to digital audio interface designed to provide the highest possible audio quality from computer audio
1. Computer System Structure and Components
1 Computer System Structure and Components Computer System Layers Various Computer Programs OS System Calls (eg, fork, execv, write, etc) KERNEL/Behavior or CPU Device Drivers Device Controllers Devices
