[Audio]
Description
Initializes the Audio library by specifying the target sample rate and size of the audio buffer.
Syntax
Audio.begin(rate, size);
Parameters
rate
(int): the sample rate of the sound file. If stereo, double the rate (ex. 44100hz stereo = 88200).size
(int): the size of the audio buffer in milliseconds.
Returns
Nothing.
Example
#include <SD.h> #include <Audio.h> void setup() { // debug output at 9600 baud Serial.begin(9600); // setup SD-card Serial.print("Initializing SD card..."); if (!SD.begin()) { Serial.println(" failed!"); return; } Serial.println(" done."); // 44100hz stereo => 88200 sample rate // 100 mSec of prebuffering. Audio.begin(88200, 100); } void loop() { int count=0; // open wave file from sdcard File myFile = SD.open("test.wav"); if (!myFile) { // if the file didn't open, print an error and stop Serial.println("error opening test.wav"); while (true); } const int S=1024; // Number of samples to read in block short buffer[S]; Serial.print("Playing"); // until the file is not finished while (myFile.available()) { // read from the file into buffer myFile.read(buffer, sizeof(buffer)); // Prepare samples int volume = 1023; Audio.prepare(buffer, S, volume); // Feed samples to audio Audio.write(buffer, S); // Every 100 block print a '.' count++; if (count == 100) { Serial.print("."); count = 0; } } myFile.close(); Serial.println("End of file. Thank you for listening!"); while (true) ; }
Libraries Reference Home
The text of the 86Duino reference is a modification of the Arduino reference and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.