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 8a8cddaa9d Change Ladder filter API to be similar to other filters 3 years ago
docs Add issue template 6 years ago
examples Merge pull request #365 from standarddeviant/sdwav-pausable 3 years ago
extras Add PROGMEM to output array 3 years ago
gui Merge pull request #378 from FrankBoesing/fix-doc 3 years ago
utility Fixes for Teensy LC 3 years ago
.gitignore Add documentation for new objects 8 years ago
.travis.yml Update Travis CI settings 8 years ago
Audio.h Add ladder filter, work-in-progress 3 years ago
AudioControl.h Add AudioSynthWaveformSine 10 years ago
Quantizer.cpp prevent clipping 4 years ago
Quantizer.h async spdif input added 4 years ago
README.md Mention Teensy 4.x in readme 3 years ago
Resampler.cpp added the maximum filter length to the parameters 4 years ago
Resampler.h added the maximum filter length to the parameters 4 years ago
analyze_fft256.cpp Fixes for Teensy LC 3 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 FLASHMEM instead of PROGMEM for functions 4 years ago
async_input_spdif3.h prevent clipping 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 Merge pull request #373 from grahamwhaley/20201229_5k_hishelf 3 years ago
control_sgtl5000.h Merge pull request #334 from jurgenbelien/master 3 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_bandlimit_step.c Band limited versions of square and sawtooth added to AudioSynthWaveform and AudioSynthWaveformModulated 4 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 Round down to 0 to avoid the buzzing noise issue reported here: 4 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_rectifier.cpp Update effect_rectifier.cpp 3 years ago
effect_rectifier.h update keywords 4 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_ladder.cpp Change Ladder filter API to be similar to other filters 3 years ago
filter_ladder.h Change Ladder filter API to be similar to other filters 3 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 Fix ADC input on Teensy 3.x 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 Add I2sInput Master 3 years ago
input_i2s.h LC input slave 3 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 Kinetis K only 3 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 Change Ladder filter API to be similar to other filters 3 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 Remove leftover debug printing 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 LC input slave 3 years ago
output_i2s.h Teensy LC AudioOutputI2S(+slave) 3 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 Add comment with link to forum conversation 4 years ago
output_i2s_quad.h Do not assume AudioStream.h includes Arduino.h 8 years ago
output_mqs.cpp MQS: Play nice 3 years ago
output_mqs.h add output_mqs 5 years ago
output_pt8211.cpp LC has no I2S0_TCR1 3 years ago
output_pt8211.h Add Teensy LC Code for PT8211 3 years ago
output_pt8211_2.cpp done :) 3 years ago
output_pt8211_2.h add output_pt8211_2 5 years ago
output_pwm.cpp Disable not-yet-working PWM output for Teensy 4.x 4 years ago
output_pwm.h Add Teensy 4 PWM output 4 years ago
output_spdif.cpp Fix compile errors on Teensy LC 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 async spdif input -> friendclass of spdif output 4 years ago
output_tdm.cpp Fix compile errors on Teensy LC 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 allowing position + length to work during pause 4 years ago
play_sd_wav.h sdwav play/pause initial commit 4 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 Fix compile errors on Teensy LC 4 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 Fix compile errors on Teensy LC 4 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 Fix discontinuity in frequency stepping in tonesweep, remove unnecessary/incorrect masking of phase 4 years ago
synth_tonesweep.h ToneSweep improvements (thanks Pio) 6 years ago
synth_waveform.cpp Merge pull request #362 from MarkTillotson/fix_phase_modulation 3 years ago
synth_waveform.h Improve handling of pulse waveforms to allow sub-sample width pulses and finesse remaining issues with modulation 4 years ago
synth_waveform.md Fixed AudioSynthWaveform. Uses LUT with linear interpolation for sinewave. 10 years ago
synth_wavetable.cpp Fix compile errors on Teensy LC 4 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 and Teensy 4.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