Module: CoreAudio
- Extended by:
- FFI::Library
- Defined in:
- lib/macos/core_audio.rb,
lib/macos/core_audio.rb,
lib/macos/core_audio/audio_types.rb,
lib/macos/core_audio/audio_device.rb,
lib/macos/core_audio/audio_object.rb,
lib/macos/core_audio/audio_stream.rb
Defined Under Namespace
Modules: AudioHardware, AudioHardwareBase Classes: AudioBuffer, AudioBufferList, AudioDevice, AudioObject, AudioStream, AudioStreamBasicDescription, AudioStreamRangedDescription, AudioValueRange
Constant Summary collapse
- AudioDeviceIOProcID =
FFI::Pointer
Class Method Summary collapse
-
.default_input ⇒ AudioDevice
The default input device.
-
.default_output ⇒ AudioDevice
The default output device.
-
.devices ⇒ Array<AudioObject>
The list of available audio devices.
Class Method Details
.default_input ⇒ AudioDevice
Returns the default input device.
49 50 51 52 53 |
# File 'lib/macos/core_audio.rb', line 49 def self.default_input address = AudioObject::PropertyAddress.global_master(AudioHardware::PropertyDefaultInputDevice) buffer = AudioObject.system.get_property(address) AudioDevice.new(buffer.get_uint32(0)) end |
.default_output ⇒ AudioDevice
Returns the default output device.
56 57 58 59 60 |
# File 'lib/macos/core_audio.rb', line 56 def self.default_output address = AudioObject::PropertyAddress.global_master(AudioHardware::PropertyDefaultOutputDevice) buffer = AudioObject.system.get_property(address) AudioDevice.new(buffer.get_uint32(0)) end |
.devices ⇒ Array<AudioObject>
Returns the list of available audio devices.
41 42 43 44 45 46 |
# File 'lib/macos/core_audio.rb', line 41 def self.devices address = AudioObject::PropertyAddress.global_master(AudioHardware::PropertyDevices) buffer = AudioObject.system.get_property(address) device_IDs = buffer.get_array_of_int32(0, buffer.size/4) device_IDs.map {|id| AudioDevice.new(id)} end |