Protocollo versione 1.2
Introduzione
mimoLive utilizza la tecnologia Quartz Composer di Apple e i suoi documenti per i livelli. Poiché mimoLive deve comunicare al documento Quartz Composer alcuni parametri ambientali e leggerne i risultati, abbiamo progettato un protocollo da seguire per sfruttare tutte le funzionalità offerte da mimoLive. Di seguito sono riportate tutte le informazioni tecniche relative a questo protocollo.
Se si desidera imparare a creare livelli personalizzati con Quartz Composer, leggere "Creare livelli personalizzati per mimoLive":en:pro:custom_layer:creating_custom_layers.
Proprietà
Può modificare il protocollo in Quartz Composer selezionando Editor ⇢ Modifica informazioni (⌥⌘I).
Nome | Richiesto | Tipo | Valore del campione |
---|---|---|---|
categoria | Stringa | ||
copyright | Stringa | © 2016 MySoftwareCompany | |
descrizione | Stringa | Riproduce un input a schermo intero | |
nome | sì | Stringa | Lettore a schermo intero |
DEPRECATO tv_Categorie | Stringa | Sfondo, schermo intero | |
tv_Debug | Booleano | ||
tv_FileData_ nome dell'ingresso | Dati | (file XML importato) | |
tv_FileName_ nome dell'ingresso | Stringa | Classifiche.xml | |
tv_HelpURL | Stringa | ||
tv_HiddenInputKeys | Array di stringhe | ||
tv_InputLabel_ nome dell'ingresso | Stringa | Ingresso video | |
tv_LayerIdentifier | sì | Stringa | com.example.layer.mylayer |
tv_LayerVersion | sì | Numero (reale) | 1.01 |
tv_LayerPreview | Dati | (file PNG importato) | |
tv_LayerProtocolVersion | sì | Numero (reale) | 1 |
tv_SortKey | Stringa | ||
tv_StepSize_ nome dell'ingresso | Numero (reale) | 0.1 | |
DEPRECATO tv_Tagline | Stringa | Riproduce un input a schermo intero | |
tv_UseAudioFromSource | Stringa | tvIn_VideoSourceA | |
tv_UnitLabel_ nome dell'ingresso | Stringa |
categoria
La categoria è solitamente impostata da Quartz composer e non è necessaria per i livelli mimoLive. Per le categorie di mimoLive veda invece tv_Categories.
copyright
Il copyright viene solitamente impostato dal compositore Quartz e non è necessario per i livelli mimoLive.
descrizione
Quartz Composer standard: mantenetelo lungo circa 3 righe, in modo che si adatti bene all'anteprima.
nome
Il nome viene visualizzato all'interno di mimoLive. Utilizzare un nome breve e unico per trovare rapidamente il livello.
protocolli
Questo array viene solitamente impostato dal compositore Quartz e non è necessario per i livelli mimoLive.
tv_Categorie
DEPRECATO
Le categorie venivano utilizzate per raggruppare e filtrare i livelli. Attualmente sono ignorate, ma possono essere riattivate. Utilizzare un elenco separato da virgole delle seguenti categorie predefinite o definirne di proprie.
- Audio" - Livelli che offrono la possibilità di utilizzare una sorgente audio
- "Overlay" - Livelli che sovrappongono dati o immagini: Lower Thirds, Titolo, Logo, ...
- "Schermo intero" - Livelli che, almeno tramite le impostazioni predefinite, offrono uno schermo intero - ad esempio Animazioni, Video singolo, Mappa meteorologica
- "Sfondo" - Livelli che funzionano come sfondo per altri elementi in alto.
- "Testo" - Livelli che offrono un tipo di visualizzazione di testo, ad esempio. Credits, Lower Thirds, Heading
- "Dati" - Livelli che visualizzano dati, ad esempio ticker azionari, punteggi di pallacanestro, ecc.
- "Immagine" - Livelli che forniscono un mezzo di visualizzazione utilizzando un'immagine statica in ingresso
- "Multivideo" - Livelli che combinano almeno due sorgenti, aggiungendo almeno una sorgente oltre ai livelli sottostanti o utilizzando due o più sorgenti.
- "3D" - Livelli che forniscono una sorta di posizionamento 3d degli elementi, ad esempio Presentatore
- "Segmento" - Livelli che forniscono un'animazione temporizzata a segmenti separati, ad esempio Aggiornamento digitale Beitrag
- "Effetto" - Livelli che forniscono alcuni effetti di sovrapposizione, ad esempio Lente d'ingrandimento, Riflettore, Zoom...
- "Demo" - Livelli che hanno principalmente lo scopo di dimostrare le capacità piuttosto che fornire funzionalità utili generiche, ad es.Per esempio, Weather Map, che mostra solo una mappa della Germania.
- "Consumer" - Livelli che utilizzano l'immagine compositedlayers, per esempio Video Switcher, Zoom, Presenter
- "Generator" - Livelli che forniscono una sorta di output generato, per esempio animazioni
- "Debug" - Livelli utili per il debug che non sono visibili nel prodotto finale.
tv_Debug
Indicare all'applicazione che questa composizione deve essere usata solo in un ambiente di debug.
tv_FileData_
Un blob di dati che verrà creato e scritto nel documento per un input di file al momento della creazione del livello. Questo funziona per i file di testo che saranno forniti in un _TypeFilePath o per i file .mov per gli input di immagini. Vedere tv_FileName_.
tv_FileName_
Il nome del file corrispondente all'ingresso tv_FileData_ . Richiesto se esiste un ingresso tv_FileData_*.
tv_HelpURL
Questa stringa può contenere un URL con informazioni utili sull'uso di questo livello. mimoLive presenterà un pulsante "?" nel popover delle informazioni per ogni livello. Se l'utente fa clic su questo pulsante, l'URL verrà aperto dal browser Internet predefinito del sistema.
tv_HiddenInputKeys
In questo array, la composizione contiene le chiavi di input che devono essere nascoste dall'interfaccia utente.
tv_InputLabel_
Può essere utilizzato per fornire un'etichetta di nome alternativa per la chiave di input data nella vista dei parametri. Sono possibili anche stringhe vuote per nessuna etichetta. Funziona come tv_hide_ouput, ad esempio il nome dell'input del protocollo deve essere completo (ad esempio "tv_InputLabel_tvIn_VideoSourceAImage").
tv_LayerIdentifier
Per l'identificazione, Boinx ha spedito composizioni e ordinato diverse versioni. Deve essere unico. Si consiglia un dominio con notazione inversa. Esempio: com.mysoftware.layers.videofullscreen
tv_LayerVersion
Per abbinare versioni diverse di una composizione in un documento/applicazione. I numeri di versione maggiore denotano incompatibilità e non corrispondono ad altre versioni maggiori (ad esempio, è necessario aumentare la versione maggiore se il nome delle chiavi di input cambia). I numeri di versione minori devono essere compatibili verso l'alto e possono essere incrementati di 0,001 per ogni iterazione. Ad esempio, è necessario garantire che il caricamento delle impostazioni da un livello 1.0 per un livello 1.013 abbia esattamente lo stesso aspetto, il che significa che le nuove chiavi, se presenti, devono avere un valore predefinito che non le mostri o che sia uguale all'aspetto della versione precedente.
tv_LayerPreview
Dati immagine da usare per l'anteprima di un livello nell'elenco dei livelli. Questo può offrire un'esperienza migliore rispetto all'anteprima rapida predefinita. L'immagine di anteprima deve essere di 256 × 256 pixel.
tv_LayerProtocolVersion
Per la futura retrocompatibilità se mimoLive cambia il protocollo in modo significativo. Attualmente deve essere impostato su 1.
tv_SortKey
Definisce l'ordinamento dei livelli in mimoLive. In questo modo è possibile ordinare i filtri in base alla probabilità di utilizzo. Attualmente viene utilizzato uno schema di 2 lettere maiuscole, ad esempio "BM", "DE", "DM", ecc. NOTA: attualmente questa funzione non è utilizzata, ma lo sarà in futuro.
tv_StepSize_
Può essere utilizzato per fornire uno StepSize personalizzato per le rotelle jog - il movimento del mouse di un pixel corrisponde a questa quantità di cambiamento (anche +/-click).
tv_Tagline
DEPRECATO
Stringa di una riga che sarà visualizzata nel popover delle informazioni nel repository dei livelli.
tv_UseAudioFromSource
Attualmente mimoLive può mostrare un solo controllo audio nell'interfaccia utente. Questa proprietà indica il tasto di ingresso da controllare. Inserire il tasto di ingresso completo corrispondente. (Per compatibilità questo campo accetta anche "A", "B" o "C", che vengono tradotti nelle chiavi tvIn_VideoSourceAImage, tvIn_VideoSourceBImage o tvIn_VideoSourceCImage. Se non viene fornito, mimoLive presume che non venga utilizzato alcun audio con questo livello.
tv_UnitLabel_
Può essere utilizzato per fornire un'etichetta unitaria, ad esempio "pt", per il tasto di input dato nella vista dei parametri. Mantenere il più breve possibile. Aiuta a comunicare il significato dell'input. Gli input dell'unità Boinx riceveranno automaticamente l'etichetta "px".
Ingressi
Nome | Tipo |
---|---|
tvIn_AccountTwitterConsumerKey | Stringa |
tvIn_AccountTwitterConsumerSecret | Stringa |
tvIn_AccountTwitterTokenKey | Stringa |
tvIn_AccountTwitterTokenSecret | Stringa |
tvIn_CompositedLayersImage | Immagine |
tvIn_FrameCount | Indice |
tvIn_FrameDuration | Numero |
tvIn_CompositedLayersImage | Immagine |
tvIn_InTransitionDirection | Indice Direzione di transizione Direzione |
tvIn_InTransitionDuration | Numero |
tvIn_InTransitionType | Indice Tipo di transizione Tipo |
tvIn_KeyboardModifierAlt | Booleano |
tvIn_KeyboardModifierCommand | Booleano |
tvIn_KeyboardModifierControl | Booleano |
tvIn_KeyboardModifierFunction | Booleano |
tvIn_KeyboardModifierShift | Booleano |
tvIn_Oscurato | Booleano |
tvIn_OnAir | Booleano |
tvIn_OSVersion | Stringa |
tvIn_OutTransitionDirection | Indice Direzione di transizione Direzione |
tvIn_OutTransitionDuration | Numero |
tvIn_OutTransitionType | Indice Tipo di transizione Tipo |
tvIn_PreviewMode | Booleano |
tvIn_Reset | Booleano (segnale) |
tvIn_RuntimeIdentifier | Stringa |
tvIn_condiviso | qualsiasi tipo di valore |
tvIn_ShowDuration | Numero |
tvIn_ShowTimer | Numero |
tvIn_Switch | Booleano (segnale) |
tvIn_TransitionDirection | Indice Direzione di transizione Direzione |
tvIn_TransitionDuration | Numero |
tvIn_TransitionType | Indice Tipo di transizione Tipo |
tvIn_UISnapColor | Colore |
tvIn_VideoSourceA B C D | Immagine |
tvIn_AccountTwitterConsumerKey
tvIn_AccountTwitterConsumerSecret
tvIn_AccountTwitterTokenKey
tvIn_AccountTwitterTokenSecret
Questi quattro input AccountTwitter sono usati per alimentare i dati di accesso dalle Preferenze account Twitter di mimoLive nella composizione. I valori sono usati con le patch JSON e OAuth per leggere i dati dal servizio Twitter.
tvIn_CompositedLayersImage
Se questo ingresso è presente in una composizione e c'è del contenuto dai livelli sottostanti, il risultato del disegno dei livelli sottostanti verrà inserito in questo ingresso.
tvIn_FrameCount
Questo input otterrà il conteggio totale dei fotogrammi renderizzati dopo l'avvio di mimoLive. Se i fotogrammi sono stati eliminati perché il carico di rendering è troppo alto, il conteggio dei fotogrammi salterà oltre i numeri dei fotogrammi eliminati.
tvIn_FrameDuration
La durata del fotogramma è l'intervallo di tempo tra ciascun rendering, espresso in secondi.
tvIn_InTransitionDirection
Una direzione in cui verrà eseguita la Direzione di transizione.
tvIn_InTransitionDuration
Un valore in secondi in cui verrà eseguito il tvIn_InTransitionType.
tvIn_InTransitionType
Se utile per un livello che consente all'utente di scegliere il tipo di transizione in corso. Vedere anche Tipo di transizione Tipo.
tvIn_KeyboardModifierAlt
tvIn_KeyboardModifierCommand
tvIn_KeyboardModifierControl
tvIn_KeyboardModifierFunction
tvIn_KeyboardModifierShift
Questi campi di input booleani saranno impostati su true quando l'utente premerà il tasto di modifica corrispondente sulla tastiera. Questa funzione è utilizzata principalmente per la funzione di manipolazione diretta. Consultare le Linee guida per l'utente umano di Apple per vedere quale tasto modificatore deve essere usato per quale funzione nell'interfaccia utente.
tvIn_Oscurato
Questo input è impostato su true se il livello non ha bisogno di renderizzare alcun output perché un livello superiore lo oscurerà comunque disegnando l'intero schermo. Questo può essere usato per evitare un disegno pesante da parte di livelli che non sono visibili ma che sono impostati per essere attivi. (Ad esempio, nel caso del livello Twitter, il livello viene comunque richiamato anche quando è oscurato da un altro livello sovrastante e ha la possibilità di mantenere la connessione Internet al servizio Twitter).
tvIn_OnAir
Questo ingresso inizia con il valore "true". Una volta che l'input passa a "false", la composizione deve eseguire qualsiasi transizione in uscita, quindi impostare l'uscita Done al termine. La composizione sarà quindi disattivata. Può accadere che l'applicazione disattivi un livello senza attendere il flag done.
tvIn_OSVersion
Questa stringa di input sarà impostata sulla versione corrente di OS X (ad esempio, "Versione 10.11.2 (Build 265341)").
tvIn_OutTransitionDirection
Verrà eseguito un valore in secondi del tvIn_OutTransitionType. Inoltre, vedere Direzione della transizione.
tvIn_OutTransitionDuration
Verrà eseguito un valore in secondi del tvIn_OutTransitionType.
tvIn_OutTransitionType
Se utile per un livello che consente all'utente di scegliere il tipo di transizione in corso. Vedere anche Tipo di transizione Tipo.
tvIn_PreviewMode
Può essere utilizzato per indicare alla composizione che si trova in modalità anteprima.
tvIn_Reset
Utile per resettare la Logica della Composizione. Questo flag viene impostato quando un livello viene commutato in live da off o quando si passa da un'impostazione all'altra e non è disponibile alcun ingresso tvIn_Switch.
tvIn_RuntimeIdentifier
Aiuta i livelli a comunicare tra l'anteprima e l'istanza live. Impostato dinamicamente da mimoLive.
tvIn_condiviso
Vedere Condivisione di valori tra livelli Valori tra livelli.
tvIn_ShowDuration
Se l'utente ha compilato la durata dello spettacolo nelle Impostazioni spettacolo, questo input avrà il valore in secondi.
tvIn_ShowTimer
Il timer di visualizzazione rifletterà la visualizzazione del timer di visualizzazione del documento mimoLive in secondi.
tvIn_Switch
Questo flag viene impostato al posto di tvIn_Reset]] quando un livello viene commutato da un'impostazione all'altra senza disabilitare il livello. Nel caso in cui questo ingresso non esista, il [[#tvIn_Reset quando un livello viene commutato da un'impostazione all'altra senza disabilitare il livello. Nel caso in cui questo ingresso non esista, il [[#tvIn_Reset viene impostato al suo posto per mantenere la compatibilità con i livelli più vecchi.
tvIn_TransitionDirection
Una direzione in cui verrà eseguita la direzione di transizione.
tvIn_TransitionDuration
Verrà eseguito un valore in secondi del tvIn_InTransitionType.
tvIn_TransitionType
Se utile per un livello che consente all'utente di scegliere il tipo di transizione in corso. Vedere anche Tipo di transizione Tipo.
tvIn_UISnapColor
Per mantenere l'interfaccia utente coerente, mimoLive fornisce un "colore di snap" in cui disegnare le linee guida nell'anteprima ogni volta che l'interfaccia utente si sposta su un determinato valore (ad esempio, tenendo premuto il tasto "shift" durante la rotazione di un livello Placer in modalità di visualizzazione personalizzata, le linee guida verranno disegnate in quel colore quando l'angolo di rotazione si sposta a 0, 45 o 90 gradi).
tvIn_VideoSource
Un livello può avere fino a 8 ingressi di sorgenti video dinamiche: "A", "B", "C" e così via. Saranno rappresentati da una zona di caduta se l'utente trascina una sorgente video dal repository delle sorgenti allo stack del livello. //Nota: per compatibilità con le versioni precedenti, l'estensione "Image" di questi ingressi viene ignorata.//
Opzioni di ingresso
Tasti di ingresso corrispondenti
Se è presente un tasto di ingresso video, anche i tasti di ingresso successivi vengono riempiti di informazioni:
(ad esempio "tvIn_VideoSourceA" -> "tvIn_VideoSourceAName")
Chiave | Tipo | Descrizione |
---|---|---|
AudioGain | Numero | TBD |
Livello audio0 | Numero | Livello del canale audio sinistro in db dopo il controllo del guadagno |
Livello audio1 | Numero | Livello del canale audio destro in db dopo il controllo del guadagno |
Livello audio0Raw | Numero | Livello del canale audio sinistro in db prima del controllo del guadagno |
AudioLevel1Raw | Numero | Livello del canale audio destro in db prima del controllo del guadagno |
AudioPanning | Numero | TBD |
Volume audio | Numero | TBD |
Dati | Struttura | Un dizionario di metadati della sorgente. Attualmente, le chiavi implementate sono: "index" "duration" "title" "titleFallback" "artist" "album" "year" "fileReferenceIdentifier" |
Nome | Stringa | Nome dell'origine immagine associata. Può essere usato per visualizzare il nome nell'anteprima o per calcolare il nome predefinito per la variante di livello. Vedere tvOut_SettingName . |
Tempo rimanente | Numero | In secondi. Verrà fornito per le sorgenti di filmati. -1 se la sorgente filmato è in loop (o qualsiasi altra sorgente). |
Stato di conteggio | Indice | Stato del conteggio della sorgente collegata, vedere Conteggio degli Stati Stati |
Tipo | Indice | Valore di tipo di fonte tipo |
Raggruppamento degli ingressi
Il raggruppamento viene fornito nell'interfaccia utente - per questo è importante il prefisso dell'input. La sintassi funziona come tvGroup___. Noti il doppio trattino basso _ _ dopo il nome del gruppo come separatore dal nome dell'input.
Viene definito un gruppo speciale per gli ingressi che devono essere sempre nascosti: tvGroup_Hidden_Inputs__ Questo gruppo può essere reso visibile attivando la modalità debug di mimoLive nel menu debug|Preferenze debug|Preferenze debug. Alcuni livelli utilizzano questi campi nascosti per comunicare tra l'"istanza Anteprima" e l'"istanza Live" (ad esempio, il livello Video Switcher comunica all'istanza Anteprima quale sorgente video è attualmente live).
Nascondere gli ingressi in modo dinamico
Ogni ingresso del protocollo sarà nascosto nell'interfaccia utente se l'uscita tvOut_hide_ è impostata su "true". Questo valore viene osservato dall'applicazione e può essere modificato dinamicamente. Si noti che deve utilizzare il nome completo dell'ingresso, compreso "tvIn" (ad esempio, utilizzi l'uscita tvOut_hide_tvIn_Text_TypeMultiline per l'ingresso tvIn_Text_TypeMultiline).
Uscite
Nome | Tipo |
---|---|
tvOut_Cursor | Stringa |
tvOut_Done | Booleano (segnale) |
tvOut_hide_ | Booleano |
tvOut_Opaque | Booleano |
tvOut_SettingName | Stringa |
tvOut_Share_ | qualsiasi tipo |
tvOut_TimeRemaining | Numero |
tvOut_UseCompositedLayersImage | Booleano |
tvOut_TallyState | Indice di Conteggio degli Stati Stati |
tvSet_ | Tipo di ingresso da impostare |
tvSetSignal_ | Booleano |
tvSetAudioVolume_ | Numero |
tvSetAudioVolumeSegnale_ | Booleano |
tvOut_Cursor
Questa uscita specifica l'aspetto del cursore del mouse se il puntatore del mouse si trova sopra l'anteprima o la vista di output del programma. Faccia riferimento a Documentazione della classe NSCursor di Apple) per i valori validi. Altri cursori del mouse forniti da mimoLive sono "meno" e "più".
Rimuovere il prefisso "_Cursor" o "Cursor" dalle costanti NSCursor di Apple (ad esempio, usare "openHand" per ottenere un cursore del mouse a mano aperta).
tvOut_Done
Utilizzato per dire al livello successivo che questo livello è terminato. Per la documentazione, veda tvIn_OnAir.
tvOut_hide_
Può essere utilizzato per nascondere dinamicamente i valori di input nella vista dei parametri. Vedere Nascondere dinamicamente gli input.
tvOut_Opaque
Utilizzato per indicare all'applicazione che i livelli inferiori a questo non devono essere disegnati. Valore predefinito "false". Questo valore viene sovrascritto da qualsiasi sorgente collegata che contenga alfa.
tvOut_SettingName
Le composizioni possono suggerire un nome utile per un'ambientazione in base ad alcuni input.
tvOut_Share_
Vedere Condivisione di valori tra livelli.
tvOut_TimeRemaining
Consente all'applicazione di visualizzare un grande conto alla rovescia (ad esempio, 5 secondi prima della fine di un filmato). Attualmente si usa "-1" per indicare che non ci sono informazioni sul tempo rimanente o "-2" se si tratta di un filmato in loop.
tvOut_UseCompositedLayersImage
Utilizzato per ottimizzare le prestazioni quando si utilizzano i livelli sottostanti con le transizioni, ecc. Indica all'applicazione che il livello attualmente ha bisogno dell'input dell'immagine dei livelli composti. mimoLive inserirà i livelli sotto l'immagine composta nel ciclo di rendering successivo. Se "tvOut_UseCompositedLayersImage" non è presente, mimoLive presume che i livelli sotto l'immagine debbano essere sempre inseriti. Si tratta solo di un'ottimizzazione del disegno, tutti i media saranno comunque arrotolati. Utilizzato solo se tvIn_CompositedLayersImage è presente.
tvOut_TallyState
Questo livello di uscita può sovrascrivere lo stato di conteggio automatico della sorgente attualmente collegata a quell'ingresso. Questo è utile per le transizioni o se la sorgente non viene utilizzata per l'uscita, lo stato di tally può essere disattivato (ad esempio, il Video Switcher utilizza 3 telecamere ma ne mostra solo una alla volta, quindi deve impostare lo stato di tally per le sorgenti non utilizzate su "TVTallyStateOff"). Per l'elenco degli stati di tally, consulti Stati di tally.
tvSet_
In mimoLive, un livello o un filtro può manipolare i propri parametri. Questo serve principalmente per implementare la funzione di manipolazione diretta nell'anteprima della variante del livello (ad esempio, se l'utente trascina l'orologio analogico nell'anteprima, il livello dice a mimoLive quali tasti di ingresso devono essere cambiati in quale valore. Tuttavia, questa funzione viene utilizzata anche per trasferire dati live dall'istanza di program out all'istanza di preview e viceversa (ad esempio, nel livello Video Switcher l'istanza di program out dice all'istanza di preview quale sorgente video è attualmente live e l'istanza di preview può dire all'istanza di program out quale sorgente video è stata selezionata dall'utente sullo schermo).
Per utilizzare questa funzione sono necessarie due uscite che corrispondono al campo di ingresso che si desidera manipolare: Con 'tvSet_' si emette il nuovo valore che si vuole impostare e con 'tvSetSignal_' si segnala quando il valore è valido e deve essere memorizzato.
tvSetSignal_
Vedere tvSet_.
tvSetAudioVolume_
Questa uscita controlla il volume della sorgente audio associata (o dell'audio di una sorgente video). I valori validi sono da 0=silenzioso a 1=pieno. la composizione deve impostare il corrispondente "tvSetAudioVolumeSignal_" ogni volta che vuole cambiare il livello del volume audio. Ad esempio, è utile se il livello ha una transizione in dissolvenza e vuole anche l'audio in dissolvenza.
tvSetAudioVolumeSegnale_
Vedere tvSetAudioVolume_.
Condivisione dei valori tra i livelli
Un livello può inviare dati ad altri livelli dello stack di livelli che si trovano sopra di lui. I dati vengono memorizzati da mimolive tramite la sua chiave di condivisione fino al ciclo di rendering successivo. Se un livello viene usato più volte (o la stessa chiave di condivisione viene usata in livelli diversi) i dati vengono sovrascritti dal livello superiore. Per impostare i dati di condivisione, utilizzare l'uscita "tvOut_Share_". È possibile memorizzare qualsiasi tipo di dati di QuartzComposer, ma si consiglia di utilizzare una struct perché è sufficiente un'uscita per più valori. Sul lato del livello ricevente, è necessario un ingresso corrispondente "tvIn_Shared_" con lo stesso tipo di dati. Si noti che il livello di ricezione deve trovarsi sopra il livello di invio nella pila dei livelli.
La condivisione dei valori è utile se si ha bisogno degli stessi dati in più livelli (ad esempio, il nome dell'avversario di casa e di quello ospite in una partita).
Definizioni dei tipi (alias convenzioni di denominazione)
Chiave | Tipo | Descrizione |
---|---|---|
*_TypeAudio | Immagine | Si tratta di un caso molto particolare: Un _TypeAudio può assegnare solo sorgenti che contengono audio (ad esempio sorgenti di film, sorgenti video o sorgenti solo audio). Il livello avrà il controllo su questa sorgente (in futuro) e sui valori del volume audio per i canali destro e sinistro tramite gli ingressi "_TypeAudioAudioLevel0" e "_TypeAudioAudioLevel1". |
*_TipoBoinxX | Numero | Un numero inserito nelle coordinate X di Boinx, ad esempio -1 è il primo pixel, 1 è l'ultimo pixel delle dimensioni correnti dello schermo. sarà presentato all'utente in pixel |
*_TipoBoinxY | Numero | Un numero immesso in coordinate Boinx Y, ad esempio -1 è il pixel inferiore, 1 è il pixel superiore delle dimensioni correnti dello schermo. sarà presentato all'utente in pixel |
*_TypeDirectoryPath | Stringa | Il risultato è un pulsante "Scegli..." nell'interfaccia utente, magari con la visualizzazione di un controllo di percorso. |
*_TipoDurata | Numero | Tempo in secondi - sarà visualizzato in minuti:secondi e può avere un'interfaccia utente personalizzata. |
*_TypeFilePath | Stringa | Il risultato è un pulsante "Scegli..." nell'interfaccia utente, magari con la visualizzazione di un controllo di percorso. |
*_TypeFontBoinxSize | Stringa | Dimensione del carattere in coordinate Boinx Y (ad esempio, 2 è l'altezza dello schermo intero), vedere la nota seguente |
*_TypeFontColor | Colore | Immissione regolare del colore per specificare il colore del testo, vedere la nota seguente |
*_TypeFontName | Stringa | Si otterrà così un selezionatore di caratteri, vedi nota seguente |
*_TipoMultilinea | Stringa | Un campo di testo multilinea che consente l'inserimento del ritorno |
*_TipoPassword | Stringa | Visualizza una casella di testo per la password. Importante: la password stessa è memorizzata in testo normale e leggibile nel documento! |
*_TipoSegnale | Booleano | Per un segnale pulsato a fotogramma singolo, utilizzare le patch Pulse o Watcher. |
I campi _TypeFontName, _TypeFontBoinxSize e _TypeFontColor vengono combinati in un unico elemento dell'interfaccia utente Font Chooser nella vista dei parametri dei livelli se hanno la stessa etichetta di base.
Modelli di filtro
Questi input e proprietà sono specifici per la creazione di una composizione Quartz da utilizzare come filtro immagine in mimoLive. La maggior parte delle definizioni precedenti si applicano anche ai filtri.
Ingressi del filtro
I seguenti campi di input sono richiesti da Quartz Composer per la composizione di un filtro:
Nome | Tipo | Descrizione |
---|---|---|
_protocolInput_PreviewMode | Bool | Può essere utilizzato per indicare alla composizione che si trova in modalità anteprima. |
_protocolloInput_X | Numero | è sempre 0. |
_protocolloInput_Y | Numero | è sempre 0. |
Proprietà del filtro
Le seguenti proprietà sono definite da mimoLive. tv_FilterIdentifier e tv_FilterVersion sono necessarie per gestire il filtro e il suo percorso di aggiornamento con le nuove versioni:
Nome | Tipo | Valore del campione | Descrizione |
---|---|---|---|
tv_FilterIdentifier | Stringa | com.boinx.mimoLive.layer.placer | Per l'identificazione, Boinx ha spedito composizioni e ordinato diverse versioni |
tv_FilterVersion | Numero (doppio) | 1 | Per far corrispondere versioni diverse di una composizione in un documento/applicazione. I numeri di versione maggiore denotano incompatibilità e non corrispondono ad altre versioni maggiori. I numeri di versione minori devono essere compatibili verso l'alto e aumentano di 0,001 a ogni iterazione. Ad esempio, è necessario garantire che il caricamento delle impostazioni da un livello 1.0 per un livello 1.013 abbia lo stesso aspetto, il che significa che le nuove chiavi, se presenti, devono avere un valore predefinito che non le mostri o che sia uguale all'aspetto della versione precedente. |
tv_FilterOutputIsOpaque | BOOL | Determina se l'uscita di un filtro è opaca. L'impostazione predefinita è NO |
Enumerazioni
Il tipo Quartz Composer Index consente di creare indici denominati. Possono essere modificati nell'Editor di Quartz Composer aggiungendo uno splitter di ingresso in modalità indice.
Tipo di fonte
La fonte sarà uno dei seguenti valori
- 0 - Immagine
- 1 - Filmato, un filmato avrà un tempo residuo
- 2 - Fotocamera, potrebbe anche essere una composizione
Direzione di transizione
È possibile definire le proprie direzioni. I livelli spediti utilizzano i seguenti valori.
- Nessuno
- Sinistra
- Destra
- Su
- Giù
Tipo di transizione
È possibile definire i propri tipi di transizione. Ecco alcuni utili valori di esempio.
- Sciogliere
- Asciugare
Conteggio degli Stati
Sono stati definiti diversi Stati Tally per le sorgenti video, che saranno rappresentati nell'interfaccia utente e nell'applicazione companion Tally Light.
- 0 = TVTallyStateOff
- 10 = TVTallyStateInUse
- 20 = TVTallyStatePreview
- 30 = TVTallyStateEffect
- 40 = TVTallyStateProgram.