Przedstawiam pierwszy wydanie metronomu IronTick. Jest to lekki, dokładny, wieloplatformowy metronom, który wykorzystuje framework Qt6. Wyróżnia się tym, że generuje ciągły strumień audio z kliknięciami, zamiast odtwarzać pojedyncze kliknięcia według timera, jak to robi większość innych programów metronomowych. Dzięki takiemu podejściu, IronTick klika znacznie stabilniej i dokładniej, nawet przy dużym obciążeniu tła.
Możliwości i cechy:
Wysoka dokładność: stabilne kliknięcia, precyzyjne utrzymanie tempa.
Wsparcie dla różnych metrum: podstawowe metrum (2/4, 3/4, 4/4, 6/8), a także możliwość ustawienia dowolnego innego metrum.
Wizualizacja: wskaźnik silnych i słabych części.
Kontrola tempa: zmiana tempa, uruchomienie i zatrzymanie metronomu możliwe za pomocą jednej klawiatury, bez myszy.
Jakie problemy rozwiązuje
Postanowiłem opracować tę aplikację, ponieważ napotkałem poważny problem większości istniejących programowych metronomów - często nie dokładnie utrzymują one tempo, pomijają kliknięcia. Sytuacja znacznie się pogarsza na słabych komputerach przy dużym obciążeniu tła. Kiedy zacząłem badać przyczyny takiego zachowania, okazało się, że typowe podejście przy realizacji tych metronomów - stworzenie timera, na którego wyzwolenie przylega uruchomienie odtwarzania krótkiego dźwięku kliknięcia. Oto odpowiedź, ponieważ to wszystko działa w systemach wielozadaniowych, timery w procesach użytkownika nie gwarantują działania w czasie rzeczywistym z akceptowalną dla muzyka dokładnością. Czasami, timer wyzwala się znacznie później niż potrzebny moment czasowy.
Ten problem w IronTick został rozwiązany bardzo prosto - syntetyzuje on ciągły strumień PCM próbek audio, w którym dokładnie w odpowiednich miejscach wstawione są dźwięki kliknięć. Ten strumień jest odtwarzany nieprzerwanie przez kartę dźwiękową, jak każdy inny strumień audio, na przykład piosenka w odtwarzaczu audio. Czy twoja piosenka w odtwarzaczu nie chrupie okresowo, niezależnie od tego, jaka aplikacja jest na pierwszym planie i jakie obciążenie? Oto metronom, działający na tej samej zasadzie, klika tak samo stabilnie, jak odtwarzacz audio odtwarza utwór. Do tego nie potrzebuje nieprecyzyjnego timera.
Drugim problemem, choć już mniej istotnym, jest to, że zazwyczaj trudno jest zmieniać tempo, nie wypuszczając gitary z rąk. Dlatego w IronTick dostępne jest domyślne sterowanie z klawiatury za pomocą jednego klawisza (właśnie jednego, nie trzeba trzymać „akordów”) do podstawowych funkcji. Stworzono również konfigurowalny krok zwiększania/zmniejszania tempa. Używam tego w ten sposób — zaczynam ćwiczyć pasaż w wolnym tempie, na przykład 120 bpm, i okresowo naciskam klawisz J, aby zwiększyć bpm o 5 jednostek. Potem jeszcze o 5, i tak dalej. Można ustawić dowolny krok. Naciśnięcie jednego przycisku jest łatwe, nie wypuszczając kostki z rąk.
Pliki
W ramach wydania przygotowano AppImage.
Program napisano w języku c++, licencja – GPL 3.0 lub nowsza.
Źródło: linux.org.ru
