Você está aqui: JavaScript ::: Web Audio API ::: OscillatorNode |
|
Como criar um oscilador de onda de dente de serra em JavaScript usando a Web Audio API e um OscillatorNodeQuantidade de visualizações: 334 vezes |
|
Nesta dica mostrarei como podemos usar a Web Audio API, em particular um nó OscillatorNode, para criar um oscilador de onda de dente de serra em HTML e JavaScript. Um oscilador de onda de dente de serra é uma espécie de forma de onda não-senoidal básica. Ela recebeu o nome dente de serra baseado em sua semelhança com a lâmina de uma serra. O som desta onda é desarmonioso e limpo, e seu espectro contém ambas as harmônicas normais e estranhas da frequência fundamental. Devido ao fato de ela conter todas as harmônicas inteiras, ela é considerada uma das melhores formas de onda para a construção de outros sons, particularmente cordas, utilizando a síntese subtrativa. Veja na imagem abaixo a representação de um som no formato dente de serra: ![]() Quando criamos um OscillatorNode nós temos que informar o contexto de áudio (um objeto AudioContext), o formato da onda e a frequência em Hz. Em nosso exemplo eu coloquei a frequência em 440 Hz, representando a nota Lá na quarta oitava do piano. Depois do código há uma explicação mais detalhada sobre a frequência, comprimento e amplitude de uma onda de dente de serra. Veja o código JavaScript completo para exemplo:
A frequência descreve o número de vibrações por unidade de tempo, ou seja, quantos ciclos completos a onda percorre em uma unidade de tempo, que pode ser o segundo, o minuto ou qualquer outra unidade que você achar conveniente. A unidade que usaremos para descrever as frequências é o Hertz (Hz). 1 Hz corresponde a um ciclo de vibração por segundo. Por exemplo, quando colocamos um diapasão na forma de garfo em vibração, suas hastes vibrarão a uma frequência de 440 Hz, ou 440 ciclos por segundo, correspondentes à nota musical Lá. Essa nota pode ser perfeitamente descrita pela sua frequência (440 Hz), comprimento de onda (0,77 m) e uma amplitude que vai depender da energia utilizada para colocá-lo em vibração e que descreve a intensidade da variação da pressão do ar. |
|
![]() |
|
Desafios, Exercícios e Algoritmos Resolvidos de JavaScript |
Veja mais Dicas e truques de JavaScript |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |