SlideShare a Scribd company logo
1 of 26
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy
Danilo de Jesus da Silva BelliniDanilo de Jesus da Silva Bellini
(Desenvolvedor da AudioLazy)(Desenvolvedor da AudioLazy)
Twitter: @danilobelliniTwitter: @danilobellini
https://github.com/danilobellini/audiolazyhttps://github.com/danilobellini/audiolazy
https://pypi.python.org/pypi/audiolazyhttps://pypi.python.org/pypi/audiolazy
https://groups.google.com/forum/#!https://groups.google.com/forum/#!
forum/audiolazyforum/audiolazy
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy
● DSP (Digital Signal Processing)
– Análise
– Síntese
– Processamento
– Psicoacústica
● Expressividade de código
● Tempo real
Documentação (Sphinx)
http://pythonhosted.org/audiolazy
Python
2.7
Python
2.7
e
3.2+!
e
3.2+!
85% py.test
branch
coverage
Cálculo numérico
Imagens
...
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Processamento
● Distorção
● Flanger
● Phaser
● Wah
● Robotização de voz
● Delay
● Reverb
● ... Novidade:
STFT
Arquivos WAV
ou ao vivo?
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Loudness Fletcher-Munson (1933)?
Imagem
extraída de
Moore,
Elements of
Computer
Music, 1990
ISO226:2003!
Modelo antigo/tradicional
Atual!
Exemplo iso226_plot.py na AudioLazy
E Hoje?
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Altura (pitch)! Shepard
● 2 dimensões:
– Altura (pitch height)
● Dimensão “linear”
– Croma (pitch chroma)
● Dimensão “circular”
● Lembra Escher →
Exemplo shepard.pyExemplo shepard.py
““Hélice”Hélice”
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Síntese
● Modulação
– Ring/anel
– AM
– FM
● Síntese aditiva
● Síntese subtrativa
● Formas de onda
– Senoides
– Sawtooth
– Table lookup
● Ruído
– Branco/uniforme
– Gaussiano
● Exemplos
– FM: mcfm.py
– Subtrativa: formants.py
– Aditiva com senoides:
shepard.py
keyboard.py:
GGGSUGSUG
LLLPUTSUG
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Envoltória espectral
FormantesFormantes
Modelo fonte-filtroModelo fonte-filtro
para a vozpara a voz
LPC (LinearLPC (Linear
Predictive Coding)Predictive Coding)
Classificação deClassificação de
vogaisvogais
(análise e síntese)(análise e síntese)
Exemplos lpc_plot.py e formants.pyExemplos lpc_plot.py e formants.py
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Análise
● ZCR (Taxa de cruzamento no zero)
● DFT (Transformada Discreta de Fourier)
● AMDF (Average Magnitude Difference Function)
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Filtros lineares
● Síntese subtrativa (e.g. play_bach_choral.py)
● Comb, ressonador, passa-baixas, passa-altas, …
● Wah, knob guitarra (passa-baixas RC), ...
filt = 1./9. * (4 - z ** -2) / (1 + .8 * z ** -1 + .4 * z ** -2)
filt.zplot().savefig("zeropolo.pdf")
fcomb = comb.fb(25, .95)
fcomb.plot().savefig("plot-comb.pdf")
filt = 1./9. * (4 - z ** -2) / (1 + .8 * z ** -1 + .4 * z ** -2)
filt.zplot().savefig("zeropolo.pdf")
fcomb = comb.fb(25, .95)
fcomb.plot().savefig("plot-comb.pdf")
1 2
1
2
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
Imagens feitas com a AudioLazyImagens feitas com a AudioLazy
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy + Matplotlib + “hipsterplot”
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini
2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
?
Obrigado! Perguntas?Perguntas?
https://github.com/dhttps://github.com/danilobellini/audiolazyanilobellini/audiolazy

More Related Content

Viewers also liked

Viewers also liked (12)

Testando Aplicações Django: Quando, Como e Onde?
Testando Aplicações Django: Quando, Como e Onde?Testando Aplicações Django: Quando, Como e Onde?
Testando Aplicações Django: Quando, Como e Onde?
 
TDD com Python
TDD com PythonTDD com Python
TDD com Python
 
Curso de Python e Django
Curso de Python e DjangoCurso de Python e Django
Curso de Python e Django
 
Hizb 42
Hizb 42Hizb 42
Hizb 42
 
Vga
VgaVga
Vga
 
News Nov 2-8
News Nov 2-8News Nov 2-8
News Nov 2-8
 
Earthquake
EarthquakeEarthquake
Earthquake
 
List of prior actions version of 26 june 20 00
List of prior actions   version of 26 june 20 00List of prior actions   version of 26 june 20 00
List of prior actions version of 26 june 20 00
 
Emails in Hitachi Solutions Ecommerce
Emails in Hitachi Solutions EcommerceEmails in Hitachi Solutions Ecommerce
Emails in Hitachi Solutions Ecommerce
 
1 ibe-2
1 ibe-21 ibe-2
1 ibe-2
 
Thailand smartphone marcket_report_april_2014
Thailand smartphone marcket_report_april_2014Thailand smartphone marcket_report_april_2014
Thailand smartphone marcket_report_april_2014
 
Crowdfunding history2
Crowdfunding history2Crowdfunding history2
Crowdfunding history2
 

More from Danilo J. S. Bellini

(2018-10-18) [ETEC Uirapuru] Segurança da Informação
(2018-10-18) [ETEC Uirapuru] Segurança da Informação(2018-10-18) [ETEC Uirapuru] Segurança da Informação
(2018-10-18) [ETEC Uirapuru] Segurança da InformaçãoDanilo J. S. Bellini
 
(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask Assíncrono
(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask Assíncrono(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask Assíncrono
(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask AssíncronoDanilo J. S. Bellini
 
(2018-07-14) [Just Python] Números no Python!
(2018-07-14) [Just Python] Números no Python!(2018-07-14) [Just Python] Números no Python!
(2018-07-14) [Just Python] Números no Python!Danilo J. S. Bellini
 
(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)
(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)
(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)Danilo J. S. Bellini
 
(2017-07-22) [TDC] Audiolazy em 2017!
(2017-07-22) [TDC] Audiolazy em 2017!(2017-07-22) [TDC] Audiolazy em 2017!
(2017-07-22) [TDC] Audiolazy em 2017!Danilo J. S. Bellini
 
(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)
(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)
(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)Danilo J. S. Bellini
 
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0Danilo J. S. Bellini
 
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?Danilo J. S. Bellini
 
(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)
(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)
(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)Danilo J. S. Bellini
 
(2014-11-05) [PythonBrasil] Testando com py.test e tox
(2014-11-05) [PythonBrasil] Testando com py.test e tox(2014-11-05) [PythonBrasil] Testando com py.test e tox
(2014-11-05) [PythonBrasil] Testando com py.test e toxDanilo J. S. Bellini
 
(2014-10-27) [SETI-UFLA-MG] AudioLazy
(2014-10-27) [SETI-UFLA-MG] AudioLazy(2014-10-27) [SETI-UFLA-MG] AudioLazy
(2014-10-27) [SETI-UFLA-MG] AudioLazyDanilo J. S. Bellini
 
(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...
(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...
(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...Danilo J. S. Bellini
 
(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)
(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)
(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)Danilo J. S. Bellini
 
(2013-10-16) [LatinoWare] Processamento de sinais em Python
(2013-10-16) [LatinoWare] Processamento de sinais em Python(2013-10-16) [LatinoWare] Processamento de sinais em Python
(2013-10-16) [LatinoWare] Processamento de sinais em PythonDanilo J. S. Bellini
 
(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...
(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...
(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...Danilo J. S. Bellini
 
(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazy
(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazy(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazy
(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazyDanilo J. S. Bellini
 
(2013-10-17) [LatinoWare] Automatizando o GIMP com Python
(2013-10-17) [LatinoWare] Automatizando o GIMP com Python(2013-10-17) [LatinoWare] Automatizando o GIMP com Python
(2013-10-17) [LatinoWare] Automatizando o GIMP com PythonDanilo J. S. Bellini
 
(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3
(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3
(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3Danilo J. S. Bellini
 

More from Danilo J. S. Bellini (20)

(2018-10-18) [ETEC Uirapuru] Segurança da Informação
(2018-10-18) [ETEC Uirapuru] Segurança da Informação(2018-10-18) [ETEC Uirapuru] Segurança da Informação
(2018-10-18) [ETEC Uirapuru] Segurança da Informação
 
(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask Assíncrono
(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask Assíncrono(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask Assíncrono
(2018-08-25) [Flask Conf] Introdução ao Sanic - O Flask Assíncrono
 
(2018-07-14) [Just Python] Números no Python!
(2018-07-14) [Just Python] Números no Python!(2018-07-14) [Just Python] Números no Python!
(2018-07-14) [Just Python] Números no Python!
 
(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)
(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)
(2017-08-12) [GruPy-SP] AudioLazy no GruPy! (+LV2)
 
(2017-07-22) [TDC] Audiolazy em 2017!
(2017-07-22) [TDC] Audiolazy em 2017!(2017-07-22) [TDC] Audiolazy em 2017!
(2017-07-22) [TDC] Audiolazy em 2017!
 
(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)
(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)
(2017-05-27) [Grupy-SP] Polígonos, pontos e outras geometrias no Shapely (GIS)
 
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
 
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
 
(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)
(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)
(2015-01-29/30) [WTA2015] Adaptatividade em Python (Tutorial)
 
(2014-11-05) [PythonBrasil] Testando com py.test e tox
(2014-11-05) [PythonBrasil] Testando com py.test e tox(2014-11-05) [PythonBrasil] Testando com py.test e tox
(2014-11-05) [PythonBrasil] Testando com py.test e tox
 
(2014-10-27) [SETI-UFLA-MG] AudioLazy
(2014-10-27) [SETI-UFLA-MG] AudioLazy(2014-10-27) [SETI-UFLA-MG] AudioLazy
(2014-10-27) [SETI-UFLA-MG] AudioLazy
 
(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...
(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...
(2014-05-24) [Taubaté Perl Mongers] AudioLazy Python DSP (Digital Signal Proc...
 
(2014-04-16) [Garoa HC] Strategy
(2014-04-16) [Garoa HC] Strategy(2014-04-16) [Garoa HC] Strategy
(2014-04-16) [Garoa HC] Strategy
 
(2013-12-18) [Garoa HC] AudioLazy
(2013-12-18) [Garoa HC] AudioLazy(2013-12-18) [Garoa HC] AudioLazy
(2013-12-18) [Garoa HC] AudioLazy
 
(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)
(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)
(2013-11-29) [RuPy] AudioLazy Python DSP (Digital Signal Processing)
 
(2013-10-16) [LatinoWare] Processamento de sinais em Python
(2013-10-16) [LatinoWare] Processamento de sinais em Python(2013-10-16) [LatinoWare] Processamento de sinais em Python
(2013-10-16) [LatinoWare] Processamento de sinais em Python
 
(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...
(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...
(2013-10-03) [PythonBrasil] AudioLazy, processamento de sinais para música, j...
 
(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazy
(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazy(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazy
(2013-09-30) [PythonBrasil] Síntese em tempo real com a AudioLazy
 
(2013-10-17) [LatinoWare] Automatizando o GIMP com Python
(2013-10-17) [LatinoWare] Automatizando o GIMP com Python(2013-10-17) [LatinoWare] Automatizando o GIMP com Python
(2013-10-17) [LatinoWare] Automatizando o GIMP com Python
 
(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3
(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3
(2013-10-02) [PythonBrasil] Compatibilidade entre Python 2 e 3
 

Recently uploaded

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 

(2014-08-09) [TDC] AudioLazy 0.6 will robotize you!

  • 1. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP AudioLazy Danilo de Jesus da Silva BelliniDanilo de Jesus da Silva Bellini (Desenvolvedor da AudioLazy)(Desenvolvedor da AudioLazy) Twitter: @danilobelliniTwitter: @danilobellini https://github.com/danilobellini/audiolazyhttps://github.com/danilobellini/audiolazy https://pypi.python.org/pypi/audiolazyhttps://pypi.python.org/pypi/audiolazy https://groups.google.com/forum/#!https://groups.google.com/forum/#! forum/audiolazyforum/audiolazy
  • 2. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP AudioLazy ● DSP (Digital Signal Processing) – Análise – Síntese – Processamento – Psicoacústica ● Expressividade de código ● Tempo real Documentação (Sphinx) http://pythonhosted.org/audiolazy Python 2.7 Python 2.7 e 3.2+! e 3.2+! 85% py.test branch coverage Cálculo numérico Imagens ...
  • 3. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Processamento ● Distorção ● Flanger ● Phaser ● Wah ● Robotização de voz ● Delay ● Reverb ● ... Novidade: STFT Arquivos WAV ou ao vivo?
  • 4. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Loudness Fletcher-Munson (1933)? Imagem extraída de Moore, Elements of Computer Music, 1990 ISO226:2003! Modelo antigo/tradicional Atual! Exemplo iso226_plot.py na AudioLazy E Hoje?
  • 5. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Altura (pitch)! Shepard ● 2 dimensões: – Altura (pitch height) ● Dimensão “linear” – Croma (pitch chroma) ● Dimensão “circular” ● Lembra Escher → Exemplo shepard.pyExemplo shepard.py ““Hélice”Hélice”
  • 6. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Síntese ● Modulação – Ring/anel – AM – FM ● Síntese aditiva ● Síntese subtrativa ● Formas de onda – Senoides – Sawtooth – Table lookup ● Ruído – Branco/uniforme – Gaussiano ● Exemplos – FM: mcfm.py – Subtrativa: formants.py – Aditiva com senoides: shepard.py keyboard.py: GGGSUGSUG LLLPUTSUG
  • 7. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Envoltória espectral FormantesFormantes Modelo fonte-filtroModelo fonte-filtro para a vozpara a voz LPC (LinearLPC (Linear Predictive Coding)Predictive Coding) Classificação deClassificação de vogaisvogais (análise e síntese)(análise e síntese) Exemplos lpc_plot.py e formants.pyExemplos lpc_plot.py e formants.py
  • 8. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Análise ● ZCR (Taxa de cruzamento no zero) ● DFT (Transformada Discreta de Fourier) ● AMDF (Average Magnitude Difference Function)
  • 9. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Filtros lineares ● Síntese subtrativa (e.g. play_bach_choral.py) ● Comb, ressonador, passa-baixas, passa-altas, … ● Wah, knob guitarra (passa-baixas RC), ... filt = 1./9. * (4 - z ** -2) / (1 + .8 * z ** -1 + .4 * z ** -2) filt.zplot().savefig("zeropolo.pdf") fcomb = comb.fb(25, .95) fcomb.plot().savefig("plot-comb.pdf") filt = 1./9. * (4 - z ** -2) / (1 + .8 * z ** -1 + .4 * z ** -2) filt.zplot().savefig("zeropolo.pdf") fcomb = comb.fb(25, .95) fcomb.plot().savefig("plot-comb.pdf") 1 2 1 2
  • 10. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP Imagens feitas com a AudioLazyImagens feitas com a AudioLazy
  • 11. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 12. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 13. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 14. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 15. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 16. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 17. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 18. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 19. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 20. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 21. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 22. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP AudioLazy + Matplotlib + “hipsterplot”
  • 23. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 24. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 25. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP
  • 26. AudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobelliniAudioLazy 0.6 will robotize you! – Danilo J. S. Bellini – @danilobellini 2014-08-09 – São Paulo / SP2014-08-09 – São Paulo / SP ? Obrigado! Perguntas?Perguntas? https://github.com/dhttps://github.com/danilobellini/audiolazyanilobellini/audiolazy