Platforms to show: All Mac Windows Linux Cross-Platform
PortAudioStreamRecorderMBS class
Super class: PortAudioStreamBaseMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
class | Audio | MBS Audio Plugin | 9.1 | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No | All |
This class has a ring buffer to store the audio samples which they are being recorded. Your application can in a timer or thread process this samples.
Subclass of the PortAudioStreamBaseMBS class.
- 6 properties
- property Buffer as Memoryblock
- property BufferReadIndex as Integer
- property BufferSize as Integer
- property BufferWriteIndex as Integer
- property FramesAvailable as Integer
- property NumInputChannels as Integer
- 6 methods
- method Constructor(BufferSize as Integer)
- method Flush
- method OpenDefaultStream(numInputChannels as Integer, sampleRate as Double) as Integer
- method OpenStream(inputParameters as PortAudioStreamParametersMBS, sampleRate as Double, framesPerBuffer as Integer, streamFlags as Integer) as Integer
- method ReadFrames(mem as memoryblock, SizeInBytes as Integer) as Integer
- method ResizeBuffer(BufferSize as Integer)
Super class PortAudioStreamBaseMBS
- 9 properties
- property CPULoad as Double
- property IsStreamActive as Integer
- property IsStreamStopped as Integer
- property MacCoreAudioStreamInputDevice as Integer
- property MacCoreAudioStreamOutputDevice as Integer
- property ReadAvailable as Integer
- property Time as Double
- property WriteAvailable as Integer
- property UseSafeThreading as boolean
- 14 methods
- method Abort as Integer
- method AsioSetStreamSampleRate(sampleRate as double) as integer
- method Close as Integer
- method Constructor Private
- method HostError as PortAudioHostErrorInfoMBS
- method Info as PortAudioStreamInfoMBS
- method Read(Buffer as Ptr, frameCount as integer) as integer
- method Start as Integer
- method Stop as Integer
- method WinMMEStreamInputHandle(index as Integer) as Ptr
- method WinMMEStreamInputHandleCount as integer
- method WinMMEStreamOutputHandle(index as Integer) as Ptr
- method WinMMEStreamOutputHandleCount as integer
- method Write(Buffer as Ptr, frameCount as integer) as integer
- 6 constants
Flags
Constant | Value | Description |
---|---|---|
kFlagsClipOff | 1 |
Disable default clipping of out of range samples. |
kFlagsDitherOff | 2 |
Disable default dithering. |
kFlagsNeverDropInput | 4 |
Flag requests that where possible a full duplex stream will not discard overflowed input samples without calling the stream callback. This flag is only valid for full duplex callback streams and only when used in combination with the paFramesPerBufferUnspecified (0) framesPerBuffer parameter. Using this flag incorrectly results in a paInvalidFlag error being returned from OpenStream and OpenDefaultStream. |
kFlagsNoFlag | 0 |
No flags. |
kFlagsPlatformSpecificFlags | &hFFFF0000 |
A mask specifying the platform specific bits. |
kFlagsPrimeOutputBuffersUsingStreamCallback | 8 |
Call the stream callback to fill initial output buffers, rather than the default behavior of priming the buffers with zeros (silence). This flag has no effect for input-only and blocking read/write streams. |
This class has no sub classes.
Some examples using this class:
- /Audio/PortAudio
- /Audio/PortAudio Record and Play
- /Audio/PortAudio Streaming Sender
- /Tools/LTC/Listen for TimeCode
Blog Entries
Release notes
- Version 24.1
- Fixed PortAudioStreamRecorderMBS to enforce sample format paFloat32 when using OpenStream() to prevent errors later.
The items on this page are in the following plugins: MBS Audio Plugin.
PortAudioStreamParametersMBS - PortMidiDeviceInfoMBS