rjadeo

rjadeo is an extension to xjadeo that allows to use a remote host to do the video display along a with jack-transport of a jackd on localhost.

It uses TCP/IP and at first I was sceptical whether xjadeo's remote control would be suitable for this kind of work at all, but I soon found out that even my neighbours wireless connection is good enough to do serious video monitoring. (ping: 2.15 ms). you don't believe me? if you've got xjadeo it takes less than 5 mins to set up.

Note: this is one of the many roads that lead to Rome: the preferred method would be to use the MIDI. xjadeo can synchronize to MTC. Obviously not everyone has MIDI I/O available on both machines. You can also follow Hanibal and install netjack on the way.

HOWTO

This method is not recommended. It can be useful for video-installations or unusual setups but if possible use netjack or MTC for post-production.

Roadmap

  • install xjadeo on both computers. (you do not need jackd running on the second machine but it wont hurt if you have - xjadeo will not compile without libjack anyway)
  • build the xjadeo/contrib folder on “localhost” (the time master) - try ./configure –enable-contrib
  • create rjadeo.sh on the “remotehost” - this is needed to set the DISPLAY environment variable.
  • set up a secure-shell-daemon on “remotehost” and optionally a password-less login.
  • store the video file to use on “remotehost”

Details

secure shell stuff

keygen

ssh-keygen -t rsa -b 2048

choose an empty passphrase and the default file locations.

remote login

copy $HOME/.ssh/id_rsa.pub to the remote host $HOME/.ssh/authozized_keys

cat ~/.ssh/id_rsa.pub | ssh user@host "cat >> .ssh/authorized_keys

when everything worked, this is the last time you need to enter you password when sshing to user@host.

rjadeo.sh: (create this file on remote host and make it executable: chmod +x ~/bin/rjadeo.sh)

#!/bin/bash
export DISPLAY=:0
exec ~/bin/xjremote &>/dev/null

to start a monitor window on the remote-host execute this on localhost:

cd ...xjadeo/contrib/cli-remote/
./jadeo-rcli 25 <video-file-path-on-remote-host> | ssh user@remotehost ~/bin/rjadeo.sh

Alternate - without xjremote message queues

rjadeo.sh: (alternate version)

#!/bin/sh
export DISPLAY=:0
exec /usr/local/bin/xjadeo -R $@ >/dev/null 2>&1

and start with:

./jadeo-rcli 25 <video-file-path-on-remote-host> | ssh user@remotehost ~/bin/rjadeo.sh <video-file-path-on-remote-host>

This will not use POSIX message queues: and might perform slightly better 1). Without MQ you'll have to restart the monitor window if jackd or ./jadeo-rcli is killed or the network goes down…

Notes

feel free to adjust contrib/cli-remote/jadeo.c to your needs before compiling. most settings in there are still hardcoded.

1) I did not notice difference in performance with message queues, but they add a complete extra I/O layer between the jadeo-rcli stdio interface and xjadeo
 
oss/xjadeo/rjadeo.txt · Last modified: 27.05.2010 15:01 by rgareus