Project Logical Editor – podmínky - Nedostatky maker v Cubase
V minulém dílu jsme se bavili o makrech a naznačil jsme něco o Project Logical Editoru (PLE). Pojďme se tedy na něj podívat.
Jedná se o jakýsi malý programovací/skriptovací jazyk uvnitř Cubase, pomocí kterého můžeme vytvářet akce typu: Jestliže data jsou/obsahují „něco”, proveď s daty „něco”. Tyto akce lze samozřejmě ukládat jako vlastní přednastavení a těm pak přiřadit i vlastní klávesovou zkratku. Danou akcí (proveď něco) může být třeba i naše makro. Podobný koncept je v Cubase i pro samotná MIDI data, a to v podobě Logical Editor (bez Project), anebo v podobě Input MIDI Transformer. Na ty se podíváme později.
Po otevření okna PLE se zobrazí dvě tabulky. V horní části nastavujeme podmínku (Filter Condition), tedy definujeme, jaké objekty chceme vybrat, s jakými objekty budeme pracovat. A ve spodní části nastavíme, co chceme s těmito objekty provádět (Action List).
Horní sekce Filter Condition je rozdělena do pěti sloupců: Filter Target (zdroj filtru), Condition (podmínka), Parameter 1, Parameter 2 (parametry 1 a 2) a Bar Range / Time Base (rozsah taktů/čas). Okolo pak máme závorky a poslední sloupec bool (logický datový typ).
Nejjednodušší bude, když si ukážeme několik příkladů. (Píšu vždy v syntaxi Filter Target | Condition | Parameter 1 | (Parameter 2, pokud je potřeba) | (Bar Range/Time Base, pokud je potřeba) | (bool, pokud je potřeba)).
Tedy první příklad: Media Type Is | Equal | Audio. Touto podmínkou bychom v projektu vybrali všechna zvuková média (tedy zvukové události - Audio Eventy, Audio Party, ale i Audio Stopy).
Uděláme malou změnu: Media Type Is | Unequal | Audio. Touto podmínkou vybereme všechna média, která nejsou audio. Tedy vybereme MIDI Party, události složky, arranger události, značky, automatizační data atd.
Půjdeme kousek dál a podíváme se na logické typy - klasicky And (&&, znamená „a”) a Or (||, znamená „nebo”). Díky tomu můžeme vytvářet sofistikovanější podmínky.
Například: Container Type is | Equal | Track | And Media Type is | Equal | Audio | And Name | Contains | Tom. Touto podmínkou vybereme všechny zvukové stopy, jejichž název obsahuje („Contains”, nikoliv přímo je „Equal”) Tom. Tedy vyberou se všechny zvukové stopy jako Tom 1, Tom 2 nebo i Tom2, ale třeba i zvuková stopa Atom (pokud zrovna takovou v projektu máme). Pokud máme v projektu MIDI nebo nástrojovou (Instrument) stopu Tom 1, ta naší podmínkou vybrána nebude. Splněny musí být obě podmínky a druhá podmínka nám říkala, že se má jednat o typ události Audio.
A teď půjdeme na ty závorky (jejda, jejda!). Samozřejmě to funguje stejně jako v jakémkoliv jiném programovacím/skriptovacím jazyku, respektive matematické logické operace. Není tedy od věci si připomenout tabulku true/false (pravda/nepravda):
true && true = true
true && false = false
false && true = false
false && false = false
false || false = false
false || true = true
true || false = true
true || true = true
Jako příklad, který nám poslouží k vysvětlení, použijeme některé z továrních přednastavení, které jsou součástí Cubase. A to konkrétně Examples - Move selected events by 1000 bars: (Container Type Is | Equal | Part | Or Container Type Is | Equal | Event) And Property | Property is set | Event is selected. Této podmínce vyhoví všechny Party (Audio/MIDI) nebo události (Audio), které jsou zároveň vybrané (Event is selected). Kdyby na druhém řádku chyběl konec závorky, nedával by příkaz smysl a nefungoval by, nevybralo by se nikdy nic.
Ještě je potřeba si uvědomit jednu důležitou věc, a to je, jak Cubase všemi daty prochází. Logika je jednoduchá: shora a zleva. Vezme každou jednu událost, vyhodnotí, zda odpovídá podmínce, nebo ne. Pokud ano, provede akci. To může hrát roli třeba ve složkách. Pokud složka samotná odpovídá podmínce a změní stav stop ve složce, budou i stopy podmínkou procházet již ve změněném stavu (typický příklad je třeba nastavení Solo/Mute/Record Enable složky/stop).
Příště se podíváme na spodní část okna, tedy na akce Project Logical Editoru.