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

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