From f97894ad3798682377980f5100ed91e32aa43894 Mon Sep 17 00:00:00 2001 From: faiface Date: Sat, 8 Jul 2017 14:54:01 +0200 Subject: [PATCH] audio: add Mixer doc --- audio/mixer.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/audio/mixer.go b/audio/mixer.go index 607b6a9..d427cde 100644 --- a/audio/mixer.go +++ b/audio/mixer.go @@ -1,17 +1,23 @@ package audio +// Mixer allows for dynamic mixing of arbitrary number of Streamers. Mixer automatically removes +// drained Streamers. Mixer's stream never drains, when empty, Mixer streams silence. type Mixer struct { streamers []Streamer } +// Len returns the number of Streamers currently playing in the Mixer. func (m *Mixer) Len() int { return len(m.streamers) } +// Play adds Streamers to the Mixer. func (m *Mixer) Play(s ...Streamer) { m.streamers = append(m.streamers, s...) } +// Stream streams all Streamers currently in the Mixer mixed together. This method always returns +// len(samples), true. If there are no Streamers available, this methods streams silence. func (m *Mixer) Stream(samples [][2]float64) (n int, ok bool) { var tmp [512][2]float64