Remote control Pixera via TCP

Post Reply
Oliver Kilian
Posts: 28
Joined: Wed Mar 29, 2017 9:51 am
Location: Frankfurt
Contact:

Wed Sep 25, 2019 12:13 pm

Hi there,

here is a quick howto for remote controlling Pixera via TCP:
  1. set API Input to JSON/TCP(dl)
  2. Choose given IP address and Port (my case its 192.168.178.20 Port 1400)
  3. Restart Pixera
  4. Choose one of the commands of the below documentation
  5. Beware of the 0 Indexfor timelines and cues. So timeline 1 is index 0. Remember timeline index before renaming. Cue Index refers to Cue number. Please remember before renaming 
  6. Add the delimiter 0xPX at the end of the command
Example:
 
{"jsonrpc":"2.0", "id":7, "method":"Pixera.Compound.applyCueAtIndexOnTimelineAtIndex", "params":{"cueIndex"0:, "timelineIndex":0}}0xPX
 
Sends Timeline 1 to Cue 1
 
{"jsonrpc":"2.0", "id":8, "method":"Pixera.Compound.setTransportModeOnTimelineAtIndex", "params":{"index":0, "mode":1}}0xPX
 
Will set time line 1 to play
 
Documentation from Pixera_api_examples based on API rev 32b :
 
// The Compound namespace contains functions that represent core Pixera capabilites and can be invoked
// without first gathering supplemental information via the API. This makes it suited for quickly getting
// simple integrations up and running. In addition, systems that only support a unidirectional connection
// can use this namespace to control Pixera without requiring that the user input handles, etc. accessed
// by other means.
// The fact that all functions in this namespace must be "standalone" means that the signatures must include
// more information than the typical class-oriented function in the other namespaces (which is what lead to
// the name "Compound" for this namespace). A consequence of this is that the functionality here can not
// be recombined as flexibly as in the other namespaces. For this reason, all but the very simplest
// integrations should prefer use of the other namespaces. The Compound namespace will _not_ be updated
// to reflect all the expressive possibilities of the other namespaces. Rather, it will always only contain
// a subset of the API functionality focused on the simplest use cases.
namespace Compound
{
   // Sets the transport mode of the timeline at the (zero-based) index in
   // the Timelines listing of the Compositing tab.
   boolean setTransportModeOnTimelineAtIndex(int index,int mode);
    => {"jsonrpc":"2.0", "id":8, "method":"Pixera.Compound.setTransportModeOnTimelineAtIndex", "params":{"index":1, "mode":1}}
    <= {"jsonrpc":"2.0", "id":8, "result":true}
   null startFirstTimeline();
    => {"jsonrpc":"2.0", "id":9, "method":"Pixera.Compound.startFirstTimeline"}
    <= {"jsonrpc":"2.0", "id":9}
   null pauseFirstTimeline();
    => {"jsonrpc":"2.0", "id":10, "method":"Pixera.Compound.pauseFirstTimeline"}
    <= {"jsonrpc":"2.0", "id":10}
   null stopFirstTimeline();
    => {"jsonrpc":"2.0", "id":11, "method":"Pixera.Compound.stopFirstTimeline"}
    <= {"jsonrpc":"2.0", "id":11}
 
   // Set the x position of the first layer of the first timeline.
   // Purely for demonstration, testing purposes.
   null setPosValue(double val);
    => {"jsonrpc":"2.0", "id":12, "method":"Pixera.Compound.setPosValue", "params":{"val":1.0}}
    <= {"jsonrpc":"2.0", "id":12}
 
   // Set the x/y position of the first layer of the first timeline.
   // Purely for demonstration, testing purposes.
   null setPosValueXY(double valX,double valY);
    => {"jsonrpc":"2.0", "id":13, "method":"Pixera.Compound.setPosValueXY", "params":{"valX":1.0, "valY":1.0}}
    <= {"jsonrpc":"2.0", "id":13}
 
   // Triggers the cue at the (zero-based) index in the timeline at the (zero-based) index in
   // the Timelines listing of the Compositing tab.
   null applyCueAtIndexOnTimelineAtIndex(int cueIndex,int timelineIndex);
    => {"jsonrpc":"2.0", "id":14, "method":"Pixera.Compound.applyCueAtIndexOnTimelineAtIndex", "params":{"cueIndex":1, "timelineIndex":1}}
    <= {"jsonrpc":"2.0", "id":14}
}
AV Stumpfl, Wings Sales
HQ Wallern
Post Reply