Die JSON-Schnittstelle ist ein UDP-basiertes Protokoll in Dragonframe, das das JSON-Format für Nachrichten verwendet.
Sie können Befehle an Dragonframe senden und Benachrichtigungen davon erhalten. Es kann ein nützlicher Integrationspunkt für die Verwendung von Dragonframe mit anderen Geräten oder Anwendungen sein. Nachdem Sie ein Gerät erstellt haben, das diese Nachrichten sendet/empfängt, verwenden Sie das Programm Szene | Verbindungen und fügen Sie eine Verbindung vom Typ hinzu JSON. Hinweis: Die optionale Funktion „View Frame Updates“ kann mit command = „viewFrameUpdates“ aktiviert werden. Dies weist Dragonframe an, jedes Mal, wenn der Benutzer zu einem anderen Frame umschaltet, eine 'viewFrame'-Nachricht zu senden. Wir stellen eine Qt-Beispielanwendung bereit, die diese Schnittstelle implementiert. Sie können finden das Beispiel-JSON-Projekt hier. Sie müssen es mit Qt 5.3 oder neuer kompilieren.
Nachrichten zur Steuerung von Dragonframe
Schießen{ "Befehl" : "Aufnahme", "Frames" : 1 } Löschen{ "Befehl": "Löschen" } Abspielen/Stopp{ "Befehl": "Spielen" } Gehen Sie zu Live{ "Befehl": "Live" } Stumm{ "Befehl": "stumm" } Schalten Sie Wiedergabe auf Schwarz um{ "Befehl": "schwarz" } Schleife umschalten{ "Befehl": "Schleife" } Deckkraft nach unten{ "Befehl" : "opacityDown" } Deckkraft nach oben{ "Befehl" : "opacityUp" } Schritt vorwärts{ "command" : "stepForward" } Schritt zurück{ "command" : "stepBackward" } Kurzes Spiel{ "Befehl": "shortPlay" } Live umschalten (drücken){ "Befehl" : "liveToggle", "state" : "gedrückt" } Live-Toggle (Veröffentlichung){ "Befehl" : "liveToggle", "state" : "freigegeben" } Automatisch umschalten{ "Befehl" : "autoToggle" } High-Res/Video-Assist umschalten{ "Befehl": "highResToggle" } Stellen Sie Aktualisierungen des Ansichtsrahmens ein{ "Befehl" : "viewFrameUpdates", "aktiv" : wahr|falsch }
Nachrichten von Dragonframe
Aufnahmerahmen{ „event“ : „shooting“, „production“ : „[PRODUCTION]“, „scene“ : „[SCENE]“, „take“ : „[TAKE]“, „frame“ : [FRAME], „exposure“ : [BELICHTUNG], "Belichtung" : "[BELICHTUNGSNAME]", "stereoIndex" : [INDEX] } Rahmen löschen{ „event“ : „delete“, „production“ : „[PRODUCTION]“, „scene“ : „[SCENE]“, „take“ : „[TAKE]“ } Rahmen positionieren (Zum Rahmen verschieben){ „event“ : „position“, „production“ : „[PRODUCTION]“, „scene“ : „[SCENE]“, „take“ : „[TAKE]“, „frame“ : [FRAME], „mocoFrame“ : [MOCO FRAME], „Belichtung“ : [BELICHTUNG], „Belichtung“ : „[BELICHTUNGSNAME]“, „stereoIndex“ : [INDEX] } Erfassung abgeschlossen{ „event“ : „captureComplete“, „production“ : „[PRODUCTION]“, „scene“ : „[SCENE]“, „take“ : „[TAKE]“, „frame“ : [FRAME], „exposure“ : [BELICHTUNG], "Belichtung" : "[BELICHTUNGSNAME]", "stereoIndex" : [INDEX], "Bilddateiname" : "[NAME DER BILDDATEI]" } Rahmen komplett{ „event“ : „frameComplete“, „production“ : „[PRODUCTION]“, „scene“ : „[SCENE]“, „take“ : „[TAKE]“, „frame“ : [FRAME], „exposure“ : [BELICHTUNG], "Belichtung" : "[BELICHTUNGSNAME]", "stereoIndex" : [INDEX], "Bilddateiname" : "[NAME DER BILDDATEI]" } Rahmen anzeigen{ „Ereignis“ : „ViewFrame“, „Frame“ : [FRAME], „Belichtung“ : [BELICHTUNG] }