collapse

* Posts Recentes

Amplificador - Rockboard HA 1 In-Ear por almamater
[27 de Março de 2024, 19:13]


O que é isto ? por KammutierSpule
[26 de Março de 2024, 19:35]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Emulador NES em ESP32 por dropes
[13 de Março de 2024, 21:19]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]


Meu novo robô por josecarlos
[06 de Janeiro de 2024, 16:46]


Laser Engraver - Alguém tem? por almamater
[16 de Dezembro de 2023, 14:23]

Autor Tópico: Espectro de um nota de guitarra, que nos ensinam muito sobre física, áudio e DSP  (Lida 1098 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline blabla

  • Mini Robot
  • *
  • Mensagens: 257
Boa tarde a todos,

Hoje trago-vos algo que achei muito interessante,
a pergunta é:

Se eu tocar na minha guitarra um C (Dó), e se fizer no Audacity o gráfico do espectro através da FFT, porquê razão a 3 º harmónica é a que tem maior amplitude e não a 1º harmónica ou fundamental na frequência da minha nota C (Dó)?

A pergunta é simples de perceber, especialmente pelo facto de que vêm com um gráfico.

Contudo nas respostas é que está o verdadeiro sumo da coisa, ou seja é nas respostas que se percebe todas as nuances que podem estar a afetar este sistema de forma a que o gráfico / plot final da frequência vs amplitude tenha aquele comportamento.

Vejam que vale mesmo a pena ver esta discussão. Pelo meio ela inclusivamente chega a ser cômica, mas é uma discussão genial com a qual se aprende muito.

Why is the 5th stronger than the 1st in guitar spectrum?
https://music.stackexchange.com/questions/101677/why-is-the-5th-stronger-than-the-1st-in-guitar-spectrum

Só para contextualizar, eu cheguei até esta página ou pergunta no stackexchange depois de umas pesquisas no contexto do espetro de uma nota numa guitarra. Nomeadamente, se existiria uma forma melhor de conseguir fazer um detetor polifónico de acorde de notas de guitarra ex: clássica ou de cordas de Nylon. Com base na análise do espetro de uma FFT do sinal.

No passado, eu já dediquei algum tempo a este problema e já implementei um pequeno projeto que fazia isto mas com base num algoritmo relativamente simples que é o Harmonic Product Spectrum:

Polyphonic note detector using Harmonic Product Spectrum
https://github.com/joaocarvalhoopen/Polyphonic_note_detector_using_Harmonic_Product_Spectrum

Na realidade eu estava a conjeturar a hipótese de fazer uma implementação em tempo real deste algoritmo em Rust ou C / C++ em que iria buscar os dados diretamente à placa de som, processa-se buffers de FFT mais pequenos em tempo real, um pequeno servidor de sockets UDP e que envia-se sinais de note_C4_on, note_C4_off, tal como o protocolo MIDI para outras aplicações, e com isso quem sabe para eu ou outras pessoas fazerem um jogo para guitarra que contribui-se para que uma pessoa pratica-se mais guitarra, pelo menos para principiantes. Já fiz uma coisa similar para flauta e para harmónica no passado.

Contudo e neste caso queria ver se conseguia melhorar o algoritmo e foi nesse contexto que cheguei a esta pérola que partilhei aqui convosco.

Obrigado,

Cumprimentos,
João