BirdNet-goMikrofon/Arduino-audio-tools-main/arduino-audio-tools-main/tests-cmake/codec/container-avi/container-avi.cpp

38 lines
1 KiB
C++
Raw Normal View History

2026-09-26 01:20:55 +02:00
/**
* @file communication-container-binary.ino
* @author Phil Schatzmann
* @brief generate sine wave -> encoder -> decoder -> audiokit (i2s)
* @version 0.1
* @date 2022-04-30
*
* @copyright Copyright (c) 2022
*
*/
#include "AudioTools.h"
#include "AudioTools/AudioCodecs/ContainerAVI.h"
#include "AudioTools/AudioCodecs/CodecHelix.h"
#include "AudioTools/Disk/FileSystem.h"
#include "AudioTools/AudioLibs/PortAudioStream.h"
//CsvOutput<int16_t> out;
PortAudioStream out; // Output of sound on desktop
DemuxerAVI codec;
DecoderHelix multiDecoder; // WAV/AAC/MP3, auto-selected by mime (DecoderHelix
// bundles WAVDecoder + AACDecoderHelix + MP3DecoderHelix)
EncodedAudioStream audioOut(&out, &multiDecoder); // decodes PCM/AAC/MP3 -> out
EncodedAudioOutput riff(&audioOut, &codec);
File file;
StreamCopy copier(riff, file);
void setup() {
AudioToolsLogger.begin(Serial, AudioToolsLogLevel::Info);
multiDecoder.begin();
file.open("/data/resources/test1.avi",FILE_READ);
}
void loop() {
if(!copier.copy()){
stop();
}
}