# and microphone in separate audio streams.
#
# You also get to choose to record from the whole screen or just a specified
-# window. It has been tested on Fedora 18 and CrunchBang Waldorf (and thus
-# should work on Debian Wheezy as well).
+# window. It has been tested on Fedora 18, Ubuntu 13.04 and CrunchBang Waldorf
+# (and thus should work on Debian Wheezy as well).
+#
+# If you're using GStreamer 1.0, please jump to the bottom of the script
+# and comment out the gst-launch-0.10 pipeline and uncomment the 1.0 pipeline.
#
# It dumps the recording in your $HOME directory with a filename like
# screencast-YYYY-MM-DD-HH-MM-SS.mp4
! audiorate ! audioconvert ! ffenc_aac bitrate=256000 ! queue2 ! mux."
fi
-# Launch gstreamer
-gst-launch -q -e ximagesrc xid="${WID}" do-timestamp=1 use-damage=0 \
+# Launch gstreamer (Using gstreamer 0.10)
+gst-launch-0.10 -q -e ximagesrc xid="${WID}" do-timestamp=1 use-damage=0 \
! video/x-raw-rgb,framerate=30/1 ! ffmpegcolorspace ! videoscale method=0 \
! video/x-raw-yuv,width=${WIDTH},height=${HEIGHT} \
! x264enc speed-preset=veryfast bitrate=${BITRATE} ! queue2 \
! mp4mux name="mux" \
- ! filesink location="${HOME}/${FILENAME}" $MONITORARG $MICARG
+ ! filesink location="${HOME}/${FILENAME}" ${MONITORARG} ${MICARG}
+
+# Launch gstreamer (Using gstreamer 1.0)
+#gst-launch-1.0 -q -e ximagesrc xid="${WID}" do-timestamp=1 use-damage=0 \
+# ! video/x-raw,framerate=30/1 ! videoscale method=0 \
+# ! video/x-raw,width=${WIDTH},height=${HEIGHT} ! videoconvert \
+# ! x264enc speed-preset=veryfast bitrate=${BITRATE} ! queue2 \
+# ! filesink location="${HOME}/${FILENAME}" ${MONITORARG} ${MICARG}
echo "Recording done, file is ${FILENAME}"