You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
PaulStoffregen cad2b012c7 Fix TDM garbage output on unused channels 4 years ago
docs Add issue template 6 years ago
examples Add PassThroughADCtoI2S example 4 years ago
extras Improve wav2sketch parsing of WAV files with junk sections 6 years ago
gui Granular documentation fix 4 years ago
utility PROGMEM->FLASHMEM 4 years ago
.gitignore Add documentation for new objects 8 years ago
.travis.yml Update Travis CI settings 8 years ago
Audio.h async_spdif_input.h added to audio header 4 years ago
AudioControl.h Add AudioSynthWaveformSine 10 years ago
Quantizer.cpp async spdif input added 4 years ago
Quantizer.h async spdif input added 4 years ago
README.md Update readme 7 years ago
Resampler.cpp async spdif input added 4 years ago
Resampler.h async spdif input added 4 years ago
analyze_fft256.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
analyze_fft256.h Fix problem with optimized loops like do {} while (!myFFT.available()); 7 years ago
analyze_fft1024.cpp Import all of Frank's T4 edits 5 years ago
analyze_fft1024.h Do not assume AudioStream.h includes Arduino.h 8 years ago
analyze_notefreq.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
analyze_notefreq.h NoteFrequency fixes 8 years ago
analyze_peak.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
analyze_peak.h Do not assume AudioStream.h includes Arduino.h 8 years ago
analyze_print.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
analyze_print.h Do not assume AudioStream.h includes Arduino.h 8 years ago
analyze_rms.cpp Import all of Frank's T4 edits 5 years ago
analyze_rms.h Do not assume AudioStream.h includes Arduino.h 8 years ago
analyze_tonedetect.cpp Import all of Frank's T4 edits 5 years ago
analyze_tonedetect.h Do not assume AudioStream.h includes Arduino.h 8 years ago
async_input_spdif3.cpp async spdif input added 4 years ago
async_input_spdif3.h default constructor arguments 4 years ago
biquad.h async spdif input added 4 years ago
control_ak4558.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
control_ak4558.h Fixed control functions, examples, GUI elements 8 years ago
control_cs4272.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
control_cs4272.h Add CS4272 control (thanks William Hollender) 8 years ago
control_cs42448.cpp Add comment about strange CS42448 issue and undocumented bit 5 years ago
control_cs42448.h Add AudioControlCS42448 7 years ago
control_sgtl5000.cpp Fix CHIP_I2S_CTRL on Init (SCLK=32*fs -> 64*fs) 4 years ago
control_sgtl5000.h Add ability to control two SGTL5000 chips 8 years ago
control_tlv320aic3206.cpp AIC3206: rename channel macros, add comments 6 years ago
control_tlv320aic3206.h AIC3206: rename channel macros, add comments 6 years ago
control_wm8731.cpp WM8731 has flaky I2C communication workaround 5 years ago
control_wm8731.h Add WM8731 inputSelect() function and update example 6 years ago
data_spdif.c use common spdif bcmlookup table 5 years ago
data_ulaw.c Add missing open source license headers 10 years ago
data_waveforms.c Remove old AudioSynthWaveform 10 years ago
data_windows.c Add other window types for 1024 point FFT 10 years ago
effect_bitcrusher.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
effect_bitcrusher.h Do not assume AudioStream.h includes Arduino.h 8 years ago
effect_chorus.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
effect_chorus.h Do not assume AudioStream.h includes Arduino.h 8 years ago
effect_combine.cpp Add AudioEffectDigitalCombine (from Bleep Labs) 6 years ago
effect_combine.h Move combine effect constants to class enum, not global scope 6 years ago
effect_delay.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
effect_delay.h Allow longer max delay effect on Teensy 4.0 4 years ago
effect_delay_ext.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
effect_delay_ext.h Add F-RAM 7 years ago
effect_envelope.cpp Add isActive() and isSustain() to envelope 6 years ago
effect_envelope.h Add isActive() and isSustain() to envelope 6 years ago
effect_fade.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
effect_fade.h Do not assume AudioStream.h includes Arduino.h 8 years ago
effect_flange.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
effect_flange.h Do not assume AudioStream.h includes Arduino.h 8 years ago
effect_freeverb.cpp Import all of Frank's T4 edits 5 years ago
effect_freeverb.h Add AudioEffectFreeverbStereo 6 years ago
effect_granular.cpp Increase granular speed range, change public function to setSpeed() 6 years ago
effect_granular.h Increase granular speed range, change public function to setSpeed() 6 years ago
effect_midside.cpp Import all of Frank's T4 edits 5 years ago
effect_midside.h Do not assume AudioStream.h includes Arduino.h 8 years ago
effect_multiply.cpp Import all of Frank's T4 edits 5 years ago
effect_multiply.h Do not assume AudioStream.h includes Arduino.h 8 years ago
effect_reverb.cpp memset: wrong size - element size is not 1 6 years ago
effect_reverb.h Add reverb effect, from Joao Rossi Filho 8 years ago
effect_waveshaper.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
effect_waveshaper.h Accept floats instead of int16_ts for waveshape in shape() 7 years ago
filter_biquad.cpp Add comment about noise shaping in biquad filter 5 years ago
filter_biquad.h Add shelving filter support for biquad 8 years ago
filter_fir.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
filter_fir.h Do not assume AudioStream.h includes Arduino.h 8 years ago
filter_fir.md Change FIR filter (as suggested by rheslip) to filter one channel instead of two. Updated example, added documenting file 10 years ago
filter_variable.cpp Update links in comments, to Laurent de Soras's exp2 approximation info 5 years ago
filter_variable.h Do not assume AudioStream.h includes Arduino.h 8 years ago
input_adc.cpp T4 ADC input, commandeer a timer not used for PWM and don't mess with pin 15 4 years ago
input_adc.h Initial support for ADC input on Teensy 4.0 4 years ago
input_adcs.cpp align 4 years ago
input_adcs.h Fix indentation and move filtercoefficient to #define constant instead of int32_t variable 7 years ago
input_i2s.cpp fix warning 4 years ago
input_i2s.h Do not assume AudioStream.h includes Arduino.h 8 years ago
input_i2s2.cpp Update input_i2s2.cpp 4 years ago
input_i2s2.h various (see below) 5 years ago
input_i2s_hex.cpp add DMAMEM, fix warnings 4 years ago
input_i2s_hex.h 6 channel I2S input for Teensy 4.0 4 years ago
input_i2s_oct.cpp 8 channel I2S input for Teensy 4.0 4 years ago
input_i2s_oct.h 8 channel I2S input for Teensy 4.0 4 years ago
input_i2s_quad.cpp add DMAMEM, fix warnings 4 years ago
input_i2s_quad.h Do not assume AudioStream.h includes Arduino.h 8 years ago
input_pdm.cpp Update input_pdm.cpp 4 years ago
input_pdm.h Add AudioInputPDM 6 years ago
input_spdif3.cpp spdif-input 4 years ago
input_spdif3.h spdif-input 4 years ago
input_tdm.cpp Fix TDM input on Teensy 4.0 5 years ago
input_tdm.h Add AudioInputTDM 7 years ago
input_tdm2.cpp Fix TDM2 on Teensy 4.0 5 years ago
input_tdm2.h T4: Input TDM, Input TDM2 5 years ago
keywords.txt spdif-input 4 years ago
library.json Let PlatformIO automatically detect Arduino v1.0 library format 8 years ago
library.properties Edit version string, for Arduino 1.6.11 compatibility 8 years ago
memcpy_audio.S Import all of Frank's T4 edits 5 years ago
memcpy_audio.h Add memcpy_tointerleaveQuad (thanks Frank) 8 years ago
mixer.cpp Import all of Frank's T4 edits 5 years ago
mixer.h Import all of Frank's T4 edits 5 years ago
multiplier.md Add a multiplier (by rheslip) 10 years ago
new_objects.md change format for new_objects files 10 years ago
output_adat.cpp Update output_adat.cpp 4 years ago
output_adat.h Add ADAT 8 channel TOSLINK output by Ernstjan Freriks 6 years ago
output_dac.cpp alignment 4 years ago
output_dac.h Do not assume AudioStream.h includes Arduino.h 8 years ago
output_dacs.cpp alignment 4 years ago
output_dacs.h Add AudioOutputAnalogStereo 8 years ago
output_i2s.cpp fix slave i2s output on teensy 4 4 years ago
output_i2s.h 8 channel I2S output for Teensy 4.0 4 years ago
output_i2s2.cpp Fix simultaneous input & output on I2S2 4 years ago
output_i2s2.h various (see below) 5 years ago
output_i2s_hex.cpp 6 channel I2S output for Teensy 4.0 4 years ago
output_i2s_hex.h 6 channel I2S output for Teensy 4.0 4 years ago
output_i2s_oct.cpp 8 channel I2S output for Teensy 4.0 4 years ago
output_i2s_oct.h 8 channel I2S output for Teensy 4.0 4 years ago
output_i2s_quad.cpp Quad I2S output for Teensy 4.0 4 years ago
output_i2s_quad.h Do not assume AudioStream.h includes Arduino.h 8 years ago
output_mqs.cpp cache-support mqs 5 years ago
output_mqs.h add output_mqs 5 years ago
output_pt8211.cpp DMAMEM, aligned 4 years ago
output_pt8211.h add output_pt8211 5 years ago
output_pt8211_2.cpp DMAMEM, aligned 4 years ago
output_pt8211_2.h add output_pt8211_2 5 years ago
output_pwm.cpp fix compilation error 4 years ago
output_pwm.h Add Teensy 4 PWM output 4 years ago
output_spdif.cpp PROGMEM->FLASHMEM 4 years ago
output_spdif.h SPDIF 5 years ago
output_spdif2.cpp PROGMEM->FLASHMEM 4 years ago
output_spdif2.h SPDIF 5 years ago
output_spdif3.cpp spdif-input 4 years ago
output_spdif3.h spdif-input 4 years ago
output_tdm.cpp Fix TDM garbage output on unused channels 4 years ago
output_tdm.h Add AudioInputTDM 7 years ago
output_tdm2.cpp Fix TDM2 on Teensy 4.0 5 years ago
output_tdm2.h various (see below) 5 years ago
play_memory.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
play_memory.h Do not assume AudioStream.h includes Arduino.h 8 years ago
play_queue.cpp Allow larger queues on Teensy 3.5, 3.6, 4.0 4 years ago
play_queue.h Allow larger queues on Teensy 3.5, 3.6, 4.0 4 years ago
play_sd_raw.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
play_sd_raw.h Do not assume AudioStream.h includes Arduino.h 8 years ago
play_sd_wav.cpp Play WAV files with junk sections 6 years ago
play_sd_wav.h Bugfix for missing initialization of data pointers in AudioPlaySdWav 6 years ago
play_serialflash_raw.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
play_serialflash_raw.h Do not assume AudioStream.h includes Arduino.h 8 years ago
record_queue.cpp Allow larger queues on Teensy 3.5, 3.6, 4.0 4 years ago
record_queue.h Allow larger queues on Teensy 3.5, 3.6, 4.0 4 years ago
spi_interrupt.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
spi_interrupt.h Do not assume AudioStream.h includes Arduino.h 8 years ago
synth_dc.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
synth_dc.h Import all of Frank's T4 edits 5 years ago
synth_karplusstrong.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
synth_karplusstrong.h Add Synthesis Guitar example 8 years ago
synth_pinknoise.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
synth_pinknoise.h Do not assume AudioStream.h includes Arduino.h 8 years ago
synth_pwm.cpp Import all of Frank's T4 edits 5 years ago
synth_pwm.h Add AudioSynthWaveformPWM 7 years ago
synth_simple_drum.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
synth_simple_drum.h Adding SimpleDrum synthesis object to audio library. 8 years ago
synth_sine.cpp Import all of Frank's T4 edits 5 years ago
synth_sine.h Do not assume AudioStream.h includes Arduino.h 8 years ago
synth_tonesweep.cpp Include Arduino.h first in all cpp files, for precompiled header speedup 6 years ago
synth_tonesweep.h ToneSweep improvements (thanks Pio) 6 years ago
synth_waveform.cpp Update links in comments, to Laurent de Soras's exp2 approximation info 5 years ago
synth_waveform.h Add waveform phase modulation 6 years ago
synth_waveform.md Fixed AudioSynthWaveform. Uses LUT with linear interpolation for sinewave. 10 years ago
synth_wavetable.cpp Fix wavetable crash on instrument change after stop 6 years ago
synth_wavetable.h Avoid global Wavetable defines 6 years ago
synth_whitenoise.cpp Import all of Frank's T4 edits 5 years ago
synth_whitenoise.h Do not assume AudioStream.h includes Arduino.h 8 years ago

README.md

Teensy Audio Library

16 bit, 44.1 kHz streaming audio library for Teensy 3.x, featuring:

  • Polyphonic Playback
  • Recording
  • Synthesis
  • Analysis
  • Effects
  • Filtering
  • Mixing
  • Multiple Simultaneous Inputs & Outputs
  • Flexible signal routing between library objects
  • Automatic Streaming while your Arduino sketch runs

Main Audio Library Page

http://www.pjrc.com/teensy/td_libs_Audio.html

Audio System Design Tool

Use this graphical tool to design your audio project. Easily browse the library’s many features, connect objects, export to Arduino code, and quickly access details for the functions each object provides for you to control it from your Arduino sketch!

http://www.pjrc.com/teensy/gui/index.html

Supported Hardware

Audio Adaptor Board for 16 bit stereo input and output.

Inputs Outputs

Dual Audio Adaptor Boards for quad channel 16 bit input and output.

Teensy 3.6, Teensy 3.5, Teensy 3.2, or Teensy 3.1 12 bit DAC Output (Mono)

DAC Output

Teensy 3.6, Teensy 3.5, Teensy 3.2, Teensy 3.1 or Teensy 3.0 ADC Input (Mono)

ADC Input

Teensy 3.6, Teensy 3.5, or Teensy 3.2 ADC Input (Stereo)

ADC Input

Teensy 3.6 or Teensy 3.5 12 bit DAC Output (Stereo)

DAC Output

Teensy 3.6, Teensy 3.5, Teensy 3.2, Teensy 3.1 or Teensy 3.0 PWM Output (Mono)

PWM Output

USB Audio: Bi-Directional Stereo Streaming to a PC

Inputs Outputs