From 03753add59204d870fa8755ed2309900927968bb Mon Sep 17 00:00:00 2001 From: wangkangmao <1240413544@qq.com> Date: Sun, 12 Dec 2021 23:29:26 +0800 Subject: [PATCH] add AAudioSample.puml --- AAudioSample.puml | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 AAudioSample.puml diff --git a/AAudioSample.puml b/AAudioSample.puml new file mode 100644 index 0000000..6712d31 --- /dev/null +++ b/AAudioSample.puml @@ -0,0 +1,45 @@ +@startuml +'https://plantuml.com/sequence-diagram + +hide footbox +autonumber + + +AAudioApi -> AAudioApi:native_init() +AAudioApi -> StreamEngine:start() +StreamEngine -> StreamEngine:openPlaybackStream() +StreamEngine -> StreamEngine :createPlaybackStream() +StreamEngine -> AAudio:AAudio_createStreamBuilder() +StreamEngine -> StreamEngine :setupPlaybackStreamParameters() +StreamEngine -> AAudio:AAudioStreamBuilder_setFormat() +StreamEngine -> AAudio:AAudioStreamBuilder_setChannelCount() +StreamEngine -> AAudio:AAudioStreamBuilder_setSampleRate() +StreamEngine -> AAudio:AAudioStreamBuilder_setErrorCallback() +note right:6~10 steps Sets the stream parameters +StreamEngine -> StreamEngine:errorCallback() +StreamEngine -> AAudio:AAudioStream_getState() +StreamEngine -> StreamEngine:restartStreams() +note right:If it fails, reconnect +StreamEngine -> StreamEngine:closePlaybackStream() +StreamEngine -> StreamEngine:openPlaybackStream() +StreamEngine -> AAudio:AAudioStreamBuilder_openStream() +StreamEngine -> AAudio:AAudioStream_getSampleRate() +StreamEngine -> AAudio:AAudioStream_getFramesPerBurst() +StreamEngine -> StreamEngine:warnIfNotLowLatency(AAudioStream) +StreamEngine -> AAudio:AAudioStream_setBufferSizeInFrames() +StreamEngine -> audio_common.h:PrintAudioStreamInfo(AAudioStream) +StreamEngine -> AAudio:AAudioStreamBuilder_delete() +StreamEngine -> StreamEngine:writeBufferToStreamer() +StreamEngine -> AAudio:AAudioStream_write() +AAudioApi -> StreamEngine:stop() +StreamEngine -> StreamEngine:closePlaybackStream() +StreamEngine -> AAudio:aaudio_stream_state_t +note right:Restore the aaudio_STREAM_STATE_t related state +StreamEngine -> AAudio:AAudioStream_requestStop() +StreamEngine -> AAudio:AAudioStream_waitForStateChange() +StreamEngine -> AAudio:AAudioStream=nullptr + + + + +@enduml \ No newline at end of file