Takafumi Horiuchi

Metronomo kun pulso

Superrigardo

La cirklo meze de la ekrano pulsas samtempe kaj samforte kiel ĉiu klako. Mi kreis metronomon por iPhone sen reklamoj, kontoj aŭ agorda ekrano.

La ekrano de la metronomo. Blanka cirklo meze de nigra ekrano, kvar taktobataj punktoj supre kaj 120 BPM kun −/+ sube. La cirklo ŝveliĝas kaj revenas je ĉiu bato.
Ĉi tiu ekrano funkcias en la paĝo per la samaj ekvacioj kiel la aplikaĵo (120 BPM, kvar batoj en takto). Tuŝetu la cirklon por haltigi ĝin.

Mi faris ĝin por mia propra ekzercado per tenora saksofono. Oni malfermas ĝin kaj tuj povas komenci; la bato restas videbla eĉ kiam la sono estas malfacile aŭdebla. Mi faris ĉion sola, de la koncepto kaj dezajno ĝis la realigo per SwiftUI kaj la sintezo de la klakoj.

Regado — tuŝi tion, kion oni volas ŝanĝi

Sur la ekrano estas nur taktobataj punktoj, cirklo kaj la temponombro. Sen menuoj aŭ instrukcioj: oni tuŝas rekte tion, kion oni volas ŝanĝi.

La haltigita ekrano. Helgriza cirklo kun ludtriangulo meze, kvar punktoj supre, 120 BPM kaj −/+ sube, kaj eta ⓘ maldekstre supre.
ⓘ
Malfermas la helppaĝon.
Punktoj
Tuŝeto aldonas unu baton (1–7). Glitu por aldoni aŭ forigi batojn.
Cirklo
Tuŝetu por komenci aŭ halti. Premtenu, poste frapetu laŭ kanto por agordi la tempon.
Nombroj
Trenu por plirapidigi aŭ malrapidigi. Movu malrapide por fajna agordo. −/+ ŝanĝas po unu.
La haltigita ekrano. La sola teksto sur la ekrano estas nombroj kaj “BPM”.

Pulso — la sama momento, la sama forto

La cirklo ŝveliĝas kiam la sono atingas la orelon, ne kiam ĝi estas eligita. La proksimume 0.1–0.3-sekunda malfruo de Bluetooth-aŭdiloj estas kompensata per la eliga malfruo raportita de iOS. La ŝvelamplekso estas proporcia al la laŭteco de la klako: ĉe la unua bato la sono estas pli alta kaj laŭta, kaj la cirklo ŝveliĝas rimarkeble pli.

Grafikaĵo de klakoj kaj cirklograndeco dum kvarbata takto. La kurbo tuj leviĝas je ĉiu klako, ĝis 1.25-oble la ripoza grandeco ĉe bato 1 kaj 1.15-oble ĉe batoj 2–4, poste falas iom sub 1 antaŭ ol reveni.
Klakoj (plenigitaj areoj) kaj cirklograndeco (linio) dum unu takto je 120 BPM, kvar batoj en takto. La cirklo atingas sian maksimumon 0.02 sekundojn post la sono, kuntiriĝas iom tro, kiel ĵeleo, kaj kvietiĝas.

La sonfadeno determinas la batotempojn laŭ sonprovaĵoj. La kalkulo evitas akumuli erarojn: eĉ post horo da senĉesa ludado, la devio restas ene de 0.5 sonprovaĵo.

Tempo per frapetoj — silento dum la frapetado

Premtenu la cirklon kaj ĝi ektremas kiel ĵeleo. Frapetu laŭ kanto aŭ laŭ la tempo en via kapo: la cirklo enfosiĝas ĉe la tuŝita loko, ŝanceliĝas kaj resaltas. Vibrado redonas al vi la tempon.

Ses bildoj de la konturo post unu frapeto ĉe la supra rando. Ĝi enfosiĝas je 0.03 sekundoj, komencas reveni je 0.08, iom misformiĝas vertikale kaj horizontale je 0.17 kaj 0.3, kaj denove estas cirkla je 1.3 sekundoj.
La konturo post unu frapeto ĉe la supra rando, desegnita per la samaj ekvacioj kiel la aplikaĵo. La punktlinio estas perfekta cirklo.
Evoluiga versio de la aplikaĵo. La cirklo estas griza dum la enigo de tempo per frapetoj. Sube japana panelo “Agordado de ĵeleo” montras ŝovilojn kaj klarigojn, interalie “Elasteco (oscila rapido): 3.6 cikloj/sekundo” kaj “Viskozeco (mildiĝo de la oscilado): 0.10”.
Mi agordis la ŝanceliĝon per panelo disponebla nur en la evoluiga versio. Mi ŝanĝis dek valorojn, interalie elastecon kaj viskozecon, per ŝoviloj dum mi frapetis la cirklon por provi la senton. Komparinte “pudingo”, “warabi mochi” kaj “pli likva”, mi elektis “ĵeleo” kiel defaŭlton: vigla resalto, kiu kvietiĝas post ĉirkaŭ 0.9 sekundoj.

Dum la frapetado ĝi intence silentas. Tuja sona respondo alvenus malfrue per Bluetooth kaj interkovriĝus kun la klakoj de la metronomo. Kiam oni ĉesas frapeti, klakoj je tiu tempo komenciĝas preskaŭ neaŭdeble kaj atingas sian kutiman laŭtecon dum ses sekundoj.

Post kvin frapetoj la vibraj punktoj iom post iom malgrandiĝas, dum la klakaj stangoj kreskas de preskaŭ neaŭdebla nivelo dum ses sekundoj.
Kvin frapetoj je 120 BPM, poste paŭzo. De malsupre: frapetoj, vibrado (pli malgranda signifas pli malforta), klakoj (pli alta signifas pli laŭta). La laŭteco kreskas egale laŭ decibeloj, evitante subitan salton de mallaŭta sono.

Sono — elekti aŭde tonalton, kiu ne perdiĝas en la saksofono

La klakoj estas sintezataj el sinusondoj, sen sondosieroj. Mi kreis komparpaĝon kaj faris tri aŭdajn komparojn per la laŭtparolilo de la iPhone dum ludado de tenora saksofono. Mi elektis 1875 Hz kaj 1250 Hz, 1.25-oble la originajn frekvencojn: super la plej forta parto de la saksofona spektro kaj sub la regiono, kiu emas soni akre.

Frekvenca akso de 100 Hz ĝis 10 kHz. La tenora saksofono okupas la malsupran regionon; la akra regiono estas je 2.5–4 kHz. La klakoj je 1250 Hz kaj 1875 Hz situas inter ili; la originaj 1000 Hz kaj 1500 Hz estas punktlinioj.
La ombrita bendo montras la energikoncentriĝon de la tenora saksofono (pli malforta dekstren); la oblikva haĉo indikas la akrajn 2.5–4 kHz. Punktlinioj estas la originaj sonoj (1000/1500 Hz), plenaj linioj la elektitaj. La alteco de la linioj montras laŭtecon.

Pli altaj kaj longaj sonoj, aŭ variantoj kun aldonitaj harmonoj, estis pli bone aŭdeblaj. Tamen mi elektis ene de la gamo, kiu konservis mildan, neŭtralan elektronikan karakteron.

Subtrahi — kion mi ellasis

Nenio, kio hezitigas inter elektoj. Mi kontrolis ĉiun eron por vidi, ĉu la aplikaĵo funkcias sen ĝi, kaj forigis ĝin.

Reklamoj, spurado kaj kontoj
Decidite dekomence. La aplikaĵo ne iniciatas retan komunikadon memstare.
Agorda ekrano
Ĉio okazas sur unu ekrano.
Elekto de sonkoloroj
Du sonoj sufiĉas, por akcentitaj kaj neakcentitaj batoj. Elektebloj kreas heziton.
Laŭteca ŝovilo
La laŭtecaj butonoj de la aparato sufiĉas.
Hela reĝimo
Nur unu nigra ekrano.
Ok aŭ pli da batoj
Nombru 12/8 en kvar batoj kaj 9/8 en tri.
Subdividoj (okonoj, trioletoj, deksesonoj)
Ne nepraj por la funkciado. Ili restas la unua kandidato por estonta aldono.
Tajpado de tempo
−/+ kaj trenado sufiĉas.

Realigita per SwiftUI, sen eksteraj bibliotekoj. Funkcias sur iPhone kun iOS 17 aŭ posta. La angla nomo estas No Ads Simplest Metronome. Mi preparas ĝian publikigon en la App Store (septembro 2026). La plenaj instrukcioj kaj privateca politiko troviĝas sur la helppaĝo (en la angla).