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

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