Skip to content

Selecting a Decoder

Phil Schatzmann edited this page Nov 15, 2023 · 31 revisions

Define the Decoder on the Server

First you need to define the codec that snapcast is using in /etc/snapserver.conf

   codec = opus

is selecting the opus decoder. Supported values are flac, ogg, opus and pcm

Define the Decoder for the Arduino Client

After you have installed the necessary decoder library you can select on of the following decoders:

#include "AudioCodecs/CodecOpus.h"   // https://github.com/pschatzmann/arduino-libopus.git
#include "AudioCodecs/CodecFLAC.h"   // https://github.com/pschatzmann/arduino-libflac.git
#include "AudioCodecs/CodecVorbis.h" //https://github.com/pschatzmann/arduino-libvorbis-idec

// codecs
OpusAudioDecoder opus;
FLACDecoder flac;
VorbisDecoder ogg;
WAVDecoder pcm;
// setup client
WiFiClient wifi;
I2SStream out;
SnapClient client(wifi, out, opus);
Clone this wiki locally