using System.IO;
using System.Threading.Tasks;
namespace Discord.Audio
{
public interface IAudioClient
{
ConnectionState State { get; }
Channel Channel { get; }
Server Server { get; }
Stream OutputStream { get; }
Task Join(Channel channel);
Task Disconnect();
/// Sends a PCM frame to the voice server. Will block until space frees up in the outgoing buffer.
/// PCM frame to send. This must be a single or collection of uncompressed 48Kz monochannel 20ms PCM frames.
/// Offset .
/// Number of bytes in this frame.
void Send(byte[] data, int offset, int count);
/// Clears the PCM buffer.
void Clear();
/// Blocks until the voice output buffer is empty.
void Wait();
}
}