Windows Audio Capture Input

Windows Audio Capture input properties for Script Engine. Records sound from Windows' own audio devices: a recording device such as a microphone, line input or an audio interface with no ASIO driver, or everything an output device is playing - the sound of a browser, a call or any other application. Audio only, Windows only.

Property Type Access Description
ShowAdvancedOptions bool get/set Show or hide the input's advanced settings in the editor UI. [default=false].
AutoStart bool get/set When On, the input starts recording automatically when the project loads. [default=false].
CaptureSource WindowsAudioCaptureSource get/set Whether to record a recording device, or everything an output device is playing. [default=OutputDevice]. Fixed while the input is running.
AvailableDevices StringCollectionEnum get/set Picker listing the devices of the chosen kind that are connected right now, after Windows default, which follows whichever device Windows uses by default. The list re-reads itself every few seconds, so a device plugged in after the input was added turns up on its own; RefreshDevicesCommand re-reads it immediately. Choosing an entry writes DeviceName, which is the value saved with the project.
RefreshDevicesCommand Command get Re-reads the list of connected devices immediately, without waiting for the automatic refresh.
DeviceName string get/set Name of the device to record, as Windows shows it. Empty follows the Windows default device. An exact name wins, ignoring case; failing that the first device whose name contains this text is used, so a short part of a name keeps working when Windows adds a number to it. A device is remembered by name rather than by its Windows identifier because the identifier differs from one machine to the next. Fixed while the input is running.
BufferMs int get/set Sound held in reserve, in milliseconds, to ride out timing differences between the device and Composer. [min=10, max=1000, default=40]. This is the delay the input adds. Raise it if the sound breaks up on a busy machine. Fixed while the input is running.
ConnectionStatus ConnectionStatus get Current recording state (Disconnected, Connecting, Connected). Read-only. Connecting means the input is running but has not opened its device yet - the device is missing, or another application has it to itself. The input keeps trying and starts recording when it can.
StartCommand Command get Starts recording the selected device.
StopCommand Command get Stops recording and releases the device.
CapturedDevice string get Full name of the device being recorded (read-only). Empty while no device is open.
DeviceFormat string get The sample rate and number of channels the device delivers (read-only). Whatever they are, the input delivers 48 kHz to the project; a mono device is placed on channels 1 and 2 both.
BufferedMs double get Sound currently held in reserve, in milliseconds (read-only). It settles close to BufferMs once recording is under way.
DeviceClockOffsetPpm int get How far the device's clock runs from Composer's, in parts per million (read-only). The input retimes the sound by this much so the buffer stays where it was set. A few tens either way is normal for any sound card.
Gaps long get Times the sound ran out since the input started, so a moment of silence was played while the reserve refilled (read-only). It should stay at nought; a climbing count means the buffer is too small for this machine, or the device stopped delivering. Each gap also raises the input's warning.
ComponentLog ComponentLog get Recent status, information and error messages from the input (read-only).

Inherits from: AbstractInput, AbstractAudioProcessing, AbstractAudioMetering, NamedModel.

See also: Windows Audio Capture Input in Inputs — user-facing introduction, screenshots, and section summaries.