Skip to content

Commit

Permalink
ImproveHelp (game-stop#76 wip) : vj-HOWTO.md progress
Browse files Browse the repository at this point in the history
* todo sayVIMS --> end
* fix minor in VIMS.txt accordingly
  • Loading branch information
d-j-a-y committed Jun 15, 2019
1 parent 573a509 commit f5ae116
Show file tree
Hide file tree
Showing 2 changed files with 266 additions and 299 deletions.
63 changes: 32 additions & 31 deletions veejay-current/veejay-server/doc/VIMS.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@
1. VIMS is Veejay's IMS (Internal Message System)
=================================================

All control data is distributed via VIMS. Each (atomical) message consists of an Action Identifier
All control data is distributed via VIMS. Each (atomical) message consists of an Action Identifier
and a list of zero or more Arguments which can be used to control Video Clips, Video Streams,
the Effect Chain and many other things.

VIMS allows events to be triggered through:

SDL Keyboard Event (libsdl)
OSC (OpenSoundControl)
IMP (Internal Message Protocol)
IMP (Internal Message Protocol)


After intalling veejay, you will have a commandline utility 'sayVIMS'
Expand All @@ -27,11 +27,12 @@ how to load an ActionFile, how to use Perl for batch like video processing and h
keyboard events.


Use the command
Use the command

$ veejay -u -n |less
$ veejay -u -n |less

to see documentation generated by veejay on VIMS, using Effects and OSC.

to see documentation generated by veejay on using Effects, VIMS and OSC.
If there is an error in the documentation, you have found a bug in veejay
and should report it :)

Expand All @@ -40,22 +41,22 @@ and should report it :)

A message is described as:

<Action Identifer> : <Argument List> ;
<Action Identifer> : <Argument List> ;

Example:

080:;
099:0 0;
080:;
099:0 0;


<Action Identifier>
The action identifier is a 3 digit number describing a Network Event
The colon is used to indicate the start of the Argument List and must be given.
The colon is used to indicate the start of the Argument List and must be given.


<Argument List>
The Argument List is described by a printf() style formatted template
which describes the number and type of arguments to be used.
The Argument List is described by a printf() style formatted template
which describes the number and type of arguments to be used.

The semicolon must be given to indicate the end of this message

Expand All @@ -72,27 +73,27 @@ There is an example Action File that a number of bundles with keybindings:

$ veejay -v /path/to/video.avi -F test/livecinema/action-file.xml

The bundles can be triggered by the keys SHIFT + [ q,w,e,r,t,y,u,i,o,p,a,s,d,f,g,h,j,k,l,z,x,c,v,b,n,m ]
The bundles can be triggered by the keys SHIFT + [ q,w,e,r,t,y,u,i,o,p,a,s,d,f,g,h,j,k,l,z,x,c,v,b,n,m ]


Structure of bundled message
============================

Example:

5032|BUN:002{361:0 3 56 230 93 0;361:0 4 1 7;}|
5033|BUN:003{361:0 3 56 230 93 0;361:0 4 1 7;361:0 5 1 7;}|
5034|BUN:003{361:0 3 56 230 93 0;361:0 4 1 7;361:0 5 1 8;}|
5032|BUN:002{361:0 3 56 230 93 0;361:0 4 1 7;}|
5033|BUN:003{361:0 3 56 230 93 0;361:0 4 1 7;361:0 5 1 7;}|
5034|BUN:003{361:0 3 56 230 93 0;361:0 4 1 7;361:0 5 1 8;}|


A message bundle is described as:

BUN: <Number of Messages> {
<Action Idenfifier> : <Argument List> ;
<Action Identifier> : <Argument List> ;
...
}
;
BUN: <Number of Messages> {
<Action Idenfifier> : <Argument List> ;
<Action Identifier> : <Argument List> ;
...
}
;


The token 'BUN:' indicates the start of a messaage bundle, the first 3 digit numeric value represents the total number of messages in the bundle. The '{' symbol indicates the start of a message block and is ended with '};' or just '}'.
Expand All @@ -101,40 +102,40 @@ The token 'BUN:' indicates the start of a messaage bundle, the first 3 digit num
1.3 Format of an Action File/Attaching Keys to Bundles
======================================================

<501 - 599> | <message bundle> |
<501 - 599> | <message bundle> |

The contents of some action file can be :

516|BUN:001{355:;}|
516|BUN:001{355:;}|



The message bundle BUN sends '355' for clear effect chain.
The message bundle BUN sends '355' for clear effect chain.
This message bundle is attached to action identifier 516.

A key is attached to this function trough using the GUI (GVeejay)
or by using:
or by using:


DYNAMIC KEYMAPPING:
==================

"083:516 <sdl symbol> <modifier> <optional arguments>;"
"083:516 <sdl symbol> <modifier> <optional arguments>;"


The message bundle can be attached to a key , for example 'SHIFT + A' by sending
083:516 97 3;
The message bundle can be attached to a key , for example 'SHIFT + A' by sending

083:516 97 3;

Which attaches bundle '516' to SDL key '97' using a modifier '3', which is SHIFT.
Which attaches bundle '516' to SDL key '97' using a modifier '3', which is SHIFT.

Modifiers: 0 = none, 1 = alt , 2 = ctrl, 3 = shift
Keys : see SDLkeysym.h somewhere in include/SDL/

If the number 0 is used for an event number, a given key combination can be
unset (wiped) :

083:0 97 3;
083:0 97 3;

Alternativly, you can bind keys to any action identifier. The complete
list can be viewd by typing veejay -u |less or with Gveejay.
Expand Down
Loading

0 comments on commit f5ae116

Please sign in to comment.