17 #ifndef OBOE_STREAM_H_ 18 #define OBOE_STREAM_H_ 22 #include "oboe/Definitions.h" 23 #include "oboe/ResultWithValue.h" 24 #include "oboe/AudioStreamBuilder.h" 25 #include "oboe/AudioStreamBase.h" 156 int64_t timeoutNanoseconds) = 0;
171 return Result::ErrorUnimplemented;
286 int64_t *framePosition,
287 int64_t *timeNanoseconds) {
288 return Result::ErrorUnimplemented;
306 int64_t timeoutNanoseconds) {
324 int64_t timeoutNanoseconds) {
386 int64_t timeoutNanoseconds);
396 return DataCallbackResult::Stop;
413 mNativeFormat = format;
433 int mPreviousScheduler = -1;
virtual Result stop(int64_t timeoutNanoseconds=kDefaultTimeoutNanos)
Definition: AudioStreamBuilder.h:28
virtual int64_t incrementFramesRead(int32_t frames)
Definition: AudioStream.h:374
bool usesAAudio() const
Definition: AudioStream.h:340
virtual Result flush(int64_t timeoutNanoseconds=kDefaultTimeoutNanos)
int32_t getBytesPerFrame() const
Definition: AudioStream.h:216
DataCallbackResult fireCallback(void *audioData, int numFrames)
virtual Result start(int64_t timeoutNanoseconds=kDefaultTimeoutNanos)
constexpr int64_t kDefaultTimeoutNanos
Definition: AudioStream.h:37
virtual ResultWithValue< int32_t > getXRunCount() const
Definition: AudioStream.h:186
virtual void * getUnderlyingStream() const
Definition: AudioStream.h:352
int64_t mFramesWritten
Definition: AudioStream.h:423
Result
Definition: Definitions.h:140
virtual int64_t getFramesWritten()
Definition: AudioStream.h:232
virtual ResultWithValue< int32_t > setBufferSizeInFrames(int32_t requestedFrames)
Definition: AudioStream.h:170
virtual StreamState getState()=0
int32_t mChannelCount
Definition: AudioStreamBase.h:135
virtual void setNativeFormat(AudioFormat format)
Definition: AudioStream.h:412
AudioApi
Definition: Definitions.h:216
virtual Result waitForStateTransition(StreamState startingState, StreamState endingState, int64_t timeoutNanoseconds)
virtual int32_t getFramesPerBurst()=0
int64_t mFramesRead
Definition: AudioStream.h:430
virtual ResultWithValue< double > calculateLatencyMillis()
Definition: AudioStream.h:265
virtual int64_t getFramesRead()
Definition: AudioStream.h:240
Definition: AudioStream.h:42
AudioFormat
Definition: Definitions.h:103
DataCallbackResult
Definition: Definitions.h:128
virtual Result requestPause()=0
Definition: AudioStreamBase.h:29
virtual ResultWithValue< int32_t > read(void *buffer, int32_t numFrames, int64_t timeoutNanoseconds)
Definition: AudioStream.h:322
constexpr int64_t kNanosPerMillisecond
Definition: Definitions.h:52
virtual ResultWithValue< int32_t > write(const void *buffer, int32_t numFrames, int64_t timeoutNanoseconds)
Definition: AudioStream.h:304
virtual DataCallbackResult onDefaultCallback(void *audioData, int numFrames)
Definition: AudioStream.h:395
virtual int64_t incrementFramesWritten(int32_t frames)
Definition: AudioStream.h:364
virtual Result requestStop()=0
virtual AudioApi getAudioApi() const =0
virtual Result getTimestamp(clockid_t clockId, int64_t *framePosition, int64_t *timeNanoseconds)
Definition: AudioStream.h:285
virtual Result waitForStateChange(StreamState inputState, StreamState *nextState, int64_t timeoutNanoseconds)=0
StreamState
Definition: Definitions.h:67
Definition: AudioStream.h:29
virtual bool isXRunCountSupported() const =0
virtual Result requestStart()=0
virtual Result pause(int64_t timeoutNanoseconds=kDefaultTimeoutNanos)
virtual Result requestFlush()=0
int32_t getBytesPerSample() const
Definition: ResultWithValue.h:47