Apresento a primeira versão do metrônomo IronTick. Este é um metrônomo leve, preciso e multiplataforma que utiliza o framework Qt6. Ele se destaca por gerar um fluxo contínuo de áudio com cliques em vez de reproduzir cliques isolados de um timer, como a maioria dos outros programas de metrônomo. Graças a essa abordagem, o IronTick clica de forma muito mais estável e precisa, mesmo sob alta carga de fundo.
Recursos e funcionalidades:
Alta precisão: cliques estáveis, manutenção exata do tempo.
Suporte a vários tempos: tempos básicos (2/4, 3/4, 4/4, 6/8) e a possibilidade de definir qualquer outro tempo.
Visualização: indicador de tempos fortes e fracos.
Controle de tempo: alteração de tempo, iniciar e parar o metrônomo são possíveis usando apenas um teclado, sem mouse.
Quais problemas ele resolve
Decidi desenvolver este aplicativo porque enfrentei um sério problema com a maioria dos metrônomos de software existentes — eles muitas vezes não mantêm o tempo com precisão e perdem cliques. A situação se agrava em máquinas fracas sob alta carga de fundo. Quando comecei a investigar as causas desse comportamento, percebi que a abordagem típica na implementação desses metrônomos é criar um timer, que dispara a reprodução de um curto som de clique. E aí está a resposta: como tudo isso opera em um sistema operacional multitarefa, timers em processos de usuário não garantem funcionamento em tempo real com a precisão aceitável para músicos. Periodicamente, o timer dispara significativamente após o momento desejado.
Esse problema no IronTick é resolvido de forma muito simples — ele sintetiza um fluxo contínuo de amostras de áudio PCM, no qual os sons dos cliques são precisamente inseridos nos lugares corretos. Esse fluxo é reproduzido continuamente pela placa de som, como qualquer fluxo de áudio, por exemplo, uma música em um reprodutor de áudio. A sua música no reprodutor não gagueja periodicamente, não importa qual programa esteja em primeiro plano ou qual seja a carga? Assim, um metrônomo que funciona dessa maneira clica de forma tão estável quanto um reprodutor de áudio reproduz uma faixa. Para isso, ele não precisa de um timer impreciso.
O segundo problema, já menos importante, é que geralmente é inconveniente mudar o ritmo sem soltar a guitarra. Por isso, o IronTick vem com controle de teclado de uma única tecla (exatamente uma, não é preciso pressionar 'acordes') para as funções principais. Além disso, há um passo configurável para aumentar/diminuir o tempo. Eu uso assim — começo a praticar uma passagem em um ritmo lento, por exemplo, 120 bpm, e pressiono a tecla J periodicamente para aumentar os bpm em 5 unidades. Depois mais 5, e assim por diante. É possível definir qualquer passo. Pressionar um botão é fácil, sem soltar a palheta.
Arquivos
No contexto do lançamento foi preparado AppImage.
O programa foi escrito na linguagem c++, licença – GPL 3.0 ou mais nova.
Fonte: linux.org.ru
