diff --git a/docs/audio-flow.drawio.svg b/docs/audio-flow.drawio.svg new file mode 100644 index 0000000..9714256 --- /dev/null +++ b/docs/audio-flow.drawio.svg @@ -0,0 +1,511 @@ + + + + + + + +
+
+
+ + Mumble-Discord-Bridge + +
+
+
+
+ + Mumble-Discord-Bridge + +
+
+ + + + + + +
+
+
+ + Gumble + +
+
+
+
+ + Gumble + +
+
+ + + + + + +
+
+
+ + fromMumbleMixer +
+
+ (10ms ticker) +
+
+
+
+ + fromMumbleMixer... + +
+
+ + + + + + +
+
+
+ + discordSendPCM + +
+ (20 ms ticker) +
+ opus encode +
+ Speaking state update +
+
+
+
+ + discordSendPCM... + +
+
+ + + + + + + + +
+
+
+ Websocket +
+
+
+
+ + Websocket + +
+
+ + + + +
+
+
+ + Discordgo + +
+
+
+
+ + Discordgo + +
+
+ + + + +
+
+
+ send +
+ (internal ticker) +
+
+
+
+ + send... + +
+
+ + + + +
+
+
+ + Mumble + +
+
+
+
+ + Mumble + +
+
+ + + + + + +
+
+
+ + discrodRecievePCM + +
+ (wait on packets) +
+
+
+
+ + discrodRecievePCM... + +
+
+ + + + + + +
+
+
+ + fromDiscordMixer +
+
+ (10ms ticker) +
+
+
+
+ + fromDiscordMixer... + +
+
+ + + + + + +
+
+
+ UDP/TCP +
+ Packets of variable length +
+
+
+
+ + UDP/TCP... + +
+
+ + + + +
+
+
+ + Mumble + +
+
+
+
+ + Mumble + +
+
+ + + + + + + + + + +
+
+
+ + chan gumble.AudioBuffer +
+
+ 10ms of audio pcm +
+
+
+
+ + chan gumble.AudioBuffer... + +
+
+ + + + +
+
+
+ map of structs containing: +
+ + chan pcm +
+
+ 10ms of audio pcm +
+ buffered +
+
+
+
+ + map of structs containing:... + +
+
+ + + + +
+
+
+ + chan discordgo.Packet +
+
+ 20ms of audio opus +
+
+
+
+ + chan discordgo.Packet... + +
+
+ + + + +
+
+
+ recieve +
+ opus decode +
+
+
+
+ + recieve... + +
+
+ + + + +
+
+
+ opus encode +
+ send +
+
+
+
+ + opus encode... + +
+
+ + + + +
+
+
+ + chan gumble.AudioBuffer +
+
+ variable length audio +
+
+
+
+ + chan gumble.AudioBuffer... + +
+
+ + + + +
+
+
+ + chan []int16 +
+
+ 10 ms of audio pcm +
+ buffered +
+
+
+
+ + chan []int16... + +
+
+ + + + +
+
+
+ + chan []byte +
+
+ 20 ms of audio opus +
+ buffered +
+
+
+
+ + chan []byte... + +
+
+ + + + + + +
+
+
+ + onAudioStream +
+
+ (wait on packets) +
+
+
+
+ + onAudioStream... + +
+
+ + + + + +
+
+
+ array of +
+ + chan gumble.AudioBuffer +
+
+ 10ms of audio pcm +
+ buffered +
+
+
+
+ + array of... + +
+
+ + + + +
+
+
+ recieve +
+
+
+
+ + recieve + +
+
+
+ + + + + Viewer does not support full SVG 1.1 + + + +
\ No newline at end of file