Utilizzo dell'interfaccia JSON per ricevere notifiche e inviare comandi a Dragonframe tramite UDP.
L'interfaccia JSON è un protocollo basato su UDP in Dragonframe, che utilizza il formato JSON per i messaggi.
È possibile inviare comandi a Dragonframe e ricevere notifiche da esso. Può essere un utile punto di integrazione per utilizzare Dragonframe con altri dispositivi o applicazioni. Dopo aver creato un dispositivo che invia/riceve questi messaggi, usa il file del programma Scena | Connessioni e aggiungi una connessione di tipo JSON. Nota: la funzione facoltativa "Visualizza aggiornamenti frame" può essere attivata con command = "viewFrameUpdates". Questo indica a Dragonframe di inviare un messaggio 'viewFrame' ogni volta che l'utente passa a un frame diverso. Forniamo un'applicazione Qt di esempio che implementa questa interfaccia. Potete trovare il progetto JSON di esempio qui. Devi compilarlo con Qt 5.3 o successivo.
Messaggi per controllare Dragonframe
Sparare{ "command" : "shoot", "frames" : 1 } Elimina{ "comando" : "cancella" } Riproduci/Interrompi{ "comando" : "riproduci" } Vai a Vivere{ "comando" : "live" } Muto{ "comando" : "muto" } Passa a Riproduci in nero{ "comando" : "nero" } Attiva / disattiva loop{ "comando" : "loop" } Opacità giù{ "comando" : "opacitàGiù" } Opacità su{ "comando" : "opacityUp" } Passo in avanti{ "comando" : "passoAvanti" } Passo indietro{ "command" : "stepBackward" } Gioco breve{ "comando" : "shortPlay" } Attiva/disattiva live (premere){ "comando" : "liveToggle", "stato" : "premuto" } Attiva/disattiva live (rilascio){ "command" : "liveToggle", "state" : "released" } Commutazione automatica{ "comando" : "commutazione automatica" } Attiva/disattiva alta risoluzione/assistenza video{ "command" : "highResToggle" } Imposta gli aggiornamenti della cornice della vista{ "comando" : "viewFrameUpdates", "attivo" : vero|falso }
Messaggi da Dragonframe
Cornice di tiro{ "event" : "shoot", "production" : "[PRODUCTION]", "scene" : "[SCENE]", "take" : "[TAKE]", "frame" : [FRAME], "exposure" : [ESPOSIZIONE], "esposizione" : "[NOME ESPOSIZIONE]", "indice stereo" : [INDICE] } Cancellazione cornice{ "event" : "delete", "production" : "[PRODUCTION]", "scene" : "[SCENE]", "take" : "[TAKE]" } Posizione cornice (Sposta su cornice){ "event" : "position", "production" : "[PRODUCTION]", "scene" : "[SCENE]", "take" : "[TAKE]", "frame" : [FRAME], "mocoFrame" : [MOCO FRAME], "esposizione" : [ESPOSIZIONE], "esposizione" : "[NOME ESPOSIZIONE]", "stereoIndex" : [INDICE] } Cattura completata{ "event" : "captureComplete", "production" : "[PRODUCTION]", "scene" : "[SCENE]", "take" : "[TAKE]", "frame" : [FRAME], "exposure" : [ESPOSIZIONE], "esposizione" : "[NOME ESPOSIZIONE]", "stereoIndex" : [INDICE], "imageFileName" : "[NOME FILE IMMAGINE]" } Cornice completa{ "event" : "frameComplete", "production" : "[PRODUCTION]", "scene" : "[SCENE]", "take" : "[TAKE]", "frame" : [FRAME], "exposure" : [ESPOSIZIONE], "esposizione" : "[NOME ESPOSIZIONE]", "stereoIndex" : [INDICE], "imageFileName" : "[NOME FILE IMMAGINE]" } Visualizza cornice{ "event" : "viewFrame", "frame" : [FRAME], "exposure" : [EXPOSURE] }