IronTick 1.0: կայուն խաչ-platform մետրոն


1

Ես ներկայացնում եմ IronTick մետրոնոմի առաջին թողարկումը: Սա թեթև, ճշգրիտ, բազմապլատֆորմ մետրոնոմ է, որը օգտագործում է Qt6 գործառնական շրջանակը: Այն տարբերվում է մնացած մետրոնոմ ծրագրերի կողմից, քանի որ ստեղծում է անընդհատ աուդիոկայանով ծեծեր, փոխարենը, որ լսել առանձին ծեծեր ժամաչափով: Ավելին, IronTick-ն ավելի կայուն է և ճշգրիտ է ծեծ տալիս, նույնիսկ մեծ ֆոնային բ yükի դեպքում:

Հնարավորություններ և առանձնահատկություններ:

  1. Ուրախություն բարձր ճշգրտություն: Կայուն ծեծեր, ճշգրիտ տեմպի պահպանման համար:

  2. Տարբեր չափերի աջակցություն: Հիմնական չափեր (2/4, 3/4, 4/4, 6/8), ինչպես նաև ցանկացած ուրիշ չափանիշ սահմանելու հնարավորություն:

  3. Մերկացում: Բացակայում ուժեղ և թույլ հատակարգերի ցուցիչ:

  4. Տեմպի կառավարում. Տեմպի փոփոխություն, մետրոնոմի բացում և փակումը հնարավոր է մեկ ստեղնաշարի օգնությամբ, առանց մկնիկի:

Որոնք են լուծվող խնդիրները:

Այս ծրագիրը մշակելու որոշում կայացրի, քանի որ բախվեցինք շատերի՝ գոյություն ունեցող մետրոնոմ ծրագրերի պատահական խնդիրներին՝ նրանց ելույթները հաճախ ճշգրիտ չեն, ծեծերը բաց են մնում: Իհարկե, այս իրավիճակը ավելի ծանրանում է թույլ մեքենաների վրա մեծ ֆոնային բ yükում: Երբ ես սկսեցի ուսումնասիրել այս վարքի պատճառները, պարզվեց, որ սովորական մոտեցումը այս մետրոնոմները իրականացնելու մեջ՝ ժամաչափ ստեղծելու է, որի վրա տեղադրվում է կարճ ձայնի բացումը: Вот и ответ, поскольку это все работает в многозадачной ОС, таймеры в пользовательских процессах не гарантируют работы в реальном времени с приемлемой для музыканта точностью. Периодически, таймер срабатывает значительно позже нужного момента времени.

Այս խնդիրը IronTick-ում լուծվում է շատ պարզ՝ այն սինթեզում է անընդհատ PCM աուդիո նմուշների հոսքը, որտեղ դրված են ծեծերի ձայները մանրակրկիտ անհրաժեշտ վայրերում: Արդյունքը անընդհատ խաղում է ձայնային քարտով, ինչպես ցանկացած աուդիո հոսք, օրինակ՝ երգը աուդիո նվագարկիչում: Արդյոք ձեր երգը նվագարկչում երբեք պոպոխություն չի ունենում հաղթահարեք այն, ինչ ծրագիր է առաջին, և ինչ բ yük: Вот и метроном, работающий по такому принципу, щелкает так же стабильно как аудио плеер воспроизводит трек. Для этого ему не нужен неточный таймер.

Երկրորդ խնդիրը, արդեն պակաս կարևոր՝ երբեք անհարմար է փոխել տեմպը, առանց гитառը ձեռքերից բացելու: Ուստի, IronTick-ում կատարել են ստեղնաշարային կառավարում մեկ ստեղնով (հանգախ մեկ, չեն անհրաժեշտ «համաչափեր») հիմնական ֆունկցիաների համար: Այդպես, ստեղծվել է կարգավորվող տեմպի բարձրացման/վերացման քայլ: Ես օգտագործում եմ այսպես՝ սկսում եմ աշխատել հավասարության հետ համանման տեմպով, օրինակ՝ 120 bpm, և ժամանակ առ ժամանակ սեղմում եմ J ստեղնը բարձրացնել bpm ի 5 միավորը: Ապա ևս 5, և այդպես շարունակ: Կարող եք սահմանել ցանկացած քայլ: Մի կոճակ սեղմելը պարզ է, առանց медиатора ձեռքերում կորցնելու.

Հաշվետվություններ

Օբյեկտի թողարկման շրջանակներում պատրաստված է AppImage.

Ծրագիրը գրված է C++ լեզվով, լիցենզիան՝ GPL 3.0 կամ ավելի նոր:

Ընտանիք: linux.org.ru

Գնել հուսալի հյուրընկալում DDoS պաշտպանությամբ, VPS VDS սերվերներով 🔥 Գնել հուսալի հյուրընկալում DDoS պաշտպանությամբ, VPS VDS սերվերներով | ProHoster