I've just wrote a HOWTO for the AV Linux forums on how I created my A3
MIDI vid which is basically a refinement of Jeremy's JACK screencast
tutorial with a couple of extra tips bolted on:
http://www.remastersys.com/forums/index.php?topic=1362.0
JACK Audio Screencasting
(aka The making of 'Introduction to Ardour 3.0 MIDI')
This tutorial is largely based upon an earlier one by AutoStatic here:
http://apps.linuxaudio.org/wiki/screencasttutorial
Unfortunately, that didn't quite work for me so here I present what I
had to do to get a nice JACK-friendly screencast captured.
You will need a couple of packages not included by default in AV Linux
4.2, namely the ssh server and the Xephyr nested X server
apt-get install openssh-server xserver-xephyr fluxbox
Fluxbox is entirely optional, its just what I'm using in this example.
Before running Xephyr, our 'nested X server' which will be our desktop
to capture, you need to start the ssh server, so do so as root:
/etc/init.d/ssh start
Then I run the following commands to to start Xephyr then launch
fluxbox within it - just replace 'iatn' with your username:
Xephyr -ac -host-cursor -screen 1280x720x24 -dpi 96 -br
-reset-terminate 2> /dev/null :1 &
DISPLAY=:1.0
ssh -XfC -c blowfish iatn@localhost fluxbox
Note that after typing 'DISPLAY=:1.0' you need to issue a
'DISPLAY=:0.0' to launch programs on your regular desktop again. Now
you can run a script like:
-------------
#!/bin/bash
DATE=`date +%Y%m%d`
TIME=`date +%Hh%M%S`
export DISPLAY=:1.0
# Start screencast
xterm -display :0.0 -e jack_capture --port system:capture_1 --port
system:playback_1 ~/a3midvid/a3midvid_audio_$DATE-$TIME.wav &
ffmpeg -an -f x11grab -r 30 -s 1280x720 -i :1 -vcodec libx264 -vpre
lossless_ultrafast -threads 2
~/a3midvid/a3midvid_video_$DATE-$TIME.mkv
--------------
That should capture the video on your Xephyr desktop as well as
creating a stereo wav with one channel consisting of a JACK output
channel and the other one capturing the mic connected to your first
mic input.
To fix the keyboard problem (like arrow keys not working) under
Xephyr, start Xephyr/fluxbox/xterm, input something via the keyboard
to Xephyr and then in a terminal on the host X server (not in Xephyr)
do:
DISPLAY=:0.0
xkbcomp $DISPLAY :1
This copies the XKB settings from the encompassing X server to the
Xserver under Xephyr.
When I imported my video and audio streams into KDEnlive I found I had
to displace the audio stream about 9 frames behind the video but this
value could well vary depending on numerous factors so some
experimentation may be required to get the audio and video to sync
properly.