byzanz: needs porting to new libpanel-applet interface

Andrea Veri and at debian.org
Sat Oct 22 12:17:00 UTC 2011


Hi,

I've prepared an NMU for your package which makes byzanz working 
with latest libpanel-applet.

Attached a debdiff against byzanz-0.2.2. (note that you'll find a few 
updates to the .po files, that's expected since I cloned upstream's 
git repository, which includes GTK3's and libplanet-applet's porting)

I've uploaded the fixed package into DELAYED-1. It fixes a 
longstanding RC bug. (it was reported on Wed, 17 Aug 2011, no action 
since then)

cheers,

Andrea
-------------- next part --------------
diff -Nru byzanz-0.2.2/configure.ac byzanz-0.2.2+git22.10.2011/configure.ac
--- byzanz-0.2.2/configure.ac	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/configure.ac	2011-10-22 12:56:33.000000000 +0200
@@ -5,7 +5,7 @@
 PACKAGE=byzanz
 dnl when going to/from release please set the nano (fourth number) right !
 dnl releases only do Wall, cvs and prerelease does Werror too
-AS_VERSION($PACKAGE, TOOLS_VERSION, 0, 2, 2, 1, BYZANZ_CVS="no", BYZANZ_CVS="yes")
+AS_VERSION($PACKAGE, TOOLS_VERSION, 0, 3, 0, 1, BYZANZ_CVS="no", BYZANZ_CVS="yes")
 
 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
 AM_MAINTAINER_MODE
@@ -21,7 +21,7 @@
 AC_PROG_INTLTOOL
 
 dnl the gettext stuff needed
-ALL_LINGUAS="ar ca cs da de dz el en_GB es fi fr gl hu id it ja nb oc pl pt_BR ru sl sv tr vi zh_CN"
+ALL_LINGUAS="ar ca cs da de dz el en_GB es fi fr gl hu id it ja nb oc pl pt_BR ro ru sl sv tr vi uk zh_CN"
 GETTEXT_PACKAGE=$PACKAGE
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], "$GETTEXT_PACKAGE",
@@ -37,10 +37,10 @@
 
 dnl decide on error flags
 AS_COMPILER_FLAGS(ERROR_CFLAGS, "-Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wold-style-definition -Wdeclaration-after-statement -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wformat-nonliteral -Wformat-security -Wswitch-enum -Wswitch-default -Winit-self -Wmissing-include-dirs -Wundef -Waggregate-return -Wmissing-format-attribute -Wnested-externs -Wunsafe-loop-optimizations -Wpacked -Winvalid-pch -Wsync-nand")
-#if test "x$BYZANZ_CVS" = "xyes"
-#then
-#  AS_COMPILER_FLAGS(ERROR_CFLAGS, "-Werror")
-#fi
+if test "x$BYZANZ_CVS" = "xyes"
+then
+  AS_COMPILER_FLAGS(ERROR_CFLAGS, "-Werror")
+fi
 
 AC_HEADER_STDC([])
 AC_C_INLINE
@@ -63,18 +63,21 @@
 dnl Check for essential libraries first:
 dnl ====================================
 
-CAIRO_REQ="1.8.10"
-GTK_REQ="2.17.10"
+CAIRO_REQ="1.10"
+GTK_REQ="3.0.0"
 GTHREAD_REQ="2.6.0"
-APPLET_REQ="2.10.0"
+APPLET_REQ="2.91.91"
 XDAMAGE_REQ="1.0"
 GST_REQ="0.10.24"
 
-PKG_CHECK_MODULES(GTK, cairo >= $CAIRO_REQ gtk+-2.0 >= $GTK_REQ x11 gio-2.0)
+PKG_CHECK_MODULES(GTK, cairo >= $CAIRO_REQ gtk+-3.0 >= $GTK_REQ x11 gio-2.0)
 
 PKG_CHECK_MODULES(GTHREAD, xdamage >= $XDAMAGE_REQ gthread-2.0 >= $GTHREAD_REQ)
 
-PKG_CHECK_MODULES(APPLET, libpanelapplet-2.0 >= $APPLET_REQ)
+LIBPANEL_APPLET="libpanelapplet-4.0"
+PKG_CHECK_MODULES(APPLET, $LIBPANEL_APPLET >= $APPLET_REQ)
+appletdir=`$PKG_CONFIG --variable=libpanel_applet_dir $LIBPANEL_APPLET`
+AC_SUBST(appletdir)
 
 PKG_CHECK_MODULES(GST, gstreamer-app-0.10 >= $GST_REQ gstreamer-0.10 >= $GST_REQ)
 
diff -Nru byzanz-0.2.2/debian/changelog byzanz-0.2.2+git22.10.2011/debian/changelog
--- byzanz-0.2.2/debian/changelog	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/debian/changelog	2011-10-22 12:58:02.000000000 +0200
@@ -1,3 +1,15 @@
+byzanz (0.2.2+git22.10.2011-1.1) unstable; urgency=low
+
+  * Non-Maintainer Upload.
+  * New upstream's git snapshot release.
+    (ID: f311238484df73b0cc75d679fe17e78d1ab07e2b)
+  * debian/control:
+    - libgtk bumped to libgtk-3-dev. (byzan has been ported to GTK3)
+    - libpanel-applet bumped to libpanel-applet-4-dev for the 
+      gnome-panel-3 transition. (Closes: #638075)
+
+ -- Andrea Veri <and at debian.org>  Sat, 22 Oct 2011 12:20:00 +0200
+
 byzanz (0.2.2-4) unstable; urgency=low
 
   * Improve manpages (Closes: #606734, #606733), thanks Jari Aalto for the
diff -Nru byzanz-0.2.2/debian/control byzanz-0.2.2+git22.10.2011/debian/control
--- byzanz-0.2.2/debian/control	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/debian/control	2011-10-22 12:58:02.000000000 +0200
@@ -2,7 +2,7 @@
 Section: graphics
 Priority: optional
 Maintainer: Bastian Venthur <venthur at debian.org>
-Build-Depends: debhelper (>= 5.0.0), gnome-common, libglib2.0-dev, libgconf2-dev, libcairo2-dev, libgtk2.0-dev, libx11-dev, libpanel-applet2-dev, libgstreamer0.10-dev, libgstreamer-plugins-base0.10-dev
+Build-Depends: debhelper (>= 5.0.0), gnome-common, libglib2.0-dev, libgconf2-dev, libcairo2-dev, libgtk-3-dev, libx11-dev, libpanel-applet-4-dev, libgstreamer0.10-dev, libgstreamer-plugins-base0.10-dev
 Standards-Version: 3.8.4
 Homepage: http://people.freedesktop.org/~company/byzanz
 VCS-git: git://git.gnome.org/byzanz
diff -Nru byzanz-0.2.2/gifenc/gifenc.c byzanz-0.2.2+git22.10.2011/gifenc/gifenc.c
--- byzanz-0.2.2/gifenc/gifenc.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/gifenc/gifenc.c	2011-10-22 12:56:33.000000000 +0200
@@ -476,7 +476,7 @@
     const GifencPalette *palette, const guint8 *data, guint width, guint height, 
     guint rowstride)
 {
-  guint x, y, i, c;
+  guint x, y, c;
   gint *this_error, *next_error;
   guint8 this[3];
   gint err[3] = { 0, 0, 0 };
@@ -486,7 +486,6 @@
 
   this_error = g_new0 (gint, (width + 2) * 3);
   next_error = g_new (gint, (width + 2) * 3);
-  i = 0;
   for (y = 0; y < height; y++) {
     const guint32 *row = (const guint32 *) data;
     gint *cur_error = this_error + 3;
@@ -531,14 +530,14 @@
 gifenc_dither_rgb_with_full_image (guint8 *target, guint target_rowstride, 
     guint8 *full, guint full_rowstride,
     const GifencPalette *palette, const guint8 *data, guint width, guint height, 
-    guint rowstride, GdkRectangle *rect_out)
+    guint rowstride, cairo_rectangle_int_t *rect_out)
 {
-  int x, y, i, c;
+  int x, y, c;
   gint *this_error, *next_error;
   guint8 this[3], alpha;
   gint err[3] = { 0, 0, 0 };
   guint32 pixel;
-  GdkRectangle area = { width, height, 0, 0 };
+  cairo_rectangle_int_t area = { width, height, 0, 0 };
   
   g_return_val_if_fail (palette != NULL, FALSE);
   g_return_val_if_fail (palette->alpha, FALSE);
@@ -546,7 +545,6 @@
 
   this_error = g_new0 (gint, (width + 2) * 3);
   next_error = g_new (gint, (width + 2) * 3);
-  i = 0;
   for (y = 0; y < (int) height; y++) {
     const guint32 *row = (const guint32 *) data;
     gint *cur_error = this_error + 3;
diff -Nru byzanz-0.2.2/gifenc/gifenc.h byzanz-0.2.2+git22.10.2011/gifenc/gifenc.h
--- byzanz-0.2.2/gifenc/gifenc.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/gifenc/gifenc.h	2011-10-22 12:56:33.000000000 +0200
@@ -99,16 +99,16 @@
 					 guint			height,
 					 guint			rowstride);
 gboolean	gifenc_dither_rgb_with_full_image
-					(guint8 *		target,
-					 guint			target_rowstride,
-					 guint8 *		full,
-					 guint			full_rowstride,
-					 const GifencPalette *	palette,
-					 const guint8 *		data,
-					 guint			width,
-					 guint			height,
-					 guint			rowstride,
-					 GdkRectangle *		rect_out);
+					(guint8 *		 target,
+					 guint			 target_rowstride,
+					 guint8 *		 full,
+					 guint			 full_rowstride,
+					 const GifencPalette *	 palette,
+					 const guint8 *		 data,
+					 guint			 width,
+					 guint			 height,
+					 guint			 rowstride,
+					 cairo_rectangle_int_t * rect_out);
 
 /* from quantize.c */
 void		gifenc_palette_free	(GifencPalette *	palette);
diff -Nru byzanz-0.2.2/gifenc/quantize.c byzanz-0.2.2+git22.10.2011/gifenc/quantize.c
--- byzanz-0.2.2/gifenc/quantize.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/gifenc/quantize.c	2011-10-22 12:56:33.000000000 +0200
@@ -361,9 +361,8 @@
   info.tree->color = (guint) -2; /* special node */
 
   if (TRUE) {
-    guint r, g, b, count;
+    guint r, g, b;
     static const guint8 colors[] = { 0, 85, 170, 255 };
-    count = (width * height) / (4 * 4 * 4);
     for (r = 0; r < 4; r++) {
       for (g = 0; g < 4; g++) {
 	for (b = 0; b < 4; b++) {
diff -Nru byzanz-0.2.2/po/ca.po byzanz-0.2.2+git22.10.2011/po/ca.po
--- byzanz-0.2.2/po/ca.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/ca.po	2011-10-22 12:56:33.000000000 +0200
@@ -170,7 +170,7 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
+msgid "process a Byzanz debug recording"
 msgstr "processa un enregistrament de depuraci? del Byzanz"
 
 #: ../src/playback.c:84 ../src/record.c:140
diff -Nru byzanz-0.2.2/po/cs.po byzanz-0.2.2+git22.10.2011/po/cs.po
--- byzanz-0.2.2/po/cs.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/cs.po	2011-10-22 12:56:33.000000000 +0200
@@ -1,34 +1,38 @@
 # Czech translation of byzanz.
 # Copyright (C) 2008, 2009 the author(s) of byzanz.
 # This file is distributed under the same license as the byzanz package.
-# Adrian Guni? <andygun at seznam.cz>, 2008, 2009.
+#
 # Petr Kovar <pknbe at volny.cz>, 2008.
+# Adrian Guni? <andygun696 at gmail.com>, 2008-2010.
+# Marek ?ernock? <marek at manet.cz>, 2010 (just fixes), 2011.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: byzanz\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2009-10-06 01:00+0200\n"
-"PO-Revision-Date: 2009-10-04 19:18+0100\n"
-"Last-Translator: Adrian Guni? <andygun696 at gmail.com>\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=byzanz&component=general\n"
+"POT-Creation-Date: 2011-02-21 18:35+0000\n"
+"PO-Revision-Date: 2011-02-22 00:00+0100\n"
+"Last-Translator: Marek ?ernock? <marek at manet.cz>\n"
 "Language-Team: Czech <gnome-cs-list at gnome.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Language: cs\n"
 "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 "X-Poedit-Language: Czech\n"
 
 #: ../src/byzanz.schemas.in.h:1
 msgid ""
-"If set, Byzanz will record the mouse cursor. While useful, recording the "
-"mouse cursor results in bigger files and should therefore be used with care."
+"If set, Byzanz will record audio from the default audio device if the format "
+"supports it. This allows narrating along with the recording."
 msgstr ""
-"Pokud nastav?te, Byzanz bude nahr?vat kurzor my?i. P?i nahr?v?n? kurzoru "
-"my?i vznikaj? v?t?? soubory a m?lo by b?t proto pou??v?no s rozmyslem."
+"Je-li nastaveno, Byzanz bude nahr?vat zvuk z v?choz?ho zvukov?ho za??zen?, "
+"pokud to form?t podporuje. To umo??uje mluvit b?hem nahr?v?n?."
 
-#: ../src/byzanz.schemas.in.h:2 ../src/record.c:38
-msgid "Record mouse cursor"
-msgstr "Nahr?t kurzor my?i"
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
+msgid "Record audio"
+msgstr "Nahr?vat zvuk"
 
 #: ../src/byzanz.schemas.in.h:3
 msgid "Recording method"
@@ -49,175 +53,199 @@
 "\" to select a window."
 msgstr ""
 "Pou??t tuto metodu jako v?choz? metodu nahr?v?n?. Mus? b?t nastaveno bu? "
-"\"screen\" pro nahr?v?n? cel? obrazovky, \"area\" pro nahr?v?n? vybran? "
-"oblasti nebo \"window\" pro nahr?v?n? vybran?ho okna."
+"?screen? pro nahr?v?n? cel? obrazovky, ?area? pro nahr?v?n? vybran? oblasti "
+"nebo ?window? pro nahr?v?n? vybran?ho okna."
 
-#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:263
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "Nahr?t pracovn? plochu"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "Vyberte oblast nahr?v?n?"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "Ukon?it sou?asn? nahr?v?n?"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "Zru?it k?dov?n? z?znamu"
 
-#: ../src/byzanzapplet.c:273
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "V?echny soubory"
 
-#: ../src/byzanzapplet.c:355
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "Sezen? pracovn? plochy"
 
-#: ../src/byzanzapplet.c:358 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Nahr?v?n? d?n? na pracovn? plo?e"
 
-#: ../src/byzanzapplet.c:360
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
-msgstr "Adrian Guni? <andygun696 at gmail.com>"
+msgstr ""
+"Adrian Guni? <andygun696 at gmail.com>\n"
+"Marek ?ernock? <marek at manet.cz>"
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "O _aplikaci"
 
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
+msgid "This format does not support recording audio."
+msgstr "Tento form?t nepodporuje nahr?v?n? zvuku."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "Ladic? soubory Byzanz"
+
 #: ../src/byzanzencoderflv.c:38
 msgid "Flash video"
-msgstr "Flash video"
+msgstr "Video Flash"
 
-#: ../src/byzanzencodergif.c:212
+#: ../src/byzanzencodergif.c:209
 msgid "No image to encode."
 msgstr "??dn? obr?zek ke k?dov?n?."
 
-#: ../src/byzanzencodergif.c:251
+#: ../src/byzanzencodergif.c:248
 msgid "GIF images"
 msgstr "Obr?zky GIF"
 
-#: ../src/byzanzencodergstreamer.c:76
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "Nepoda?ilo se spustit rouru GStreamer"
 
-#: ../src/byzanzencodergstreamer.c:94
-msgid "Premature end of GStreamer pipeline"
-msgstr "P?ed?asn? ukon?en? roury GStreamer"
-
 #: ../src/byzanzencoderogv.c:38
 msgid "Theora video"
-msgstr "Theora video"
+msgstr "Video Theora"
+
+#: ../src/byzanzencoderwebm.c:38
+#| msgid "Theora video"
+msgid "WebM video"
+msgstr "Video WebM"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "Nahr?t _pracovn? plochu"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "Nahr?t celou pracovn? plochu"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "Nahr?t obl_ast"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Nahr?t vybranou oblast pracovn? plochy"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "Nahr?t _okno"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Nahr?t vybran? okno"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Gener?tor Byzanz"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Z?znamn?k pracovn? plochy"
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "Nejedn? se o nahr?v?n? Byzanz"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "Nepodporovan? po?ad? bajt?"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "pou?it?: %s [P?EP?NA?E] vstupn?_soubor v?stupn?_soubor\n"
+
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
+
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr "zpracovat zaznamenan? lad?n? Byzanz"
+
+#: ../src/playback.c:84 ../src/record.c:143
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "?patn? p?ep?na?: %s\n"
 
-#: ../src/record.c:36
+#: ../src/record.c:37
 msgid "Duration of animation (default: 10 seconds)"
 msgstr "D?lka animace (v?choz?: 10 sekund)"
 
-#: ../src/record.c:36 ../src/record.c:37
+#: ../src/record.c:37 ../src/record.c:38
 msgid "SECS"
 msgstr "SEKUNDY"
 
-#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "Delay before start (default: 1 second)"
 msgstr "Zpo?d?n? p?ed spu?t?n?m (v?choz?: 1 sekunda)"
 
 #: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "Nahr?t kurzor my?i"
+
+#: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
 msgstr "Sou?adnice X obd?ln?ku pro nahr?v?n?"
 
-#: ../src/record.c:39 ../src/record.c:40 ../src/record.c:41 ../src/record.c:42
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
 msgid "PIXEL"
 msgstr "PIXEL"
 
-#: ../src/record.c:40
+#: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
 msgstr "Sou?adnice Y obd?ln?ku pro nahr?v?n?"
 
-#: ../src/record.c:41
+#: ../src/record.c:43
 msgid "Width of recording rectangle"
 msgstr "???ka nahr?van?ho obd?ln?ku"
 
-#: ../src/record.c:42
+#: ../src/record.c:44
 msgid "Height of recording rectangle"
 msgstr "V??ka nahr?van?ho obd?ln?ku"
 
-#: ../src/record.c:43
+#: ../src/record.c:45
 msgid "Be verbose"
 msgstr "Vypisovat podrobnosti"
 
-#: ../src/record.c:65
+#: ../src/record.c:67
 #, c-format
 msgid "usage: %s [OPTIONS] filename\n"
 msgstr "pou?it?: %s [P?EP?NA?E] n?zev_souboru\n"
 
-#: ../src/record.c:66
-#, c-format
-msgid "       %s --help\n"
-msgstr "       %s --help\n"
-
-#: ../src/record.c:75
+#: ../src/record.c:77
 #, c-format
 msgid "Error during recording: %s\n"
 msgstr "Chyba b?hem nahr?v?n?: %s\n"
 
-#: ../src/record.c:81
+#: ../src/record.c:83
 msgid "Recording done.\n"
 msgstr "Nahr?v?n? dokon?eno.\n"
 
-#: ../src/record.c:89
+#: ../src/record.c:91
 msgid "Recording completed. Finishing encoding...\n"
-msgstr "Nahr?v?n? dokon?eno. Dokon?ov?n? k?dov?n?...\n"
+msgstr "Nahr?v?n? dokon?eno. Dokon?ov?n? k?dov?n??\n"
 
-#: ../src/record.c:98
+#: ../src/record.c:100
 #, c-format
 msgid "Recording starts. Will record %d seconds...\n"
-msgstr "Spou?t? se nahr?v?n?. Nahraje se %d sekund...\n"
+msgstr "Spou?t? se nahr?v?n?. Nahraje se %d sekund?\n"
 
-#: ../src/record.c:130
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "nahr?t pracovn? plochu aktu?ln?ho sezen?"
 
-#: ../src/record.c:138
-#, c-format
-msgid "Wrong option: %s\n"
-msgstr "?patn? p?ep?na?: %s\n"
-
-#: ../src/record.c:147
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "Ur?en? oblast nen? uvnit? pracovn? plochy.\n"
diff -Nru byzanz-0.2.2/po/da.po byzanz-0.2.2+git22.10.2011/po/da.po
--- byzanz-0.2.2/po/da.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/da.po	2011-10-22 12:56:33.000000000 +0200
@@ -1,46 +1,46 @@
-# Copyright (C) 2006 THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same licence as the byzanz package.
-# Kris Hansen <mumien at yahoo.dk>, 2008
+# Danish translation byzanz.
+# Copyright (C) 2010 byzanz & nedenst?ende overs?ttere.
+# This file is distributed under the same license as the byzanz package.
+# Kris Hansen <mumien at yahoo.dk>, 2008.
+# Joe Hansen <joedalton2 at yahoo.dk>, 2010, 2011.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: byzanz\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2008-11-09 21:37+0100\n"
-"PO-Revision-Date: 2008-11-07 13:53+0100\n"
-"Last-Translator: Kris Hansen <mumien at yahoo.dk>\n"
+"POT-Creation-Date: 2011-04-03 20:09+0200\n"
+"PO-Revision-Date: 2011-04-02 13:53+0100\n"
+"Last-Translator: Joe Hansen <joedalton2 at yahoo.dk>\n"
 "Language-Team: Dansk Gruppen <dansk at dansk-gruppen.dk>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Danish\n"
-"X-Poedit-Country: Denmark\n"
 
 #: ../src/byzanz.schemas.in.h:1
-msgid "Directory to save in"
-msgstr "Mappe til at gemme i"
-
-#: ../src/byzanz.schemas.in.h:2
 msgid ""
-"If set, Byzanz will record the mouse cursor. While useful, recording the "
-"mouse cursor results in bigger files and should therefore be used with care."
+"If set, Byzanz will record audio from the default audio device if the format "
+"supports it. This allows narrating along with the recording."
 msgstr ""
-"Hvis sl?et til, vil Byzanz optage musemark?ren. Nyttigt, men optagelsen af "
-"musemark?ren resulterer i st?rre filer og b?r derfor anvendes med "
-"forsigtighed."
-
-#: ../src/byzanz.schemas.in.h:3 ../src/record.c:39
-msgid "Record mouse cursor"
-msgstr "Optag musemark?ren"
+"Hvis angivet vil Byzanz optage lyd fra standardlydenheden hvis formatet "
+"underst?tter den. Dette giver mulighed for kommentering sammen med "
+"optagelsen."
+
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
+msgid "Record audio"
+msgstr "Optag lyd"
 
-#: ../src/byzanz.schemas.in.h:4
+#: ../src/byzanz.schemas.in.h:3
 msgid "Recording method"
 msgstr "Optagelsesmetode"
 
+#: ../src/byzanz.schemas.in.h:4
+msgid "Save filename"
+msgstr "Gem filnavn"
+
 #: ../src/byzanz.schemas.in.h:5
-msgid "This is the directory that Byzanz will default to when saving a file."
-msgstr ""
-"Dette er den mappe, som Byzanz vil bruge som standard, n?r du gemmer en fil."
+msgid "URI for the filename Byzanz will suggest when starting a recording."
+msgstr "Adresse for filnavnet Byzanz vil foresl? n?r en optagelse startes."
 
 #: ../src/byzanz.schemas.in.h:6
 msgid ""
@@ -52,170 +52,257 @@
 "\"screen\" for at kunne optage hele sk?rmen, \"area\" for at v?lge et omr?de "
 "eller \"window\" for at v?lge et vindue."
 
-#: ../src/byzanzapplet.c:110
-msgid "A file could not be saved."
-msgstr "En fil kunne ikke gemmes."
-
-#: ../src/byzanzapplet.c:111
-#, c-format
-msgid ""
-"\"%s\" could not be saved.\n"
-"The error that occured was: %s"
-msgstr ""
-"\"%s\" kunne ikke gemmes.\n"
-"Fejlen der opstod var: %s"
-
-#: ../src/byzanzapplet.c:175
-msgid "Save Recorded File"
-msgstr "Gem optaget fil"
-
-#: ../src/byzanzapplet.c:224
-msgid "Stop current recording"
-msgstr "Stop nuv?rende optagelse"
-
-#: ../src/byzanzapplet.c:258
-msgid "Cannot start recording."
-msgstr "Kan ikke starte optagelse."
-
-#: ../src/byzanzapplet.c:259 ../src/record.c:135
-#, c-format
-msgid ""
-"Byzanz requires a 24bpp or 32bpp depth for recording. The current resolution "
-"is set to %dbpp."
-msgstr ""
-"Byzanz kr?ver en 24bpp eller 32bpp dybde for at kunne optage. Den nuv?rende "
-"opl?sning er sat til %dbpp."
-
-#: ../src/byzanzapplet.c:369 ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Skrivebordsoptager"
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
+msgid "Record your desktop"
+msgstr "Optag dit skrivebord"
+
+#: ../src/byzanzapplet.c:103
+msgid "Select area to record"
+msgstr "V?lg omr?de at optage"
+
+#: ../src/byzanzapplet.c:104
+msgid "End current recording"
+msgstr "Afslut nuv?rende optagelse"
+
+#: ../src/byzanzapplet.c:105
+msgid "Abort encoding of recording"
+msgstr "Afbryd kodning af optagelse"
+
+#: ../src/byzanzapplet.c:276
+msgid "All files"
+msgstr "Alle filer"
+
+#: ../src/byzanzapplet.c:366
+msgid "Desktop Session"
+msgstr "Skrivebordssession"
 
-#: ../src/byzanzapplet.c:372 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Optag hvad der sker p? dit skrivebord"
 
-#: ../src/byzanzapplet.c:374
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr ""
-"Kris Hansen og mumien at yahoo.dk, 2008.\n"
+"Kris Hansen, 2008.\n"
+"Joe Hansen, 2010.\n"
+"\n"
 "Dansk-gruppen <dansk at dansk-gruppen.dk>\"\n"
 "Mere info: http://www.dansk-gruppen.dk"
 
-#: ../src/byzanzapplet.c:441
-msgid "Record _Mouse Cursor"
-msgstr "Optag _musemark?r"
-
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "_Om"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
+msgid "This format does not support recording audio."
+msgstr "Dette format underst?tter ikke optagelse af lyd."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "Fejls?gningsfiler til Byzanz"
+
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "Flashvideo"
+
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "Intet billede at kode."
+
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "GIF-billeder"
+
+#: ../src/byzanzencodergstreamer.c:165
+msgid "Failed to start GStreamer pipeline"
+msgstr "Kunne ikke starte GStreamer-datakanal"
+
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "Theoravideo"
+
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "WebM-video"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "Optag _skrivebord"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "Optag hele skrivebordet"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "Optag _omr?de"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Optag et valgt omr?de af skrivebordet"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "Optag _vindue"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Optag et valgt vindue"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Byzanz fabrik"
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "Ikke en Byzanzoptagelse"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "Byte-r?kkef?lge er ikke underst?ttet"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "brug: %s [TILVALG] INDFIL UDFIL\n"
 
-#: ../src/record.c:36
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
+
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr "behandle en fejls?gningsoptagelse for Byzanz"
+
+#: ../src/playback.c:84 ../src/record.c:143
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "Forkert tilvalg: %s\n"
+
+#: ../src/record.c:37
 msgid "Duration of animation (default: 10 seconds)"
 msgstr "Varighed af animation (standard: 10 sekunder)"
 
-#: ../src/record.c:36 ../src/record.c:37
+#: ../src/record.c:37 ../src/record.c:38
 msgid "SECS"
 msgstr "SEK"
 
-#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "Delay before start (default: 1 second)"
 msgstr "Forsinkelse f?r start (standard: 1 sekund)"
 
-#: ../src/record.c:38
-msgid "Let the animation loop"
-msgstr "Lad animationen g? i l?kke"
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "Optag musemark?ren"
 
-#: ../src/record.c:40
+#: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
 msgstr "X-koordinat af rektangel til optagelse"
 
-#: ../src/record.c:40 ../src/record.c:41 ../src/record.c:42 ../src/record.c:43
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
 msgid "PIXEL"
 msgstr "Billedpunkt"
 
-#: ../src/record.c:41
+#: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
 msgstr "Y-koordinat af rektangel til optagelse"
 
-#: ../src/record.c:42
+#: ../src/record.c:43
 msgid "Width of recording rectangle"
 msgstr "Bredde p? optagelsesrektangelet"
 
-#: ../src/record.c:43
+#: ../src/record.c:44
 msgid "Height of recording rectangle"
 msgstr "H?jde p? optagelsesrektangelet"
 
-#: ../src/record.c:44
+#: ../src/record.c:45
 msgid "Be verbose"
 msgstr "V?r uddybende"
 
-#: ../src/record.c:66
+#: ../src/record.c:67
 #, c-format
 msgid "usage: %s [OPTIONS] filename\n"
 msgstr "forbrug: %s [TILVALG] filnavn\n"
 
-#: ../src/record.c:67
+#: ../src/record.c:77
 #, c-format
-msgid "       %s --help\n"
-msgstr "       %s --help\n"
-
-#: ../src/record.c:73
-msgid "Recording done. Cleaning up...\n"
-msgstr "Optagelsen er f?rdig. Rydder op...\n"
+msgid "Error during recording: %s\n"
+msgstr "Fejl under optagelse: %s\n"
 
 #: ../src/record.c:83
+msgid "Recording done.\n"
+msgstr "Optagelse f?rdig.\n"
+
+#: ../src/record.c:91
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "Optagelsen er f?rdig. Afslutter kodning...\n"
+
+#: ../src/record.c:100
 #, c-format
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "Optagelse starter. Vil optage %d sekunder...\n"
 
-#: ../src/record.c:93
-msgid "Preparing recording. Will start in 1 second...\n"
-msgstr "Forbereder optagelse. Vil starte om 1 sekund...\n"
-
-#: ../src/record.c:116
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "optag din nuv?rende skrivebordssession"
 
-#: ../src/record.c:124
+#: ../src/record.c:152
 #, c-format
-msgid "Wrong option: %s\n"
-msgstr "Forkert tilvalg: %s\n"
+msgid "Given area is not inside desktop.\n"
+msgstr "Angivet omr?de er ikke indenfor skrivebordet.\n"
 
-#: ../src/record.c:142
-#, c-format
-msgid ""
-"Could not prepare recording.\n"
-"Most likely the Damage extension is not available on the X server or the "
-"file \"%s\" is not writable.\n"
-msgstr ""
-"Kunne ikke forberede optagelse.\n"
-"H?jst sandsynligt er skadeudvidelsen ikke tilg?ngelig p? X-serveren eller "
-"filen \"%s\" er ikke skrivbar.\n"
+#~ msgid "Directory to save in"
+#~ msgstr "Mappe til at gemme i"
+
+#~ msgid ""
+#~ "If set, Byzanz will record the mouse cursor. While useful, recording the "
+#~ "mouse cursor results in bigger files and should therefore be used with "
+#~ "care."
+#~ msgstr ""
+#~ "Hvis sl?et til, vil Byzanz optage musemark?ren. Nyttigt, men optagelsen "
+#~ "af musemark?ren resulterer i st?rre filer og b?r derfor anvendes med "
+#~ "forsigtighed."
+
+#~ msgid ""
+#~ "This is the directory that Byzanz will default to when saving a file."
+#~ msgstr ""
+#~ "Dette er den mappe, som Byzanz vil bruge som standard, n?r du gemmer en "
+#~ "fil."
+
+#~ msgid "A file could not be saved."
+#~ msgstr "En fil kunne ikke gemmes."
+
+#~ msgid ""
+#~ "\"%s\" could not be saved.\n"
+#~ "The error that occured was: %s"
+#~ msgstr ""
+#~ "\"%s\" kunne ikke gemmes.\n"
+#~ "Fejlen der opstod var: %s"
+
+#~ msgid "Save Recorded File"
+#~ msgstr "Gem optaget fil"
+
+#~ msgid ""
+#~ "Byzanz requires a 24bpp or 32bpp depth for recording. The current "
+#~ "resolution is set to %dbpp."
+#~ msgstr ""
+#~ "Byzanz kr?ver en 24bpp eller 32bpp dybde for at kunne optage. Den "
+#~ "nuv?rende opl?sning er sat til %dbpp."
+
+#~ msgid "Record _Mouse Cursor"
+#~ msgstr "Optag _musemark?r"
+
+#~ msgid "Byzanz Factory"
+#~ msgstr "Byzanz fabrik"
+
+#~ msgid "Let the animation loop"
+#~ msgstr "Lad animationen g? i l?kke"
+
+#~ msgid "Preparing recording. Will start in 1 second...\n"
+#~ msgstr "Forbereder optagelse. Vil starte om 1 sekund...\n"
+
+#~ msgid ""
+#~ "Could not prepare recording.\n"
+#~ "Most likely the Damage extension is not available on the X server or the "
+#~ "file \"%s\" is not writable.\n"
+#~ msgstr ""
+#~ "Kunne ikke forberede optagelse.\n"
+#~ "H?jst sandsynligt er skadeudvidelsen ikke tilg?ngelig p? X-serveren eller "
+#~ "filen \"%s\" er ikke skrivbar.\n"
diff -Nru byzanz-0.2.2/po/de.po byzanz-0.2.2+git22.10.2011/po/de.po
--- byzanz-0.2.2/po/de.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/de.po	2011-10-22 12:56:33.000000000 +0200
@@ -5,16 +5,19 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Byzanz\n"
+"Project-Id-Version: byzanz master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
 "product=byzanz&component=general\n"
-"POT-Creation-Date: 2010-02-20 11:13+0000\n"
-"PO-Revision-Date: 2010-02-21 13:34+0100\n"
+"POT-Creation-Date: 2011-02-21 18:35+0000\n"
+"PO-Revision-Date: 2011-02-26 21:05+0100\n"
 "Last-Translator: Mario Bl?ttermann <mariobl at gnome.org>\n"
-"Language-Team: German <de at li.org>\n"
+"Language-Team: German <gnome-de at gnome.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"X-Poedit-Language: German\n"
+"X-Poedit-Country: GERMANY\n"
 
 #: ../src/byzanz.schemas.in.h:1
 msgid ""
@@ -25,7 +28,7 @@
 "das Format es unterst?tzt. Dies erlaubt Erl?uterungen w?hrend der "
 "Aufzeichnung."
 
-#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
 msgid "Record audio"
 msgstr "Ton aufzeichnen"
 
@@ -49,48 +52,48 @@
 "\" to select a window."
 msgstr ""
 "Diese Methode als Standard-Aufnahmemethode benutzen. Muss einer der Werte "
-"?screen? zur Aufnahme des ganzen Bildschirms, ?area? zur Auswahl eines Bereichs "
-"oder ?window? zur Auswahl eines Fensters sein."
+"?screen? zur Aufnahme des ganzen Bildschirms, ?area? zur Auswahl eines "
+"Bereichs oder ?window? zur Auswahl eines Fensters sein."
 
-#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "Aufzeichnen Ihrer Arbeitsfl?che"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "Bereich zur Aufzeichnung ausw?hlen"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "Aktuelle Aufzeichnung beenden"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "Enkodierung der Aufzeichnung abbrechen"
 
-#: ../src/byzanzapplet.c:278
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "Alle Dateien"
 
-#: ../src/byzanzapplet.c:368
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "Desktop-Sitzung"
 
-#: ../src/byzanzapplet.c:371 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Zeichnen Sie auf, was auf Ihrem Desktop passiert"
 
-#: ../src/byzanzapplet.c:373
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr ""
 "Benjamin Otte <otte at gnome.org>\n"
 "Mario Bl?ttermann <mariobl at gnome.org>"
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "_Info"
 
-#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
 msgid "This format does not support recording audio."
 msgstr "Dieses Format unterst?tzt keine Tonaufzeichnung."
 
@@ -110,7 +113,7 @@
 msgid "GIF images"
 msgstr "GIF-Bilder"
 
-#: ../src/byzanzencodergstreamer.c:156
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "Start der GStreamer-Weiterleitung ist gescheitert"
 
@@ -118,27 +121,32 @@
 msgid "Theora video"
 msgstr "Theora-Video"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzencoderwebm.c:38
+#| msgid "Theora video"
+msgid "WebM video"
+msgstr "WebM-Video"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "Ganzen _Bildschirm aufzeichnen"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
-msgstr "Ganzen Bildschirm aufnehmen"
+msgstr "Ganzen Bildschirm aufzeichnen"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "_Aufzuzeichnenden Bereich ausw?hlen"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Aufzuzeichnenden Bereich ausw?hlen"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "_Fenster zum Aufzeichnen ausw?hlen"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Fenster zum Aufzeichnen ausw?hlen"
 
@@ -150,17 +158,8 @@
 msgid "Unsupported byte order"
 msgstr "Nicht unterst?tzte Byte-Reihenfolge"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Byzanz-Fabrik"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Desktop-Rekorder"
-
 #: ../src/playback.c:37
 #, c-format
-#| msgid "usage: %s [OPTIONS] filename\n"
 msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
 msgstr "Aufruf: %s [OPTIONEN] EINGABEDATEI AUSGABEDATEI\n"
 
@@ -170,10 +169,10 @@
 msgstr "           %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
+msgid "process a Byzanz debug recording"
 msgstr "eine Fehlerdiagnoseaufzeichnung von Byzanz verarbeiten"
 
-#: ../src/playback.c:84 ../src/record.c:140
+#: ../src/playback.c:84 ../src/record.c:143
 #, c-format
 msgid "Wrong option: %s\n"
 msgstr "Falsche Option: %s\n"
@@ -196,7 +195,7 @@
 
 #: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
-msgstr "X Koordinate des aufzuzeichnenden Rechtecks"
+msgstr "X-Koordinate des aufzuzeichnenden Rechtecks"
 
 #: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
 msgid "PIXEL"
@@ -204,7 +203,7 @@
 
 #: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
-msgstr "Y Koordinate des aufzuzeichnenden Rechtecks"
+msgstr "Y-Koordinate des aufzuzeichnenden Rechtecks"
 
 #: ../src/record.c:43
 msgid "Width of recording rectangle"
@@ -241,15 +240,21 @@
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "Aufzeichnung beginnt. Sie wird %d Sekunden dauern ?\n"
 
-#: ../src/record.c:132
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "Zeichnen Sie Ihre Arbeitsfl?che auf"
 
-#: ../src/record.c:149
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "Angegebener Bereich befindet sich au?erhalb der Arbeitsfl?che.\n"
 
+#~ msgid "Byzanz Factory"
+#~ msgstr "Byzanz-Fabrik"
+
+#~ msgid "Desktop Recorder"
+#~ msgstr "Desktop-Rekorder"
+
 #~ msgid ""
 #~ "If set, Byzanz will record the mouse cursor. While useful, recording the "
 #~ "mouse cursor results in bigger files and should therefore be used with "
diff -Nru byzanz-0.2.2/po/el.po byzanz-0.2.2+git22.10.2011/po/el.po
--- byzanz-0.2.2/po/el.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/el.po	2011-10-22 12:56:33.000000000 +0200
@@ -4,15 +4,17 @@
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Giannis Katampirhs <giannis1_86 at hotmail.com>, 2008.
-# Kostas Papadimas <pkst at gnome.org>, 2008.
+# Kostas Papadimas <pkst at gnome.org>, 2008, 2010.
+#
 msgid ""
 msgstr ""
 "Project-Id-Version: el\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2008-03-24 09:17+0200\n"
-"PO-Revision-Date: 2008-03-24 09:16+0200\n"
+"POT-Creation-Date: 2011-01-13 21:08+0200\n"
+"PO-Revision-Date: 2011-01-13 21:09+0200\n"
 "Last-Translator: Kostas Papadimas <pkst at gnome.org>\n"
 "Language-Team: Greek <team at gnome.gr>\n"
+"Language: el\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -22,205 +24,284 @@
 "X-Generator: KBabel 1.11.4\n"
 
 #: ../src/byzanz.schemas.in.h:1
-msgid "Directory to save in"
-msgstr "????????? ???????????"
+msgid "If set, Byzanz will record audio from the default audio device if the format supports it. This allows narrating along with the recording."
+msgstr "?? ?????????????, ?? Byzanz ?? ??????????????? ??????? ???? ??? ??? ????????????? ??????? ????, ?? ????????????? ??? ??? ????? ??? ????? ????????. ???? ????????? ??? ??????? ????????? ?????????? ?? ??? ???????"
 
 #: ../src/byzanz.schemas.in.h:2
-msgid ""
-"If set, Byzanz will record the mouse cursor. While useful, recording the "
-"mouse cursor results in bigger files and should therefore be used with care."
-msgstr ""
-"?? ???????, ?? byzanz ?? ?????????? ?? ?????? ??? ?????????. ??? ????? "
-"???????, ? ??????? ??? ??????  ??? ????????? ?? ?????????? ?????? ??? ?? "
-"?????? ?? ?????????????? ?? ???????."
-
-#: ../src/byzanz.schemas.in.h:3 ../src/record.c:39
-msgid "Record mouse cursor"
-msgstr "??????? ??? ?????? ??? ?????????"
+#: ../src/byzanzapplet.c:294
+#: ../src/record.c:40
+msgid "Record audio"
+msgstr "???????????"
 
-#: ../src/byzanz.schemas.in.h:4
+#: ../src/byzanz.schemas.in.h:3
 msgid "Recording method"
 msgstr "??????? ????????"
 
+#: ../src/byzanz.schemas.in.h:4
+msgid "Save filename"
+msgstr "?????????? ???????? ???????"
+
 #: ../src/byzanz.schemas.in.h:5
-msgid "This is the directory that Byzanz will default to when saving a file."
-msgstr ""
-"????? ????? ? ????????? ???? ?? ??????? ?? byzanz ?? ??????????? ??? ??????."
+msgid "URI for the filename Byzanz will suggest when starting a recording."
+msgstr "?? URI ??? ?? ????? ??? ??????? ?? ???????? ??? ?? Byzanz ???? ?? ????????? ? ???????."
 
 #: ../src/byzanz.schemas.in.h:6
-msgid ""
-"Use this method as the default method for recording. Must be one of \"screen"
-"\" for recording the whole screen, \"area\" for selecting an area or \"window"
-"\" to select a window."
-msgstr ""
-"?????????????? ???? ?? ?????? ??? ??? ????????????? ?????? ??? ???????. "
-"?????? ?? ????? ??? ??? ???: \"?????\" ??? ??????? ????????? ??? ??????,  "
-"\"???????\" ??? ??????? ???? ???????? ? \"????????\" ??? ??????? ?????????."
-
-#: ../src/byzanzapplet.c:110
-msgid "A file could not be saved."
-msgstr "??? ???? ?????? ? ?????????? ???? ???????."
+msgid "Use this method as the default method for recording. Must be one of \"screen\" for recording the whole screen, \"area\" for selecting an area or \"window\" to select a window."
+msgstr "?????????????? ???? ?? ?????? ??? ??? ????????????? ?????? ??? ???????. ?????? ?? ????? ??? ??? ???: \"?????\" ??? ??????? ????????? ??? ??????,  \"???????\" ??? ??????? ???? ???????? ? \"????????\" ??? ??????? ?????????."
 
-#: ../src/byzanzapplet.c:111
-#, c-format
-msgid ""
-"\"%s\" could not be saved.\n"
-"The error that occured was: %s"
-msgstr ""
-"?? \"%s\" ??? ???? ??????? ?? ???????????.\n"
-"?? ?????? ??? ???????? ???? ?? ????: %s"
+#: ../src/byzanzapplet.c:103
+#: ../src/byzanzapplet.c:268
+msgid "Record your desktop"
+msgstr "??????? ??? ?????????? ???????? ???"
+
+#: ../src/byzanzapplet.c:104
+msgid "Select area to record"
+msgstr "???????? ??? ??????? ??? ?? ?????? ???????"
 
-#: ../src/byzanzapplet.c:175
-msgid "Save Recorded File"
-msgstr "?????????? ??????? ????????"
-
-#: ../src/byzanzapplet.c:224
-msgid "Stop current recording"
+#: ../src/byzanzapplet.c:105
+msgid "End current recording"
 msgstr "??????? ????????? ????????"
 
-#: ../src/byzanzapplet.c:258
-msgid "Cannot start recording."
-msgstr "??? ????? ?????? ? ?????? ??? ????????."
+#: ../src/byzanzapplet.c:106
+msgid "Abort encoding of recording"
+msgstr "??????? ????????????? ??? ????????"
+
+#: ../src/byzanzapplet.c:278
+msgid "All files"
+msgstr "??? ?? ??????"
+
+#: ../src/byzanzapplet.c:368
+msgid "Desktop Session"
+msgstr "???????? ?????????? ????????"
 
-#: ../src/byzanzapplet.c:259 ../src/record.c:131
-#, c-format
-msgid ""
-"Byzanz requires a 24bpp or 32bpp depth for recording. The current resolution "
-"is set to %dbpp."
-msgstr ""
-"?? byzanz ??????? ??? ????? 24bpp ? 32bpp ??? ???????. ? ???????? ??????? "
-"?????? ????? ??????????? ?? %dbpp."
-
-#: ../src/byzanzapplet.c:369 ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "??????????? ?????????? ????????"
-
-#: ../src/byzanzapplet.c:372 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:371
 msgid "Record what's happening on your desktop"
 msgstr "????????? ??? ????????? ??? ?????????? ???????? ???"
 
-#: ../src/byzanzapplet.c:374
+#: ../src/byzanzapplet.c:373
 msgid "translator-credits"
 msgstr ""
 "???????? ???????????? ????? ??? Gnome\n"
 "\n"
 "??????? ??????????? <giannis1_86 at hotmail.com>"
 
-#: ../src/byzanzapplet.c:441
-msgid "Record _Mouse Cursor"
-msgstr "??????? ?????? _?????????"
-
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:378
 msgid "_About"
 msgstr "_????"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzencoder.c:89
+#: ../src/byzanzencodergstreamer.c:118
+msgid "This format does not support recording audio."
+msgstr "???? ? ????? ??? ??????????? ??? ??????? ????."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "?????? ?????????????? Byzanz"
+
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "?????? Flash"
+
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "??? ??????? ?????? ???? ????????????"
+
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "??????? GIF"
+
+#: ../src/byzanzencodergstreamer.c:156
+msgid "Failed to start GStreamer pipeline"
+msgstr "???????? ????????? ??? Gstreamer pipeline"
+
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "?????? Theora"
+
+#: ../src/byzanzselect.c:354
 msgid "Record _Desktop"
 msgstr "??????? ???_??????? ????????"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzselect.c:354
 msgid "Record the entire desktop"
 msgstr "??????? ????????? ??? ?????????? ????????"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:356
 msgid "Record _Area"
 msgstr "??????? ??_??????"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:356
 msgid "Record a selected area of the desktop"
 msgstr "??????? ??????????? ???????? ??? ?????????? ????????"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:358
 msgid "Record _Window"
 msgstr "??????? ????_?????"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:358
 msgid "Record a selected window"
 msgstr "??????? ??????????? ?????????"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "?????????? byzanz"
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "??? ????? ??????? ??? Byzanz"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "?? ?????????????? ????? byte"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "?????: %s [????????] ????? ??????? ??????? ????? ??????? ?????? \n"
+
+#: ../src/playback.c:38
+#: ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
+
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr "??????????? ???????? ?????????????? ??? Byzanz"
+
+#: ../src/playback.c:84
+#: ../src/record.c:140
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "?????????? ???????: %s\n"
 
-#: ../src/record.c:36
+#: ../src/record.c:37
 msgid "Duration of animation (default: 10 seconds)"
 msgstr "???????? ?????????? ??????? (?????????????: 10 ????????????)"
 
-#: ../src/record.c:36 ../src/record.c:37
+#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "SECS"
 msgstr "????????????"
 
-#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "Delay before start (default: 1 second)"
 msgstr "??????????? ???? ??? ?????? (?????????????: 1 ????????????)"
 
-#: ../src/record.c:38
-msgid "Let the animation loop"
-msgstr "?? ??????????? ? ????????? ?????????? ???????"
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "??????? ??? ?????? ??? ?????????"
 
-#: ../src/record.c:40
+#: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
 msgstr "???????????? ? ??? ?????????? ??? ???????"
 
-#: ../src/record.c:40 ../src/record.c:41 ../src/record.c:42 ../src/record.c:43
+#: ../src/record.c:41
+#: ../src/record.c:42
+#: ../src/record.c:43
+#: ../src/record.c:44
 msgid "PIXEL"
 msgstr "??????????????"
 
-#: ../src/record.c:41
+#: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
 msgstr "???????????? ? ??? ?????????? ??? ???????"
 
-#: ../src/record.c:42
+#: ../src/record.c:43
 msgid "Width of recording rectangle"
 msgstr "?????? ??? ?????????? ????????"
 
-#: ../src/record.c:43
+#: ../src/record.c:44
 msgid "Height of recording rectangle"
 msgstr "???? ??? ?????????? ????????"
 
-#: ../src/record.c:44
+#: ../src/record.c:45
 msgid "Be verbose"
 msgstr "????????????"
 
-#: ../src/record.c:66
+#: ../src/record.c:67
 #, c-format
 msgid "usage: %s [OPTIONS] filename\n"
 msgstr "?????: %s [????????] ????? ???????\n"
 
-#: ../src/record.c:67
+#: ../src/record.c:77
 #, c-format
-msgid "       %s --help\n"
-msgstr "       %s --help\n"
-
-#: ../src/record.c:73
-msgid "Recording done. Cleaning up...\n"
-msgstr "? ??????? ????????????. ??????? ??????????...\n"
+msgid "Error during recording: %s\n"
+msgstr "?????? ???? ??? ???????: %s\n"
 
 #: ../src/record.c:83
+msgid "Recording done.\n"
+msgstr "? ??????? ?????.\n"
+
+#: ../src/record.c:91
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "? ??????? ????????????. ??????? ?????????? ?????????????...\n"
+
+#: ../src/record.c:100
 #, c-format
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "? ??????? ??????. ?? ????????? %d ????????????...\n"
 
-#: ../src/record.c:93
-msgid "Preparing recording. Will start in 1 second...\n"
-msgstr "???????????? ??? ???????. ?? ????????? ?? 1 ????????????...\n"
-
-#: ../src/record.c:116
+#: ../src/record.c:132
 msgid "record your current desktop session"
 msgstr "??????? ??? ????????? ????????? ??? ?????????? ???????? ???"
 
-#: ../src/record.c:120
+#: ../src/record.c:149
 #, c-format
-msgid "Wrong option: %s\n"
-msgstr "?????????? ???????: %s\n"
+msgid "Given area is not inside desktop.\n"
+msgstr "? ??????? ??? ??????? ????? ????? ?????????? ????????.\n"
 
-#: ../src/record.c:138
-#, c-format
-msgid ""
-"Could not prepare recording.\n"
-"Most likely the Damage extension is not available on the X server or the "
-"file \"%s\" is not writable.\n"
-msgstr ""
-"??? ???? ?????? ? ???????????? ??? ???????.\n"
-"?????????? ? ???????? ?????? ??? ????? ????????? ???? ??????????? X ? ?? "
-"?????? \"%s\" ??? ???? ????? ????????.\n"
+#~ msgid "Directory to save in"
+#~ msgstr "????????? ???????????"
+
+#~ msgid ""
+#~ "If set, Byzanz will record the mouse cursor. While useful, recording the "
+#~ "mouse cursor results in bigger files and should therefore be used with "
+#~ "care."
+#~ msgstr ""
+#~ "?? ???????, ?? byzanz ?? ?????????? ?? ?????? ??? ?????????. ??? ????? "
+#~ "???????, ? ??????? ??? ??????  ??? ????????? ?? ?????????? ?????? ??? ?? "
+#~ "?????? ?? ?????????????? ?? ???????."
+
+#~ msgid ""
+#~ "This is the directory that Byzanz will default to when saving a file."
+#~ msgstr ""
+#~ "????? ????? ? ????????? ???? ?? ??????? ?? byzanz ?? ??????????? ??? "
+#~ "??????."
+
+#~ msgid "A file could not be saved."
+#~ msgstr "??? ???? ?????? ? ?????????? ???? ???????."
+
+#~ msgid ""
+#~ "\"%s\" could not be saved.\n"
+#~ "The error that occured was: %s"
+#~ msgstr ""
+#~ "?? \"%s\" ??? ???? ??????? ?? ???????????.\n"
+#~ "?? ?????? ??? ???????? ???? ?? ????: %s"
+
+#~ msgid "Save Recorded File"
+#~ msgstr "?????????? ??????? ????????"
+
+#~ msgid ""
+#~ "Byzanz requires a 24bpp or 32bpp depth for recording. The current "
+#~ "resolution is set to %dbpp."
+#~ msgstr ""
+#~ "?? byzanz ??????? ??? ????? 24bpp ? 32bpp ??? ???????. ? ???????? ??????? "
+#~ "?????? ????? ??????????? ?? %dbpp."
+
+#~ msgid "Record _Mouse Cursor"
+#~ msgstr "??????? ?????? _?????????"
+
+#~ msgid "Byzanz Factory"
+#~ msgstr "?????????? byzanz"
+
+#~ msgid "Let the animation loop"
+#~ msgstr "?? ??????????? ? ????????? ?????????? ???????"
+
+#~ msgid "Preparing recording. Will start in 1 second...\n"
+#~ msgstr "???????????? ??? ???????. ?? ????????? ?? 1 ????????????...\n"
+
+#~ msgid ""
+#~ "Could not prepare recording.\n"
+#~ "Most likely the Damage extension is not available on the X server or the "
+#~ "file \"%s\" is not writable.\n"
+#~ msgstr ""
+#~ "??? ???? ?????? ? ???????????? ??? ???????.\n"
+#~ "?????????? ? ???????? ?????? ??? ????? ????????? ???? ??????????? X ? ?? "
+#~ "?????? \"%s\" ??? ???? ????? ????????.\n"
diff -Nru byzanz-0.2.2/po/es.po byzanz-0.2.2+git22.10.2011/po/es.po
--- byzanz-0.2.2/po/es.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/es.po	2011-10-22 12:56:33.000000000 +0200
@@ -4,14 +4,16 @@
 #
 # Antonio Ognio <gnrfan at gnrfan.org>, 2006.
 # Jorge Gonz?lez <jorgegonz at svn.gnome.org>, 2007, 2008, 2009, 2010.
+# Daniel Mustieles <daniel.mustieles at gmail.com>, 2011.
+#
 msgid ""
 msgstr ""
 "Project-Id-Version: byzanz.HEAD.es\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
 "product=byzanz&component=general\n"
-"POT-Creation-Date: 2010-02-20 11:13+0000\n"
-"PO-Revision-Date: 2010-02-22 21:07+0100\n"
-"Last-Translator: Jorge Gonz?lez <jorgegonz at svn.gnome.org>\n"
+"POT-Creation-Date: 2011-02-21 18:35+0000\n"
+"PO-Revision-Date: 2011-02-26 12:05+0100\n"
+"Last-Translator: Daniel Mustieles <daniel.mustieles at gmail.com>\n"
 "Language-Team: Espa?ol <gnome-es-list at gnome.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -28,7 +30,7 @@
 "de sonido si el formato lo soporta. Esto permite narraci?n junto con la "
 "grabaci?n."
 
-#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
 msgid "Record audio"
 msgstr "Grabar sonido"
 
@@ -54,45 +56,45 @@
 "\"pantalla\" para guardar toda la pantalla, \"area\" para seleccionar un "
 "?rea ? \"ventana\" para seleccionar una ventana."
 
-#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "Grabe su escritorio"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "Seleccionar ?rea para grabar"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "Finalizar la grabaci?n actual"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "Abortar la codificaci?n de la grabaci?n"
 
-#: ../src/byzanzapplet.c:278
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "Todos los archivos"
 
-#: ../src/byzanzapplet.c:368
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "Sesi?n de escritorio"
 
-#: ../src/byzanzapplet.c:371 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Grabe lo que esta sucediendo en su escritorio"
 
-#: ../src/byzanzapplet.c:373
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr ""
 "Jorge Gonz?lez <jorgegonz at svn.gnome.org>, 2007-2010\n"
 "Antonio Ognio <gnrfan at gnrfan.org>, 2006."
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "Acerca _de"
 
-#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
 msgid "This format does not support recording audio."
 msgstr "Este formato no soporta grabaci?n de sonido"
 
@@ -112,7 +114,7 @@
 msgid "GIF images"
 msgstr "Im?genes GIF"
 
-#: ../src/byzanzencodergstreamer.c:156
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "Fall? al iniciar la tuber?a de GStreamer"
 
@@ -120,32 +122,36 @@
 msgid "Theora video"
 msgstr "V?deo Theora"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzencoderwebm.c:38
+#| msgid "Theora video"
+msgid "WebM video"
+msgstr "V?deo WebM"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "Guardar toda la _pantalla"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "Guardar toda la pantalla"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "Grabar un ?_rea"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Grabar el ?rea seleccionada del escritorio"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "Seleccione la _ventana a grabar"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Seleccione la ventana a grabar"
 
 #: ../src/byzanzserialize.c:89
-#| msgid "Cannot start recording."
 msgid "Not a Byzanz recording"
 msgstr "No es una grabaci?n de Byzanz"
 
@@ -153,17 +159,8 @@
 msgid "Unsupported byte order"
 msgstr "Orden de bytes no soportado"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "F?brica de Byzanz"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Grabador de escritorio"
-
 #: ../src/playback.c:37
 #, c-format
-#| msgid "usage: %s [OPTIONS] filename\n"
 msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
 msgstr "uso: %s [OPCIONES] ARCHIVO-DE-ENTRADA ARCHIVO-DE-SALIDA\n"
 
@@ -173,10 +170,10 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
-msgstr "procesar una grabaci?n de depuraci?n de byzanz"
+msgid "process a Byzanz debug recording"
+msgstr "procesar una grabaci?n de depuraci?n de Byzanz"
 
-#: ../src/playback.c:84 ../src/record.c:140
+#: ../src/playback.c:84 ../src/record.c:143
 #, c-format
 msgid "Wrong option: %s\n"
 msgstr "Opci?n incorrecta: %s\n"
@@ -244,15 +241,21 @@
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "Iniciando grabaci?n. Se grabar?n %d segundos...\n"
 
-#: ../src/record.c:132
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "grabar su sesi?n actual de escritorio"
 
-#: ../src/record.c:149
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "El ?rea proporcionado no est? dentro del escritorio.\n"
 
+#~ msgid "Byzanz Factory"
+#~ msgstr "F?brica de Byzanz"
+
+#~ msgid "Desktop Recorder"
+#~ msgstr "Grabador de escritorio"
+
 #~ msgid ""
 #~ "If set, Byzanz will record the mouse cursor. While useful, recording the "
 #~ "mouse cursor results in bigger files and should therefore be used with "
diff -Nru byzanz-0.2.2/po/fr.po byzanz-0.2.2+git22.10.2011/po/fr.po
--- byzanz-0.2.2/po/fr.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/fr.po	2011-10-22 12:56:33.000000000 +0200
@@ -11,7 +11,7 @@
 "Project-Id-Version: Byzanz\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
 "product=byzanz&component=general\n"
-"POT-Creation-Date: 2010-02-20 11:13+0000\n"
+"POT-Creation-Date: 2011-02-21 18:35+0000\n"
 "PO-Revision-Date: 2010-02-21 21:00+0100\n"
 "Last-Translator: Claude Paroz <claude at 2xlibre.net>\n"
 "Language-Team: GNOME French Team <gnomefr at traduc.org>\n"
@@ -25,10 +25,11 @@
 "If set, Byzanz will record audio from the default audio device if the format "
 "supports it. This allows narrating along with the recording."
 msgstr ""
-"Si d?fini, Byzanz enregistre le son ? partir du p?riph?rique audio par d?faut "
-"si le format le prend en charge. Cela permet de commenter la s?quence enregistr?e."
+"Si d?fini, Byzanz enregistre le son ? partir du p?riph?rique audio par "
+"d?faut si le format le prend en charge. Cela permet de commenter la s?quence "
+"enregistr?e."
 
-#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
 msgid "Record audio"
 msgstr "Enregistrer le son"
 
@@ -57,46 +58,46 @@
 "l'?cran entier, ??area?? pour choisir une zone de l'?cran ou ??window?? pour "
 "enregistrer une fen?tre."
 
-#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "Enregistrer votre bureau"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "S?lectionner une zone ? enregistrer"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "Arr?ter l'enregistrement actuel"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "Interrompre le codage de l'enregistrement"
 
-#: ../src/byzanzapplet.c:278
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "Tous les fichiers"
 
-#: ../src/byzanzapplet.c:368
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "Session de bureau"
 
-#: ../src/byzanzapplet.c:371 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Enregistrer ce qui se passe sur votre bureau"
 
-#: ../src/byzanzapplet.c:373
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr ""
 "Jonathan Ernst <jonathan at ernstfamily.ch>\n"
 "Robert-Andr? Mauchin <zebob.m at gmail.com>\n"
 "Claude Paroz <claude at 2xlibre.net>"
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "? _propos"
 
-#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
 msgid "This format does not support recording audio."
 msgstr "Ce format ne prend pas en charge l'enregistrement audio."
 
@@ -116,7 +117,7 @@
 msgid "GIF images"
 msgstr "Images GIF"
 
-#: ../src/byzanzencodergstreamer.c:156
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "Impossibel de lancer le pipeline GStreamer"
 
@@ -124,27 +125,31 @@
 msgid "Theora video"
 msgstr "Vid?o Theora"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "Vid?o WebM"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "Enregistrer le _bureau"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "Enregistre la totalit? du bureau"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "_Zone ? enregistrer"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Enregistre une zone s?lectionn?e du bureau"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "_Fen?tre ? enregistrer"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Enregistre une fen?tre s?lectionn?e"
 
@@ -156,14 +161,6 @@
 msgid "Unsupported byte order"
 msgstr "Ordre des octets non pris en charge"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Usine Byzanz"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Enregistreur de bureau"
-
 #: ../src/playback.c:37
 #, c-format
 msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
@@ -175,10 +172,10 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
+msgid "process a Byzanz debug recording"
 msgstr "traite un enregistrement de d?bogage Byzanz"
 
-#: ../src/playback.c:84 ../src/record.c:140
+#: ../src/playback.c:84 ../src/record.c:143
 #, c-format
 msgid "Wrong option: %s\n"
 msgstr "Option erron?e?: %s\n"
@@ -246,14 +243,20 @@
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "D?marrage de l'enregistrement. %d secondes seront enregistr?es...\n"
 
-#: ../src/record.c:132
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "enregistre votre session de bureau actuelle"
 
-#: ../src/record.c:149
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "La zone indiqu?e ne se trouve pas ? l'int?rieur du bureau.\n"
 
+#~ msgid "Byzanz Factory"
+#~ msgstr "Usine Byzanz"
+
+#~ msgid "Desktop Recorder"
+#~ msgstr "Enregistreur de bureau"
+
 #~ msgid "Premature end of GStreamer pipeline"
 #~ msgstr "Fin pr?matur?e du pipeline GStreamer"
diff -Nru byzanz-0.2.2/po/gl.po byzanz-0.2.2+git22.10.2011/po/gl.po
--- byzanz-0.2.2/po/gl.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/gl.po	2011-10-22 12:56:33.000000000 +0200
@@ -173,8 +173,8 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
-msgstr "procesa unha gravaci?n de depuraci?n de byzanz"
+msgid "process a Byzanz debug recording"
+msgstr "procesa unha gravaci?n de depuraci?n de Byzanz"
 
 #: ../src/playback.c:84 ../src/record.c:140
 #, c-format
diff -Nru byzanz-0.2.2/po/hu.po byzanz-0.2.2+git22.10.2011/po/hu.po
--- byzanz-0.2.2/po/hu.po	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/po/hu.po	2011-10-22 12:56:33.000000000 +0200
@@ -8,10 +8,11 @@
 msgstr ""
 "Project-Id-Version: byzanz master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2010-06-08 13:06+0200\n"
+"POT-Creation-Date: 2011-05-28 23:20+0200\n"
 "PO-Revision-Date: 2010-06-08 13:05+0200\n"
 "Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n"
 "Language-Team: Hungarian <gnome at fsf dot hu>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -27,7 +28,7 @@
 "hangeszk?zr?l, ha a form?tum t?mogatja azt. Ez lehet?v? teszi a felv?tel "
 "narr?l?s?t."
 
-#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
 msgid "Record audio"
 msgstr "Hang felv?tele"
 
@@ -54,45 +55,45 @@
 "k?perny? felv?tele), ?area? (egy kijel?lt ter?let) vagy ?window? (egy "
 "kijel?lt ablak)."
 
-#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "Asztal felv?tele"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "V?lassza ki a felvenni k?v?nt ter?letet"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "Felv?tel le?ll?t?sa"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "Felv?tel k?dol?s?nak megszak?t?sa"
 
-#: ../src/byzanzapplet.c:278
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "Minden f?jl"
 
-#: ../src/byzanzapplet.c:368
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "Asztali munkamenet"
 
-#: ../src/byzanzapplet.c:371 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Felv?tel k?sz?t?se az asztal?r?l"
 
-#: ../src/byzanzapplet.c:373
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr ""
 "Kelemen G?bor <kelemeng at gnome.hu>\n"
 "Magyar B?lint <magyarbalint at indi.hu>"
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "_N?vjegy"
 
-#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
 msgid "This format does not support recording audio."
 msgstr "Ez a form?tum nem t?mogatja hang felv?tel?t."
 
@@ -112,7 +113,7 @@
 msgid "GIF images"
 msgstr "GIF k?pek"
 
-#: ../src/byzanzencodergstreamer.c:156
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "A GStreamer adatcsatorna ind?t?sa meghi?sult"
 
@@ -120,27 +121,31 @@
 msgid "Theora video"
 msgstr "Theora vide?"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "WebM vide?"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "_Asztal felv?tele"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "A teljes asztal felv?tele"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "_Ter?let felv?tele"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Az asztal egy kijel?lt ter?let?nek felv?tele"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "_Ablak felv?tele"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Egy kiv?lasztott ablak felv?tele"
 
@@ -152,14 +157,6 @@
 msgid "Unsupported byte order"
 msgstr "Nem t?mogatott b?jtsorrend"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Byzanz factory"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Asztalfelvev?"
-
 #: ../src/playback.c:37
 #, c-format
 msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
@@ -171,10 +168,10 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
-msgstr "byzanz hibakeres?si felv?tel feldolgoz?sa"
+msgid "process a Byzanz debug recording"
+msgstr "Byzanz hibakeres?si felv?tel feldolgoz?sa"
 
-#: ../src/playback.c:84 ../src/record.c:140
+#: ../src/playback.c:84 ../src/record.c:143
 #, c-format
 msgid "Wrong option: %s\n"
 msgstr "Hib?s kapcsol?: %s\n"
@@ -242,11 +239,11 @@
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "A felv?tel megkezd?d?tt. %d m?sodperc r?gz?t?se?\n"
 
-#: ../src/record.c:132
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "a jelenlegi asztali munkamenet felv?tele"
 
-#: ../src/record.c:149
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "A megadott ter?let nem az asztalon bel?l van.\n"
diff -Nru byzanz-0.2.2/po/id.po byzanz-0.2.2+git22.10.2011/po/id.po
--- byzanz-0.2.2/po/id.po	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/po/id.po	2011-10-22 12:56:33.000000000 +0200
@@ -164,8 +164,8 @@
 msgstr "       %s --bantuan\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
-msgstr "proses suatu rekaman awa kutu byzanz"
+msgid "process a Byzanz debug recording"
+msgstr "proses suatu rekaman awa kutu Byzanz"
 
 #: ../src/playback.c:84
 #: ../src/record.c:140
diff -Nru byzanz-0.2.2/po/it.po byzanz-0.2.2+git22.10.2011/po/it.po
--- byzanz-0.2.2/po/it.po	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/po/it.po	2011-10-22 12:56:33.000000000 +0200
@@ -171,7 +171,7 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
+msgid "process a Byzanz debug recording"
 msgstr "elabora una registrazione di debug di Byzanz"
 
 #: ../src/playback.c:84 ../src/record.c:140
diff -Nru byzanz-0.2.2/po/lv.po byzanz-0.2.2+git22.10.2011/po/lv.po
--- byzanz-0.2.2/po/lv.po	1970-01-01 01:00:00.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/lv.po	2011-10-22 12:56:33.000000000 +0200
@@ -0,0 +1,246 @@
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# R?dofls Mazurs <rudolfs.mazurs at gmail.com>, 2011.
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug."
+"cgi?product=byzanz&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2011-09-01 13:24+0000\n"
+"PO-Revision-Date: 2011-09-30 01:23+0300\n"
+"Last-Translator: R?dofls Mazurs <rudolfs.mazurs at gmail.com>\n"
+"Language-Team: Latvian <lata-l10n at googlegroups.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: lv\n"
+"X-Generator: Lokalize 1.2\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
+"2);\n"
+
+#: ../src/byzanz.schemas.in.h:1
+msgid ""
+"If set, Byzanz will record audio from the default audio device if the format "
+"supports it. This allows narrating along with the recording."
+msgstr ""
+"Ja iestat?ts, Byzanz ierakst?s audio no noklus?t?s audio ier?ces, ja form?ts "
+"to atbalsta. Tas ?aus ierakstam pievienot st?st?jumu."
+
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
+msgid "Record audio"
+msgstr "Ierakst?t audio"
+
+#: ../src/byzanz.schemas.in.h:3
+msgid "Recording method"
+msgstr "Ierakst??anas metode"
+
+#: ../src/byzanz.schemas.in.h:4
+msgid "Save filename"
+msgstr "Saglab?t faila nosaukumu"
+
+#: ../src/byzanz.schemas.in.h:5
+msgid "URI for the filename Byzanz will suggest when starting a recording."
+msgstr "URI faila nosaukumam, ko pied?v?s Byzanz, kad s?k ierakst??anu."
+
+#: ../src/byzanz.schemas.in.h:6
+msgid ""
+"Use this method as the default method for recording. Must be one of \"screen"
+"\" for recording the whole screen, \"area\" for selecting an area or \"window"
+"\" to select a window."
+msgstr ""
+"Izmantot ?o metodi k? noklus?to metodi ierakst??anai. J?b?t \"screen\", lai "
+"ierakst?tu visu ekr?nu; \"area\", lai ierakst?tu k?du laukumu vai \"window\", "
+"lai ierakst?tu logu."
+
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
+msgid "Record your desktop"
+msgstr "Ieraksti savu darbvirsmu"
+
+#: ../src/byzanzapplet.c:103
+msgid "Select area to record"
+msgstr "Izv?l?ties laukumu, ko ierakst?t"
+
+#: ../src/byzanzapplet.c:104
+msgid "End current recording"
+msgstr "Beigt pa?reiz?jo ierakstu"
+
+#: ../src/byzanzapplet.c:105
+msgid "Abort encoding of recording"
+msgstr "Par ieraksta iekod??anu"
+
+#: ../src/byzanzapplet.c:276
+msgid "All files"
+msgstr "Visi faili"
+
+#: ../src/byzanzapplet.c:366
+msgid "Desktop Session"
+msgstr "Darbvirsmas sesija"
+
+#: ../src/byzanzapplet.c:369
+msgid "Record what's happening on your desktop"
+msgstr "Ierakstiet to, kas notiek uz j?su darbvirsmas"
+
+#: ../src/byzanzapplet.c:371
+msgid "translator-credits"
+msgstr "R?dolfs Mazurs <rudolfs.mazurs at gmail.com>"
+
+#: ../src/byzanzapplet.c:376
+msgid "_About"
+msgstr "P_ar"
+
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
+msgid "This format does not support recording audio."
+msgstr "?is form?ts neatbalsta audio ierakst??anu."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "Byzanz atk??do?anas faili"
+
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "Flash video"
+
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "Nav att?la, ko iekod?t."
+
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "GIF att?li"
+
+#: ../src/byzanzencodergstreamer.c:165
+msgid "Failed to start GStreamer pipeline"
+msgstr "Neizdev?s start?t GStreamer konveijeru"
+
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "Theora video"
+
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "WebM video"
+
+#: ../src/byzanzselect.c:357
+msgid "Record _Desktop"
+msgstr "Ierakst?t _darbvirsmu"
+
+#: ../src/byzanzselect.c:357
+msgid "Record the entire desktop"
+msgstr "Ierakst?t visu darbvirsmu"
+
+#: ../src/byzanzselect.c:359
+msgid "Record _Area"
+msgstr "Ier_akst?t laukumu"
+
+#: ../src/byzanzselect.c:359
+msgid "Record a selected area of the desktop"
+msgstr "Ierakst?t izv?l?to darbvirsmas laukumu"
+
+#: ../src/byzanzselect.c:361
+msgid "Record _Window"
+msgstr "Ierakst?t _logu"
+
+#: ../src/byzanzselect.c:361
+msgid "Record a selected window"
+msgstr "Ierakst?t izv?l?to logu"
+
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "Nav Byzanz ieraksts"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "Neatbalst?ta baitu sec?ba"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "lieto?ana: %s [OPCIJAS] INFILE OUTFILE\n"
+
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
+
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr "apstr?d?t Byzanz atk??do?anas ierakstu"
+
+#: ../src/playback.c:84 ../src/record.c:143
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "Nepareiza opcija: %s\n"
+
+#: ../src/record.c:37
+msgid "Duration of animation (default: 10 seconds)"
+msgstr "Anim?cijas ilgums (noklus?tais: 10 sekundes)"
+
+#: ../src/record.c:37 ../src/record.c:38
+msgid "SECS"
+msgstr "SEK"
+
+#: ../src/record.c:38
+msgid "Delay before start (default: 1 second)"
+msgstr "Aizture pirms s?kt (noklus?tais: 1 sekunde)"
+
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "Ierakst?t peles r?d?t?ju"
+
+#: ../src/record.c:41
+msgid "X coordinate of rectangle to record"
+msgstr "X koordin?ta taisnst?ra ierakstam"
+
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
+msgid "PIXEL"
+msgstr "PIKSELIS"
+
+#: ../src/record.c:42
+msgid "Y coordinate of rectangle to record"
+msgstr "Y koordin?ta taisnst?ra ierakstam"
+
+#: ../src/record.c:43
+msgid "Width of recording rectangle"
+msgstr "Taisnst?ra ieraksta platums"
+
+#: ../src/record.c:44
+msgid "Height of recording rectangle"
+msgstr "Taisnst?ra ieraksta augstums"
+
+#: ../src/record.c:45
+msgid "Be verbose"
+msgstr "B?t detaliz?t?kam"
+
+#: ../src/record.c:67
+#, c-format
+msgid "usage: %s [OPTIONS] filename\n"
+msgstr "lieto?ana: %s [OPCIJAS] faila nosaukums \n"
+
+#: ../src/record.c:77
+#, c-format
+msgid "Error during recording: %s\n"
+msgstr "K??da ierakstot: %s\n"
+
+#: ../src/record.c:83
+msgid "Recording done.\n"
+msgstr "Ierakst??ana pabeigta.\n"
+
+#: ../src/record.c:91
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "Ierakst??ana pabeigta. Pabeidz iekod??anu...\n"
+
+#: ../src/record.c:100
+#, c-format
+msgid "Recording starts. Will record %d seconds...\n"
+msgstr "Ierakst??ana s?kas. Ierakst?s %d sekundes...\n"
+
+#: ../src/record.c:135
+msgid "record your current desktop session"
+msgstr "ierakst?t j?su pa?reiz?ju darbvirsmas sesiju"
+
+#: ../src/record.c:152
+#, c-format
+msgid "Given area is not inside desktop.\n"
+msgstr "Dotais laukums neatrodas j?su darbvirsm?.\n"
+
diff -Nru byzanz-0.2.2/po/nb.po byzanz-0.2.2+git22.10.2011/po/nb.po
--- byzanz-0.2.2/po/nb.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/nb.po	2011-10-22 12:56:33.000000000 +0200
@@ -1,40 +1,41 @@
-# Norwegian bokm?l translation of pitivi.
+# Norwegian bokm?l translation of byzanz.
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the pitivi package.
-# Kjartan Maraas <kmaraas at gnome.org>, 2008.
+# Kjartan Maraas <kmaraas at gnome.org>, 2008, 2009, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: pitivi 0.1\n"
+"Project-Id-Version: byzanz 0.x\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2008-10-08 22:22+0200\n"
-"PO-Revision-Date: 2008-10-08 22:24+0200\n"
+"POT-Creation-Date: 2010-09-05 19:21+0200\n"
+"PO-Revision-Date: 2010-09-05 19:25+0200\n"
 "Last-Translator: Kjartan Maraas <kmaraas at gnome.org>\n"
 "Language-Team: Norwegian bokmal <i18n-nb at lister.ping.uio.no>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: ../src/byzanz.schemas.in.h:1
-msgid "Directory to save in"
-msgstr "Katalog for lagring"
-
-#: ../src/byzanz.schemas.in.h:2
 msgid ""
-"If set, Byzanz will record the mouse cursor. While useful, recording the "
-"mouse cursor results in bigger files and should therefore be used with care."
+"If set, Byzanz will record audio from the default audio device if the format "
+"supports it. This allows narrating along with the recording."
 msgstr ""
 
-#: ../src/byzanz.schemas.in.h:3 ../src/record.c:39
-msgid "Record mouse cursor"
-msgstr "Ta opp muspeker"
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+msgid "Record audio"
+msgstr "Ta opp lyd"
 
-#: ../src/byzanz.schemas.in.h:4
+#: ../src/byzanz.schemas.in.h:3
 msgid "Recording method"
 msgstr "Opptaksmetode"
 
+#: ../src/byzanz.schemas.in.h:4
+msgid "Save filename"
+msgstr "Lagre filnavn"
+
 #: ../src/byzanz.schemas.in.h:5
-msgid "This is the directory that Byzanz will default to when saving a file."
+msgid "URI for the filename Byzanz will suggest when starting a recording."
 msgstr ""
 
 #: ../src/byzanz.schemas.in.h:6
@@ -44,165 +45,189 @@
 "\" to select a window."
 msgstr ""
 
-#: ../src/byzanzapplet.c:110
-msgid "A file could not be saved."
-msgstr ""
+#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
+msgid "Record your desktop"
+msgstr "Ta opp skrivebord"
+
+#: ../src/byzanzapplet.c:104
+msgid "Select area to record"
+msgstr "Velg omr?de som skal tas opp"
+
+#: ../src/byzanzapplet.c:105
+msgid "End current recording"
+msgstr "Avslutt opptak"
+
+#: ../src/byzanzapplet.c:106
+msgid "Abort encoding of recording"
+msgstr "Avbryt koding av opptak"
+
+#: ../src/byzanzapplet.c:278
+msgid "All files"
+msgstr "Alle filer"
+
+#: ../src/byzanzapplet.c:368
+msgid "Desktop Session"
+msgstr "Skrivebordssesjon"
 
-#: ../src/byzanzapplet.c:111
-#, c-format
-msgid ""
-"\"%s\" could not be saved.\n"
-"The error that occured was: %s"
-msgstr ""
+#: ../src/byzanzapplet.c:371
+msgid "Record what's happening on your desktop"
+msgstr "Ta opp det som skjer p? ditt skrivebord"
 
-#: ../src/byzanzapplet.c:175
-msgid "Save Recorded File"
-msgstr "Lagre fil med opptak"
+#: ../src/byzanzapplet.c:373
+msgid "translator-credits"
+msgstr "Kjartan Maraas <kmaraas at gnome.org>"
 
-#: ../src/byzanzapplet.c:224
-msgid "Stop current recording"
-msgstr "Stopp aktivt opptak"
+#: ../src/byzanzapplet.c:378
+msgid "_About"
+msgstr "_Om"
 
-#: ../src/byzanzapplet.c:258
-msgid "Cannot start recording."
-msgstr "Kan ikke starte opptak."
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+msgid "This format does not support recording audio."
+msgstr "Dette formatet st?tter ikke opptak av lyd."
 
-#: ../src/byzanzapplet.c:259 ../src/record.c:135
-#, c-format
-msgid ""
-"Byzanz requires a 24bpp or 32bpp depth for recording. The current resolution "
-"is set to %dbpp."
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
 msgstr ""
 
-#: ../src/byzanzapplet.c:369 ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Opptak av skrivebordet"
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "Flash-video"
 
-#: ../src/byzanzapplet.c:372 ../src/ByzanzApplet.server.in.in.h:3
-#, fuzzy
-msgid "Record what's happening on your desktop"
-msgstr "Tar opp en video av din skrivebordssesjon"
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "Ingen bilder ? kode."
 
-#: ../src/byzanzapplet.c:374
-msgid "translator-credits"
-msgstr "Kjartan Maraas <kmaraas at gnome.org>"
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "GIF-bilder"
 
-#: ../src/byzanzapplet.c:441
-#, fuzzy
-msgid "Record _Mouse Cursor"
-msgstr "Ta opp _muspeker"
+#: ../src/byzanzencodergstreamer.c:156
+msgid "Failed to start GStreamer pipeline"
+msgstr ""
 
-#: ../src/byzanzapplet.xml.h:1
-msgid "_About"
-msgstr "_Om"
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "Theora-video"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzselect.c:354
 msgid "Record _Desktop"
 msgstr "Ta opp skrivebor_d"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzselect.c:354
 msgid "Record the entire desktop"
-msgstr ""
+msgstr "Ta opp hele skrivebordet"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:356
 msgid "Record _Area"
 msgstr "Oppt_aksomr?de"
 
-#: ../src/byzanzselect.c:314
-#, fuzzy
+#: ../src/byzanzselect.c:356
 msgid "Record a selected area of the desktop"
-msgstr "Tar opp en video av din skrivebordssesjon"
+msgstr "Ta opp et utvalgt omr?de p? skrivebordet"
 
-#: ../src/byzanzselect.c:316
-#, fuzzy
+#: ../src/byzanzselect.c:358
 msgid "Record _Window"
-msgstr "Ta opp _lyd"
+msgstr "Ta opp _vindu"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:358
 msgid "Record a selected window"
+msgstr "Ta opp et valgt vindu"
+
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "Ikke et opptak fra Byzanz"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
 msgstr ""
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "bruk: %s [FLAGG] INNFIL UTFIL\n"
+
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
 msgstr ""
 
-#: ../src/record.c:36
-msgid "Duration of animation (default: 10 seconds)"
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
 msgstr ""
 
-#: ../src/record.c:36 ../src/record.c:37
+#: ../src/playback.c:84 ../src/record.c:140
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "Feil flagg: %s\n"
+
+#: ../src/record.c:37
+msgid "Duration of animation (default: 10 seconds)"
+msgstr "Varighet p? animasjonen (forvalg: 10 sekunder)"
+
+#: ../src/record.c:37 ../src/record.c:38
 msgid "SECS"
 msgstr "SEKUNDER"
 
-#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "Delay before start (default: 1 second)"
-msgstr ""
+msgstr "Pause f?r start (forvalg: 1 sekund)"
 
-#: ../src/record.c:38
-msgid "Let the animation loop"
-msgstr ""
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "Ta opp muspeker"
 
-#: ../src/record.c:40
+#: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
 msgstr ""
 
-#: ../src/record.c:40 ../src/record.c:41 ../src/record.c:42 ../src/record.c:43
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
 msgid "PIXEL"
-msgstr ""
+msgstr "PIKSEL"
 
-#: ../src/record.c:41
+#: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
 msgstr ""
 
-#: ../src/record.c:42
+#: ../src/record.c:43
 msgid "Width of recording rectangle"
 msgstr ""
 
-#: ../src/record.c:43
+#: ../src/record.c:44
 msgid "Height of recording rectangle"
 msgstr ""
 
-#: ../src/record.c:44
+#: ../src/record.c:45
 msgid "Be verbose"
 msgstr ""
 
-#: ../src/record.c:66
+#: ../src/record.c:67
 #, c-format
 msgid "usage: %s [OPTIONS] filename\n"
 msgstr ""
 
-#: ../src/record.c:67
+#: ../src/record.c:77
 #, c-format
-msgid "       %s --help\n"
-msgstr ""
-
-#: ../src/record.c:73
-msgid "Recording done. Cleaning up...\n"
-msgstr ""
+msgid "Error during recording: %s\n"
+msgstr "Feil under opptak: %s\n"
 
 #: ../src/record.c:83
+msgid "Recording done.\n"
+msgstr "Opptak fullf?rt.\n"
+
+#: ../src/record.c:91
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "Opptak fullf?rt. Avslutter opptak...\n"
+
+#: ../src/record.c:100
 #, c-format
 msgid "Recording starts. Will record %d seconds...\n"
-msgstr ""
+msgstr "Opptak starter. Vil ta opp %d sekunder...\n"
 
-#: ../src/record.c:93
-msgid "Preparing recording. Will start in 1 second...\n"
-msgstr ""
-
-#: ../src/record.c:116
-#, fuzzy
+#: ../src/record.c:132
 msgid "record your current desktop session"
-msgstr "Tar opp en video av din skrivebordssesjon"
-
-#: ../src/record.c:124
-#, c-format
-msgid "Wrong option: %s\n"
-msgstr ""
+msgstr "ta opp din skrivebordssesjon"
 
-#: ../src/record.c:142
+#: ../src/record.c:149
 #, c-format
-msgid ""
-"Could not prepare recording.\n"
-"Most likely the Damage extension is not available on the X server or the "
-"file \"%s\" is not writable.\n"
-msgstr ""
+msgid "Given area is not inside desktop.\n"
+msgstr "Oppgitt omr?de er ikke innenfor skrivebordet.\n"
diff -Nru byzanz-0.2.2/po/POTFILES.in byzanz-0.2.2+git22.10.2011/po/POTFILES.in
--- byzanz-0.2.2/po/POTFILES.in	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/POTFILES.in	2011-10-22 12:56:33.000000000 +0200
@@ -8,6 +8,7 @@
 src/byzanzencodergif.c
 src/byzanzencodergstreamer.c
 src/byzanzencoderogv.c
+src/byzanzencoderwebm.c
 src/byzanzlayer.c
 src/byzanzlayercursor.c
 src/byzanzlayerwindow.c
@@ -15,7 +16,7 @@
 src/byzanzselect.c
 src/byzanzserialize.c
 src/byzanzsession.c
-src/ByzanzApplet.server.in.in
+src/org.gnome.ByzanzApplet.panel-applet.in.in
 src/paneltogglebutton.c
 src/playback.c
 src/record.c
diff -Nru byzanz-0.2.2/po/pt_BR.po byzanz-0.2.2+git22.10.2011/po/pt_BR.po
--- byzanz-0.2.2/po/pt_BR.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/pt_BR.po	2011-10-22 12:56:33.000000000 +0200
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the byzanz package.
 # F?bio Nogueira <deb-user-ba at ubuntu.com>, 2008.
 # Antonio Fernandes C. Neto <fernandes at pelivre.org>, 2009.
+# Carlos Jos? Pereira <carlao2005 at gmail.com>, 2010.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: byzanz.DEAD.pt_BR\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2009-12-31 19:03-0200\n"
-"PO-Revision-Date: 2009-12-30 17:41-0300\n"
-"Last-Translator: Antonio Fernandes C. Neto <fernandes at pelivre.org>\n"
+"POT-Creation-Date: 2010-08-19 14:16-0300\n"
+"PO-Revision-Date: 2010-07-26 10:00-0300\n"
+"Last-Translator: Carlos Jos? Pereira <carlao2005 at gmail.com>\n"
 "Language-Team: Brazilian Portuguese <gnome-l10n-br at listas.cipsga.org.br>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -19,16 +20,15 @@
 
 #: ../src/byzanz.schemas.in.h:1
 msgid ""
-"If set, Byzanz will record the mouse cursor. While useful, recording the "
-"mouse cursor results in bigger files and should therefore be used with care."
+"If set, Byzanz will record audio from the default audio device if the format "
+"supports it. This allows narrating along with the recording."
 msgstr ""
-"Se configurado, o Byzanz ir? gravar o cursor do mouse. Embora ?til, gravar o "
-"cursor do mouse resulta em arquivos maiores e portanto deve ser utilizado "
-"com cuidado."
+"Se verdadeiro, Byzanz gravar? ?udio do dispositivo padr?o se o formato "
+"suportar. Isto permite a narra??o junto com a grava??o."
 
-#: ../src/byzanz.schemas.in.h:2 ../src/record.c:38
-msgid "Record mouse cursor"
-msgstr "Gravar o cursor do mouse"
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+msgid "Record audio"
+msgstr "Gravar ?udio"
 
 #: ../src/byzanz.schemas.in.h:3
 msgid "Recording method"
@@ -53,7 +53,7 @@
 "grava??o de toda tela, \"area\" para selecionar uma ?rea ou \"window\" para "
 "selecionar uma janela."
 
-#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:263
+#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
 msgid "Record your desktop"
 msgstr "Gravar sua ?rea de trabalho"
 
@@ -69,46 +69,52 @@
 msgid "Abort encoding of recording"
 msgstr "Cancelar codifica??o da grava??o"
 
-#: ../src/byzanzapplet.c:273
+#: ../src/byzanzapplet.c:278
 msgid "All files"
 msgstr "Todos os arquivos"
 
-#: ../src/byzanzapplet.c:355
+#: ../src/byzanzapplet.c:368
 msgid "Desktop Session"
 msgstr "Sess?o da ?rea de trabalho"
 
-#: ../src/byzanzapplet.c:358 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:371
 msgid "Record what's happening on your desktop"
 msgstr "Grave o que est? acontecendo na sua ?rea de trabalho"
 
-#: ../src/byzanzapplet.c:360
+#: ../src/byzanzapplet.c:373
 msgid "translator-credits"
-msgstr "F?bio Nogueira <deb-user-ba at ubuntu.com>, 2008."
+msgstr ""
+"F?bio Nogueira <deb-user-ba at ubuntu.com>, 2008Carlos Jos? Pereira "
+"<carlao2005 at gmail.com>, 2010"
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:378
 msgid "_About"
 msgstr "_Sobre"
 
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+msgid "This format does not support recording audio."
+msgstr "Este formato n?o suporta a grava??o de ?udio."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "arquivos de depura??o do Byzanz"
+
 #: ../src/byzanzencoderflv.c:38
 msgid "Flash video"
 msgstr "V?deo Flash"
 
-#: ../src/byzanzencodergif.c:212
+#: ../src/byzanzencodergif.c:209
 msgid "No image to encode."
 msgstr "Nenhuma imagem para codificar."
 
-#: ../src/byzanzencodergif.c:251
+#: ../src/byzanzencodergif.c:248
 msgid "GIF images"
 msgstr "Imagens GIF"
 
-#: ../src/byzanzencodergstreamer.c:76
+#: ../src/byzanzencodergstreamer.c:156
 msgid "Failed to start GStreamer pipeline"
 msgstr "Falha ao iniciar a fila de processamento do GStreamer"
 
-#: ../src/byzanzencodergstreamer.c:94
-msgid "Premature end of GStreamer pipeline"
-msgstr "Fim prematuro da fila de processamento do GStreamer"
-
 #: ../src/byzanzencoderogv.c:38
 msgid "Theora video"
 msgstr "V?deo Theora"
@@ -137,136 +143,101 @@
 msgid "Record a selected window"
 msgstr "Gravar a janela selecionada"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "F?brica de Byzanz"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Gravador da ?rea de Trabalho"
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "N?o ? uma grava??o do Byzanz"
 
-#: ../src/record.c:36
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "Ordem dos bytes n?o suportada"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "uso: %s [OP??ES] arquivo-de-entrada arquivo-de-sa?da\n"
+
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
+
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr "processa uma grava??o de depura??o do Byzanz"
+
+#: ../src/playback.c:84 ../src/record.c:140
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "Op??o incorreta: %s\n"
+
+#: ../src/record.c:37
 msgid "Duration of animation (default: 10 seconds)"
 msgstr "Dura??o da anima??o (padr?o: 10 segundos)"
 
-#: ../src/record.c:36 ../src/record.c:37
+#: ../src/record.c:37 ../src/record.c:38
 msgid "SECS"
 msgstr "SEGS"
 
-#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "Delay before start (default: 1 second)"
 msgstr "Atraso antes de iniciar (padr?o: 1 segundo)"
 
 #: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "Gravar o cursor do mouse"
+
+#: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
 msgstr "Coordenada X do ret?ngulo para gravar"
 
-#: ../src/record.c:39 ../src/record.c:40 ../src/record.c:41 ../src/record.c:42
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
 msgid "PIXEL"
 msgstr "PIXEL"
 
-#: ../src/record.c:40
+#: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
 msgstr "Coordenada Y do ret?ngulo para gravar"
 
-#: ../src/record.c:41
+#: ../src/record.c:43
 msgid "Width of recording rectangle"
 msgstr "Largura do ret?ngulo para grava??o"
 
-#: ../src/record.c:42
+#: ../src/record.c:44
 msgid "Height of recording rectangle"
 msgstr "Altura do ret?ngulo para grava??o"
 
-#: ../src/record.c:43
+#: ../src/record.c:45
 msgid "Be verbose"
 msgstr "Detalhado"
 
-#: ../src/record.c:65
+#: ../src/record.c:67
 #, c-format
 msgid "usage: %s [OPTIONS] filename\n"
 msgstr "uso: %s [OP??ES] nome do arquivo\n"
 
-#: ../src/record.c:66
-#, c-format
-msgid "       %s --help\n"
-msgstr "       %s --help\n"
-
-#: ../src/record.c:75
+#: ../src/record.c:77
 #, c-format
 msgid "Error during recording: %s\n"
 msgstr "Erro durante a grava??o: %s\n"
 
-#: ../src/record.c:81
+#: ../src/record.c:83
 msgid "Recording done.\n"
 msgstr "Grava??o conclu?da.\n"
 
-#: ../src/record.c:89
+#: ../src/record.c:91
 msgid "Recording completed. Finishing encoding...\n"
 msgstr "Grava??o conclu?da. Finalizando codifica??o...\n"
 
-#: ../src/record.c:98
+#: ../src/record.c:100
 #, c-format
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "Iniciando grava??o. Ser?o gravados %d segundos...\n"
 
-#: ../src/record.c:130
+#: ../src/record.c:132
 msgid "record your current desktop session"
 msgstr "gravar sua sess?o atual da ?rea de trabalho"
 
-#: ../src/record.c:138
-#, c-format
-msgid "Wrong option: %s\n"
-msgstr "Op??o incorreta: %s\n"
-
-#: ../src/record.c:147
+#: ../src/record.c:149
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "Fornece a ?rea que n?o est? dentro da ?rea de trabalho.\n"
-
-#~ msgid "Directory to save in"
-#~ msgstr "Diret?rio para salvar"
-
-#~ msgid ""
-#~ "This is the directory that Byzanz will default to when saving a file."
-#~ msgstr "Este ? o diret?rio que o Byzanz ir? por padr?o salvar os arquivos."
-
-#~ msgid "A file could not be saved."
-#~ msgstr "Um arquivo n?o pode ser salvo."
-
-#~ msgid ""
-#~ "\"%s\" could not be saved.\n"
-#~ "The error that occured was: %s"
-#~ msgstr ""
-#~ "\"%s\" n?o pode ser salvo.\n"
-#~ "O erro que ocorreu foi: %s"
-
-#~ msgid "Save Recorded File"
-#~ msgstr "Salvar Arquivo Gravado"
-
-#~ msgid "Cannot start recording."
-#~ msgstr "N?o ? poss?vel iniciar a grava??o."
-
-#~ msgid ""
-#~ "Byzanz requires a 24bpp or 32bpp depth for recording. The current "
-#~ "resolution is set to %dbpp."
-#~ msgstr ""
-#~ "Byzanz exige uma profundidade de 24bpp ou 32bpp para grava??o. A "
-#~ "resolu??o atual est? configurada para %dbpp."
-
-#~ msgid "Record _Mouse Cursor"
-#~ msgstr "Gravar Cursor do _Mouse"
-
-#~ msgid "Let the animation loop"
-#~ msgstr "Deixar que a anima??o se repita"
-
-#~ msgid "Preparing recording. Will start in 1 second...\n"
-#~ msgstr "Preparando a grava??o. Ser? iniciada em 1 segundo...\n"
-
-#~ msgid ""
-#~ "Could not prepare recording.\n"
-#~ "Most likely the Damage extension is not available on the X server or the "
-#~ "file \"%s\" is not writable.\n"
-#~ msgstr ""
-#~ "N?o ? poss?vel preparar a grava??o.\n"
-#~ "? poss?vel que a extens?o Damage n?o esteja dispon?vel no servidor X ou o "
-#~ "arquivo \"%s\" n?o ? grav?vel.\n"
diff -Nru byzanz-0.2.2/po/ro.po byzanz-0.2.2+git22.10.2011/po/ro.po
--- byzanz-0.2.2/po/ro.po	1970-01-01 01:00:00.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/ro.po	2011-10-22 12:56:33.000000000 +0200
@@ -0,0 +1,245 @@
+# Romanian translation for byzanz.
+# Copyright (C) 2010 byzanz's COPYRIGHT HOLDER
+# This file is distributed under the same license as the byzanz package.
+# Cristian Iacobescu <cristy_hereg93 at yahoo.com>, 2010.
+# Iacobescu Cristian <cristy_hereg93 at yahoo.com>, 2010.
+# Lucian Adrian Grijincu <lucian.grijincu at gmail.com>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: byzanz master\n"
+"Report-Msgid-Bugs-To: "
+"http://bugzilla.gnome.org/enter_bug.cgi?product=byzanz&component=general\n"
+"POT-Creation-Date: 2010-11-19 13:10+0000\n"
+"PO-Revision-Date: 2010-12-05 02:13+0300\n"
+"Last-Translator: Lucian Adrian Grijincu <lucian.grijincu at gmail.com>\n"
+"Language-Team: Romanian Gnome Team <gnomero-list at lists.sourceforge.net>\n"
+"Language: ro\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2);;\n"
+"X-Generator: Virtaal 0.6.1\n"
+
+#: ../src/byzanz.schemas.in.h:1
+msgid ""
+"If set, Byzanz will record audio from the default audio device if the format "
+"supports it. This allows narrating along with the recording."
+msgstr ""
+"Dac? este definit, Byzanz va ?nregistra sunetul de la dispozitivul audio "
+"implicit ?n cazul ?n care formatul este suportat. Acest lucru permite "
+"nararea odat? cu ?nregistrarea."
+
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+msgid "Record audio"
+msgstr "?nregistreaz? audio"
+
+#: ../src/byzanz.schemas.in.h:3
+msgid "Recording method"
+msgstr "Metod? de ?nregistrare"
+
+#: ../src/byzanz.schemas.in.h:4
+msgid "Save filename"
+msgstr "Salveaz? nume fi?ier"
+
+#: ../src/byzanz.schemas.in.h:5
+msgid "URI for the filename Byzanz will suggest when starting a recording."
+msgstr ""
+"URI pentru numele fi?ierului Byzanz va sugera c?nd ?ncepe ?nregistrarea."
+
+#: ../src/byzanz.schemas.in.h:6
+msgid ""
+"Use this method as the default method for recording. Must be one of \"screen"
+"\" for recording the whole screen, \"area\" for selecting an area or \"window"
+"\" to select a window."
+msgstr ""
+"Utilizeaz? aceast? metod? ca metod? implicit? pentru ?nregistrare. Trebuie "
+"s? fie una de ?screen? pentru ?nregistrarea ?ntregului ecran, ?area? pentru "
+"selectarea unei zone sau ?window? pentru a selecta o fereastr?."
+
+#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
+msgid "Record your desktop"
+msgstr "?nregistreaz? desktopul"
+
+#: ../src/byzanzapplet.c:104
+msgid "Select area to record"
+msgstr "Selecteaz? zona de ?nregistrat"
+
+#: ../src/byzanzapplet.c:105
+msgid "End current recording"
+msgstr "Opre?te ?nregistrarea curent?"
+
+#: ../src/byzanzapplet.c:106
+msgid "Abort encoding of recording"
+msgstr "?ntrerupe codarea ?nregistr?rii"
+
+#: ../src/byzanzapplet.c:278
+msgid "All files"
+msgstr "Toate fi?ierele"
+
+#: ../src/byzanzapplet.c:368
+msgid "Desktop Session"
+msgstr "Sesiune de desktop"
+
+#: ../src/byzanzapplet.c:371
+msgid "Record what's happening on your desktop"
+msgstr "?nregistreaz? ce se ?nt?mpl? pe desktop"
+
+#: ../src/byzanzapplet.c:373
+msgid "translator-credits"
+msgstr "Cristi Iacobescu <cristy_hereg93 at yahoo.com>"
+
+#: ../src/byzanzapplet.c:378
+msgid "_About"
+msgstr "_Despre"
+
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+msgid "This format does not support recording audio."
+msgstr "Acest format nu suport? ?nregistrarea audio."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "Fi?iere de depanare Byzanz"
+
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "Video Flash"
+
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "Nicio imagine de codat."
+
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "Imagini GIF"
+
+#: ../src/byzanzencodergstreamer.c:156
+msgid "Failed to start GStreamer pipeline"
+msgstr "Pornirea liniei de asamblare GStreamer a e?uat"
+
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "Video Theora"
+
+#: ../src/byzanzselect.c:354
+msgid "Record _Desktop"
+msgstr "?nregistreaz? _desktopul"
+
+#: ../src/byzanzselect.c:354
+msgid "Record the entire desktop"
+msgstr "?nregistreaz? ?ntregul desktop"
+
+#: ../src/byzanzselect.c:356
+msgid "Record _Area"
+msgstr "?nregistreaz? _zona"
+
+#: ../src/byzanzselect.c:356
+msgid "Record a selected area of the desktop"
+msgstr "?nregistreaz? zona selectat? de pe desktop"
+
+#: ../src/byzanzselect.c:358
+msgid "Record _Window"
+msgstr "?nregistreaz? _fereastra"
+
+#: ../src/byzanzselect.c:358
+msgid "Record a selected window"
+msgstr "?nregistreaz? o fereastr? selectat?"
+
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "Nu este o ?nregistrare Byzanz"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "Ordine de octe?i nesuportat?"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "utilizare: %s [OP?IUNI] INFILE OUTFILE\n"
+
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
+
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr "proceseaz? o depanare a ?nregistr?rii Byzanz"
+
+#: ../src/playback.c:84 ../src/record.c:140
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "Op?iune gre?it?: %s\n"
+
+#: ../src/record.c:37
+msgid "Duration of animation (default: 10 seconds)"
+msgstr "Durata anima?iei (implicit: 10 secunde)"
+
+#: ../src/record.c:37 ../src/record.c:38
+msgid "SECS"
+msgstr "SECUNDE"
+
+#: ../src/record.c:38
+msgid "Delay before start (default: 1 second)"
+msgstr "?nt?rzierea ?nainte de start (implicit: 1 secund?)"
+
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "?nregistreaz? cursorul mausului"
+
+#: ../src/record.c:41
+msgid "X coordinate of rectangle to record"
+msgstr "Coordonata X a dreptunghiului de ?nregistrat"
+
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
+msgid "PIXEL"
+msgstr "PIXEL"
+
+#: ../src/record.c:42
+msgid "Y coordinate of rectangle to record"
+msgstr "coordonata Y a dreptunghiului de ?nregistrat"
+
+#: ../src/record.c:43
+msgid "Width of recording rectangle"
+msgstr "L??imea dreptunghiului de ?nregistrat"
+
+#: ../src/record.c:44
+msgid "Height of recording rectangle"
+msgstr "?n?l?imea dreptunghiului de ?nregistrat"
+
+#: ../src/record.c:45
+msgid "Be verbose"
+msgstr "Mod detaliat"
+
+#: ../src/record.c:67
+#, c-format
+msgid "usage: %s [OPTIONS] filename\n"
+msgstr "utilizare: %s [OP?IUNI] nume fi?ier\n"
+
+#: ../src/record.c:77
+#, c-format
+msgid "Error during recording: %s\n"
+msgstr "Eroare ?n timpul ?nregistr?rii: %s\n"
+
+#: ../src/record.c:83
+msgid "Recording done.\n"
+msgstr "?nregistrare terminat?.\n"
+
+#: ../src/record.c:91
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "?nregistrarea a ajuns la final. Se termin? de codat...\n"
+
+#: ../src/record.c:100
+#, c-format
+msgid "Recording starts. Will record %d seconds...\n"
+msgstr "?nregistrarea a ?nceput. Se vor ?nregistra %d secunde...\n"
+
+#: ../src/record.c:132
+msgid "record your current desktop session"
+msgstr "?nregistreaz? sesiunea curent? a desktopului"
+
+#: ../src/record.c:149
+#, c-format
+msgid "Given area is not inside desktop.\n"
+msgstr "Zona indicat? nu este ?n interiorul desktopului.\n"
diff -Nru byzanz-0.2.2/po/ru.po byzanz-0.2.2+git22.10.2011/po/ru.po
--- byzanz-0.2.2/po/ru.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/ru.po	2011-10-22 12:56:33.000000000 +0200
@@ -1,217 +1,247 @@
+# translation of byzanz.master.ru.po to Russian
 # Russian translation for Byzanz.
-# Copyright (C) 2008 Free Software Foundation, Inc.
+# Copyright (C) 2008, 2010 Free Software Foundation, Inc.
 # This file is distributed under the same license as the byzanz package.
-#
 # Kolmagortsev Pavel <fff at 1nsk.ru>, 2008.
-#
+# Yuri Kozlov <yuray at komyakino.ru>, 2010.
 msgid ""
 msgstr ""
 "Project-Id-Version: byzanz trunk\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2008-07-11 12:42+0400\n"
-"PO-Revision-Date: 2008-07-11 12:27+0400\n"
-"Last-Translator: Kolmagortsev Pavel <fff at 1nsk.ru>\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=byzanz&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2011-03-20 18:39+0000\n"
+"PO-Revision-Date: 2011-05-10 00:14+0300\n"
+"Last-Translator: Yuri Myasoedov <omerta13 at yandex.ru>\n"
 "Language-Team: Russian <gnome-cyr at gnome.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 #: ../src/byzanz.schemas.in.h:1
-msgid "Directory to save in"
-msgstr "????????? ? ?????"
+msgid "If set, Byzanz will record audio from the default audio device if the format supports it. This allows narrating along with the recording."
+msgstr "???? ??????????? ? ???? ????????? ? ???????, ?? Byzanz ????? ?????????? ????? ?? ??????????????? ?? ?????????. ??? ????????? ???-?? ????????????? ?????????? ??? ????????."
 
 #: ../src/byzanz.schemas.in.h:2
-msgid ""
-"If set, Byzanz will record the mouse cursor. While useful, recording the "
-"mouse cursor results in bigger files and should therefore be used with care."
-msgstr ""
-"???? ???????????, Byzanz ??????? ???????? ????????? ????. ???? ?????? ????????? "
-"?????? ?????????, ????? ????? ????? ??????? ??????, ??????? ??????? "
-"???????????? ???? ???????? ? ?????????????."
-
-#: ../src/byzanz.schemas.in.h:3 ../src/record.c:39
-msgid "Record mouse cursor"
-msgstr "?????? ????????? ????"
+#: ../src/byzanzapplet.c:292
+#: ../src/record.c:40
+msgid "Record audio"
+msgstr "?????????? ?????"
 
-#: ../src/byzanz.schemas.in.h:4
+#: ../src/byzanz.schemas.in.h:3
 msgid "Recording method"
 msgstr "????? ??????"
 
+#: ../src/byzanz.schemas.in.h:4
+msgid "Save filename"
+msgstr "??? ????? ??????????"
+
 #: ../src/byzanz.schemas.in.h:5
-msgid "This is the directory that Byzanz will default to when saving a file."
-msgstr "????? ????? ?? ????????? ??? ?????????? ?????? Byzanz."
+msgid "URI for the filename Byzanz will suggest when starting a recording."
+msgstr "URI ????? ?????, ??????? Byzanz ????????? ??? ?????? ??????."
 
 #: ../src/byzanz.schemas.in.h:6
-msgid ""
-"Use this method as the default method for recording. Must be one of \"screen"
-"\" for recording the whole screen, \"area\" for selecting an area or \"window"
-"\" to select a window."
-msgstr ""
-"????? ??????. ????????? ????????: \"screen\" ??? ?????? "
-"????? ??????, \"area\" ??? ?????? ?????????? ????????, ??? \"window\" ??? "
-"?????? ?????????? ????."
-
-#: ../src/byzanzapplet.c:110
-msgid "A file could not be saved."
-msgstr "???? ?? ????? ???? ????????."
-
-#: ../src/byzanzapplet.c:111
-#, c-format
-msgid ""
-"\"%s\" could not be saved.\n"
-"The error that occured was: %s"
-msgstr ""
-"?? ??????? ????????? \"%s\".\n"
-"????????? ??????: %s"
+msgid "Use this method as the default method for recording. Must be one of \"screen\" for recording the whole screen, \"area\" for selecting an area or \"window\" to select a window."
+msgstr "????? ?????? ?? ?????????. ????????? ????????: \"screen\" ??? ?????? ????? ??????, \"area\" ??? ?????? ?????????? ???????? ??? \"window\" ??? ?????? ?????????? ????."
 
-#: ../src/byzanzapplet.c:175
-msgid "Save Recorded File"
-msgstr "????????? ?????????? ????"
-
-#: ../src/byzanzapplet.c:224
-msgid "Stop current recording"
-msgstr "?????????? ??????"
-
-#: ../src/byzanzapplet.c:258
-msgid "Cannot start recording."
-msgstr "?? ??????? ?????? ??????"
+#: ../src/byzanzapplet.c:102
+#: ../src/byzanzapplet.c:266
+msgid "Record your desktop"
+msgstr "???????? ???? ??????? ????"
+
+#: ../src/byzanzapplet.c:103
+msgid "Select area to record"
+msgstr "??????? ??????? ??? ??????"
+
+#: ../src/byzanzapplet.c:104
+msgid "End current recording"
+msgstr "????? ??????? ??????"
+
+#: ../src/byzanzapplet.c:105
+msgid "Abort encoding of recording"
+msgstr "???????? ??????????? ??????"
+
+#: ../src/byzanzapplet.c:276
+msgid "All files"
+msgstr "??? ?????"
+
+#: ../src/byzanzapplet.c:366
+msgid "Desktop Session"
+msgstr "????? ???????? ?????"
 
-#: ../src/byzanzapplet.c:259 ../src/record.c:131
-#, c-format
-msgid ""
-"Byzanz requires a 24bpp or 32bpp depth for recording. The current resolution "
-"is set to %dbpp."
-msgstr ""
-"Byzanz ?????????? ???????? ? ?????? 24-??????? ??? 32-??????? ?????. ? ????????? ?????? "
-"???????????? ????? %d-??????? ?????."
-
-#: ../src/byzanzapplet.c:369 ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "?????? ???????? ?????"
-
-#: ../src/byzanzapplet.c:372 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "???????? ???????????? ?? ??????? ?????"
 
-#: ../src/byzanzapplet.c:374
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr "????? ???????????, 2008"
 
-#: ../src/byzanzapplet.c:441
-msgid "Record _Mouse Cursor"
-msgstr "_????????? ????"
-
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "_? ?????????"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzencoder.c:89
+#: ../src/byzanzencodergstreamer.c:127
+msgid "This format does not support recording audio."
+msgstr "???? ?????? ?? ???????????? ?????? ?????."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "????? ??????? Byzanz"
+
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "????? Flash"
+
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "??? ??????????? ??? ???????????."
+
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "??????????? ? ??????? GIF"
+
+#: ../src/byzanzencodergstreamer.c:165
+msgid "Failed to start GStreamer pipeline"
+msgstr "?? ??????? ????????? ???????? ? GStreamer"
+
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "????? ? ??????? Theora"
+
+#: ../src/byzanzencoderwebm.c:38
+#| msgid "Theora video"
+msgid "WebM video"
+msgstr "????? ? ??????? WebM"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
-msgstr "_??????? ????"
+msgstr "???????? ??????? ????"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "?????? ????? ???????? ?????"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
-msgstr "_???????"
+msgstr "???????? _???????"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
-msgstr "?????? ????????? ??????? ?? ??????? ?????"
+msgstr "?????? ?????????? ??????? ?? ??????? ?????"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
-msgstr "?_???"
+msgstr "???????? _????"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "?????? ?????????? ????"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "??????? ???????? Byzanz"
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "?? ?????? Byzanz"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "???????????????? ??????? ????"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "?????????????: %s [?????????] ???????_???? ????????_????\n"
+
+#: ../src/playback.c:38
+#: ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       \t       %s --help\n"
+
+#: ../src/playback.c:77
+#| msgid "process a byzanz debug recording"
+msgid "process a Byzanz debug recording"
+msgstr "?????????? ?????????? ?????? Byzanz"
+
+#: ../src/playback.c:84
+#: ../src/record.c:143
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "???????? ????????: %s\n"
 
-#: ../src/record.c:36
+#: ../src/record.c:37
 msgid "Duration of animation (default: 10 seconds)"
-msgstr "???????????????? ?????? (?? ????????? 10 ??????)"
+msgstr "????????????????? ?????? (?? ????????? 10 ??????)"
 
-#: ../src/record.c:36 ../src/record.c:37
+#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "SECS"
 msgstr "???"
 
-#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "Delay before start (default: 1 second)"
 msgstr "???????? ????? ??????? (?? ????????? 1 ???????)"
 
-#: ../src/record.c:38
-msgid "Let the animation loop"
-msgstr "??????? ?????? ?????????????"
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "?????? ????????? ????"
 
-#: ../src/record.c:40
+#: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
 msgstr "?????????? X ??????? ??????"
 
-#: ../src/record.c:40 ../src/record.c:41 ../src/record.c:42 ../src/record.c:43
+#: ../src/record.c:41
+#: ../src/record.c:42
+#: ../src/record.c:43
+#: ../src/record.c:44
 msgid "PIXEL"
 msgstr "?????"
 
-#: ../src/record.c:41
+#: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
 msgstr "?????????? Y ??????? ??????"
 
-#: ../src/record.c:42
+#: ../src/record.c:43
 msgid "Width of recording rectangle"
 msgstr "?????? ???????????? ???????"
 
-#: ../src/record.c:43
+#: ../src/record.c:44
 msgid "Height of recording rectangle"
 msgstr "?????? ???????????? ???????"
 
-#: ../src/record.c:44
+#: ../src/record.c:45
 msgid "Be verbose"
 msgstr "?????????"
 
-#: ../src/record.c:66
+#: ../src/record.c:67
 #, c-format
 msgid "usage: %s [OPTIONS] filename\n"
 msgstr "?????????????: %s [?????????] ???_?????\n"
 
-#: ../src/record.c:67
+#: ../src/record.c:77
 #, c-format
-msgid "       %s --help\n"
-msgstr "       	       %s --help\n"
-
-#: ../src/record.c:73
-msgid "Recording done. Cleaning up...\n"
-msgstr "?????? ?????????. ???????...\n"
+msgid "Error during recording: %s\n"
+msgstr "?????? ?? ????? ??????: %s\n"
 
 #: ../src/record.c:83
+msgid "Recording done.\n"
+msgstr "?????? ?????????.\n"
+
+#: ../src/record.c:91
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "?????? ?????????. ?????????? ???????????...\n"
+
+#: ../src/record.c:100
 #, c-format
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "?????? ??????. ????????????????? ?????? %d ??????...\n"
 
-#: ../src/record.c:93
-msgid "Preparing recording. Will start in 1 second...\n"
-msgstr "???????????????? ??????. ?????? ????? 1 ???????...\n"
-
-#: ../src/record.c:116
+#: ../src/record.c:135
 msgid "record your current desktop session"
-msgstr "?????? ???????? ??????"
+msgstr "?????? ???????? ?????? ???????? ?????"
 
-#: ../src/record.c:120
+#: ../src/record.c:152
 #, c-format
-msgid "Wrong option: %s\n"
-msgstr "???????? ????????: %s\n"
+msgid "Given area is not inside desktop.\n"
+msgstr "???????? ??????? ??? ???????? ?????.\n"
 
-#: ../src/record.c:138
-#, c-format
-msgid ""
-"Could not prepare recording.\n"
-"Most likely the Damage extension is not available on the X server or the "
-"file \"%s\" is not writable.\n"
-msgstr ""
-"?? ??????? ????????????? ? ??????.\n"
-"????????, ? X ??????? ??????????? ?????????? XDamage ??? ???? \"%s\" ?? "
-"????? ???? ???????.\n"
diff -Nru byzanz-0.2.2/po/sl.po byzanz-0.2.2+git22.10.2011/po/sl.po
--- byzanz-0.2.2/po/sl.po	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/po/sl.po	2011-10-22 12:56:33.000000000 +0200
@@ -1,4 +1,4 @@
-# Slovenian translation for byzanz.
+# Slovenian translations for byzanz.
 # Copyright (C) 2009 byzanz's COPYRIGHT HOLDER
 # This file is distributed under the same license as the byzanz package.
 #
@@ -6,10 +6,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: byzanz\n"
+"Project-Id-Version: byzanz master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=byzanz&component=general\n"
-"POT-Creation-Date: 2010-02-20 13:28+0000\n"
-"PO-Revision-Date: 2010-05-14 21:51+0100\n"
+"POT-Creation-Date: 2011-02-21 23:04+0000\n"
+"PO-Revision-Date: 2011-02-25 14:20+0100\n"
 "Last-Translator: Matej Urban?i? <mateju at svn.gnome.org>\n"
 "Language-Team: Slovenian <gnome-si at googlegroups.com>\n"
 "MIME-Version: 1.0\n"
@@ -25,7 +25,7 @@
 msgstr "Izbrana mo?nost omogo?i snemanje zvoka iz privzete zvo?ne naprave, ?e vrsta zapisa podpira snemanje zvoka. To omogo?a pripovedovanje skupaj s snemanjem"
 
 #: ../src/byzanz.schemas.in.h:2
-#: ../src/byzanzapplet.c:294
+#: ../src/byzanzapplet.c:292
 #: ../src/record.c:40
 msgid "Record audio"
 msgstr "Posnemi zvok"
@@ -46,46 +46,45 @@
 msgid "Use this method as the default method for recording. Must be one of \"screen\" for recording the whole screen, \"area\" for selecting an area or \"window\" to select a window."
 msgstr "Uporabi ta na?in kot privzet na?in snemanja. Na?in mora biti \"zaslon\" za snemanje celega zaslona, \"obmo?je\" za izbor obmo?ja ali \"okno\" za izbor okna."
 
-#: ../src/byzanzapplet.c:103
-#: ../src/byzanzapplet.c:268
+#: ../src/byzanzapplet.c:102
+#: ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "Posnemite va?e namizje"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "Izbor obmo?ja snemanja"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "Kon?aj trenutno snemanje"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "Preklic kodiranja snemanja"
 
-#: ../src/byzanzapplet.c:278
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "Vse datoteke"
 
-#: ../src/byzanzapplet.c:368
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "Namizna seja"
 
-#: ../src/byzanzapplet.c:371
-#: ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Posnemite dogajanje na va?em namizju"
 
-#: ../src/byzanzapplet.c:373
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr "Andrej ?nidar?i? <andrej.znidarsic at gmail.com>"
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "_O programu"
 
 #: ../src/byzanzencoder.c:89
-#: ../src/byzanzencodergstreamer.c:118
+#: ../src/byzanzencodergstreamer.c:127
 msgid "This format does not support recording audio."
 msgstr "Zapis ne podpira snemanja zvoka"
 
@@ -105,7 +104,7 @@
 msgid "GIF images"
 msgstr "Slike GIF"
 
-#: ../src/byzanzencodergstreamer.c:156
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "Zagon cevovoda GStreamer je spodletel"
 
@@ -113,27 +112,31 @@
 msgid "Theora video"
 msgstr "Theora video"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "WebM video"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "Posnemi _namizje"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "Omogo?i snemanje celotnega namizja"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "Posnemi _obmo?je"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Omogo?i snemanje izbranega obmo?ja namizja"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "Posnemi o_kno"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Omogo?i snemanje izbranega okna"
 
@@ -145,14 +148,6 @@
 msgid "Unsupported byte order"
 msgstr "Nepodprt vrstni red bajtov"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Tovarna Byzanz"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Snemalnik namizja"
-
 #: ../src/playback.c:37
 #, c-format
 msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
@@ -165,11 +160,11 @@
 msgstr "       %s --pomo?\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
+msgid "process a Byzanz debug recording"
 msgstr "obdelava byzanz razhro??evalnega snemanja"
 
 #: ../src/playback.c:84
-#: ../src/record.c:140
+#: ../src/record.c:143
 #, c-format
 msgid "Wrong option: %s\n"
 msgstr "Napa?na mo?nost: %s\n"
@@ -241,15 +236,21 @@
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "Snemanje se za?enja. Posnetih bo %d sekund ...\n"
 
-#: ../src/record.c:132
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "snemanje va?e trenutne namizne seje"
 
-#: ../src/record.c:149
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "Podano obmo?je ni znotraj namizja.\n"
 
+#~ msgid "Byzanz Factory"
+#~ msgstr "Tovarna Byzanz"
+
+#~ msgid "Desktop Recorder"
+#~ msgstr "Snemalnik namizja"
+
 #~ msgid ""
 #~ "If set, Byzanz will record the mouse cursor. While useful, recording the "
 #~ "mouse cursor results in bigger files and should therefore be used with "
@@ -258,5 +259,6 @@
 #~ "Izbrana mo?nost omogo?i snemanje gibanja kazalca mi?ke. Snemanje "
 #~ "mi?kinega kazalca pove?a velikost datotek, zato je treba mo?nost "
 #~ "uporabljati pazljivo."
+
 #~ msgid "Premature end of GStreamer pipeline"
 #~ msgstr "Prezgodnji konec cevovoda Gstreamer"
diff -Nru byzanz-0.2.2/po/sv.po byzanz-0.2.2+git22.10.2011/po/sv.po
--- byzanz-0.2.2/po/sv.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/sv.po	2011-10-22 12:56:33.000000000 +0200
@@ -6,10 +6,11 @@
 msgstr ""
 "Project-Id-Version: Byzanz\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2010-02-20 14:26+0100\n"
-"PO-Revision-Date: 2010-02-20 14:28+0100\n"
+"POT-Creation-Date: 2011-03-01 00:33+0100\n"
+"PO-Revision-Date: 2011-03-06 20:27+0100\n"
 "Last-Translator: Daniel Nylander <po at danielnylander.se>\n"
 "Language-Team: Swedish <tp-sv at listor.tp-sv.se>\n"
+"Language: sv\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -20,7 +21,7 @@
 msgstr "Om inst?lld s? kommer Byzanz att spela in ljud fr?n standardljudenheten om formatet har st?d f?r det. Detta g?r att man kan prata in vad man g?r i inspelningen."
 
 #: ../src/byzanz.schemas.in.h:2
-#: ../src/byzanzapplet.c:294
+#: ../src/byzanzapplet.c:292
 #: ../src/record.c:40
 msgid "Record audio"
 msgstr "Spela in ljud"
@@ -41,37 +42,36 @@
 msgid "Use this method as the default method for recording. Must be one of \"screen\" for recording the whole screen, \"area\" for selecting an area or \"window\" to select a window."
 msgstr "Anv?nd den h?r metoden som standardmetoden f?r inspelning. M?ste vara en av \"screen\" f?r inspelning av hela sk?rmen, \"area\" f?r markering av ett omr?de eller \"window\" f?r att v?lja ett f?nster."
 
-#: ../src/byzanzapplet.c:103
-#: ../src/byzanzapplet.c:268
+#: ../src/byzanzapplet.c:102
+#: ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "Spela in ditt skrivbord"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "Markera ett omr?de att spela in"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "Avsluta aktuell inspelning"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "Avbryt kodning av inspelningen"
 
-#: ../src/byzanzapplet.c:278
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "Alla filer"
 
-#: ../src/byzanzapplet.c:368
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "Skrivbordssession"
 
-#: ../src/byzanzapplet.c:371
-#: ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "Spela in vad som h?nde p? ditt skrivbord"
 
-#: ../src/byzanzapplet.c:373
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr ""
 "Daniel Nylander <po at danielnylander.se>\n"
@@ -79,12 +79,12 @@
 "Skicka synpunkter p? ?vers?ttningen till\n"
 "<tp-sv at listor.tp-sv.se>."
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "_Om"
 
 #: ../src/byzanzencoder.c:89
-#: ../src/byzanzencodergstreamer.c:118
+#: ../src/byzanzencodergstreamer.c:127
 msgid "This format does not support recording audio."
 msgstr "Detta format saknar st?d f?r inspelning av ljud."
 
@@ -104,7 +104,7 @@
 msgid "GIF images"
 msgstr "GIF-bilder"
 
-#: ../src/byzanzencodergstreamer.c:156
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "Misslyckades med att starta GStreamer-r?rledning"
 
@@ -112,27 +112,31 @@
 msgid "Theora video"
 msgstr "Theora-video"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "WebM-video"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "Spela in _skrivbord"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "Spela in hela skrivbordet"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "Spela in _omr?de"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "Spela in ett markerat omr?de av skrivbordet"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "Spela in _f?nster"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "Spela in markerat f?nster"
 
@@ -144,14 +148,6 @@
 msgid "Unsupported byte order"
 msgstr "Byteordningen st?ds inte"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Byzanz-fabrik"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "Skrivbordsinspelare"
-
 #: ../src/playback.c:37
 #, c-format
 msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
@@ -164,11 +160,11 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
-msgstr "behandla en byzanz-fels?kningsinspelning"
+msgid "process a Byzanz debug recording"
+msgstr "behandla en Byzanz-fels?kningsinspelning"
 
 #: ../src/playback.c:84
-#: ../src/record.c:140
+#: ../src/record.c:143
 #, c-format
 msgid "Wrong option: %s\n"
 msgstr "Felaktig flagga: %s\n"
@@ -240,15 +236,19 @@
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "Inspelningen startar. Kommer att spela in %d sekunder...\n"
 
-#: ../src/record.c:132
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "spela in din aktuella skrivbordssession"
 
-#: ../src/record.c:149
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "Angivet omr?de ?r inte p? skrivbordet.\n"
 
+#~ msgid "Byzanz Factory"
+#~ msgstr "Byzanz-fabrik"
+#~ msgid "Desktop Recorder"
+#~ msgstr "Skrivbordsinspelare"
 #~ msgid ""
 #~ "If set, Byzanz will record the mouse cursor. While useful, recording the "
 #~ "mouse cursor results in bigger files and should therefore be used with "
diff -Nru byzanz-0.2.2/po/uk.po byzanz-0.2.2+git22.10.2011/po/uk.po
--- byzanz-0.2.2/po/uk.po	1970-01-01 01:00:00.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/uk.po	2011-10-22 12:56:33.000000000 +0200
@@ -0,0 +1,243 @@
+# Ukrainian translation for byzanz.
+# Copyright (C) 2011 byzanz's COPYRIGHT HOLDER
+# This file is distributed under the same license as the byzanz package.
+# Sergiy Gavrylov <sergiovana at bigmir.net>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: byzanz master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=byzanz&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2011-04-10 05:57+0000\n"
+"PO-Revision-Date: 2011-04-18 12:46+0300\n"
+"Last-Translator: Sergiy Gavrylov <sergiovana at bigmir.net>\n"
+"Language-Team: Ukrainian <uk at li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ../src/byzanz.schemas.in.h:1
+msgid ""
+"If set, Byzanz will record audio from the default audio device if the format "
+"supports it. This allows narrating along with the recording."
+msgstr ""
+"???? ???????????, Byzanz ???????????? ????? ? ???????? ?????????????, ???? "
+"???? ?????? ?????????????. ?? ??? ????? ?????????? ????? ? ???????."
+
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
+msgid "Record audio"
+msgstr "???????? ?????"
+
+#: ../src/byzanz.schemas.in.h:3
+msgid "Recording method"
+msgstr "?????? ??????"
+
+#: ../src/byzanz.schemas.in.h:4
+msgid "Save filename"
+msgstr "???????? ????? ?????"
+
+#: ../src/byzanz.schemas.in.h:5
+msgid "URI for the filename Byzanz will suggest when starting a recording."
+msgstr "URI ????? ?????, ??? Byzanz ?????????? ?? ??????? ??????."
+
+#: ../src/byzanz.schemas.in.h:6
+msgid ""
+"Use this method as the default method for recording. Must be one of \"screen"
+"\" for recording the whole screen, \"area\" for selecting an area or \"window"
+"\" to select a window."
+msgstr ""
+"??????? ?????? ??????. ??? ???? ???? ?? ???????: ??????? ? ??? ?????? ?????? "
+"??????, ?????????? ? ??? ?????? ??????? ?? ??????? ? ??? ?????? ?????."
+
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
+msgid "Record your desktop"
+msgstr "???????? ???? ?????"
+
+#: ../src/byzanzapplet.c:103
+msgid "Select area to record"
+msgstr "??????? ??????? ??? ??????"
+
+#: ../src/byzanzapplet.c:104
+msgid "End current recording"
+msgstr "????????? ???????? ?????"
+
+#: ../src/byzanzapplet.c:105
+msgid "Abort encoding of recording"
+msgstr "????????? ????????? ??????"
+
+#: ../src/byzanzapplet.c:276
+msgid "All files"
+msgstr "??? ?????"
+
+#: ../src/byzanzapplet.c:366
+msgid "Desktop Session"
+msgstr "????? ?????????"
+
+#: ../src/byzanzapplet.c:369
+msgid "Record what's happening on your desktop"
+msgstr "???????? ????? ?? ?????????"
+
+#: ../src/byzanzapplet.c:371
+msgid "translator-credits"
+msgstr "Sergiy Gavrylov <sergiovana at bigmir.net>, 2011."
+
+#: ../src/byzanzapplet.c:376
+msgid "_About"
+msgstr "_??? ????????"
+
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
+msgid "This format does not support recording audio."
+msgstr "??? ?????? ?? ????????? ????? ?????."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "????? ??????????? Byzanz"
+
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "????? Flash"
+
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "????? ?????????? ??? ?????????."
+
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "?????????? ? ??????? GIF"
+
+#: ../src/byzanzencodergstreamer.c:165
+msgid "Failed to start GStreamer pipeline"
+msgstr "?? ??????? ????????? ????? ????? GStreamer"
+
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "????? ? ??????? Theora"
+
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "????? ? ??????? WebM"
+
+#: ../src/byzanzselect.c:357
+msgid "Record _Desktop"
+msgstr "???????? _?????????"
+
+#: ../src/byzanzselect.c:357
+msgid "Record the entire desktop"
+msgstr "????? ????? ?????????"
+
+#: ../src/byzanzselect.c:359
+msgid "Record _Area"
+msgstr "???????? _???????"
+
+#: ../src/byzanzselect.c:359
+msgid "Record a selected area of the desktop"
+msgstr "????? ???????? ??????? ?????????"
+
+#: ../src/byzanzselect.c:361
+msgid "Record _Window"
+msgstr "???????? _?????"
+
+#: ../src/byzanzselect.c:361
+msgid "Record a selected window"
+msgstr "????? ????????? ?????"
+
+#: ../src/byzanzserialize.c:89
+msgid "Not a Byzanz recording"
+msgstr "?? ????? Byzanz"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "??????????????? ??????? ??????"
+
+#: ../src/playback.c:37
+#, c-format
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "????????????: %s [?????????] INFILE OUTFILE\n"
+
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
+
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr "?????????? ??????????? ?????? Byzanz"
+
+#: ../src/playback.c:84 ../src/record.c:143
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "???????????? ????????: %s\n"
+
+#: ../src/record.c:37
+msgid "Duration of animation (default: 10 seconds)"
+msgstr "?????????? ???????? (?????? 10 ??????)"
+
+#: ../src/record.c:37 ../src/record.c:38
+msgid "SECS"
+msgstr "???"
+
+#: ../src/record.c:38
+msgid "Delay before start (default: 1 second)"
+msgstr "???????? ????? ???????? (?????? 1 ???????)"
+
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "????? ?????????? ????"
+
+#: ../src/record.c:41
+msgid "X coordinate of rectangle to record"
+msgstr "?????????? X ???????????? ??????"
+
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
+msgid "PIXEL"
+msgstr "??????"
+
+#: ../src/record.c:42
+msgid "Y coordinate of rectangle to record"
+msgstr "?????????? Y ???????????? ??????"
+
+#: ../src/record.c:43
+msgid "Width of recording rectangle"
+msgstr "?????? ???????????? ??????"
+
+#: ../src/record.c:44
+msgid "Height of recording rectangle"
+msgstr "?????? ???????????? ??????"
+
+#: ../src/record.c:45
+msgid "Be verbose"
+msgstr "????????? ?????"
+
+#: ../src/record.c:67
+#, c-format
+msgid "usage: %s [OPTIONS] filename\n"
+msgstr "????????????: %s [????????] ?????_?????\n"
+
+#: ../src/record.c:77
+#, c-format
+msgid "Error during recording: %s\n"
+msgstr "??????? ??? ??? ??????: %s\n"
+
+#: ../src/record.c:83
+msgid "Recording done.\n"
+msgstr "????? ?????????.\n"
+
+#: ../src/record.c:91
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "????? ?????????. ?????????? ??????????\n"
+
+#: ../src/record.c:100
+#, c-format
+msgid "Recording starts. Will record %d seconds...\n"
+msgstr "????? ?????????. ?????????? ?????? %d ???????\n"
+
+#: ../src/record.c:135
+msgid "record your current desktop session"
+msgstr "????? ????????? ?????? ?????????"
+
+#: ../src/record.c:152
+#, c-format
+msgid "Given area is not inside desktop.\n"
+msgstr "?????? ??????? ?? ?????? ?????????.\n"
diff -Nru byzanz-0.2.2/po/vi.po byzanz-0.2.2+git22.10.2011/po/vi.po
--- byzanz-0.2.2/po/vi.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/vi.po	2011-10-22 12:56:33.000000000 +0200
@@ -1,14 +1,15 @@
 # Vietnamese translation for Byzanz.
 # Copyright ? 2008 GNOME i18n Project for Vietnamese.
 # Clytie Siddall <clytie at riverland.net.au>, 2008.
-#
+# L? Tr??ng An <xinemdungkhoc1 at gmail.com>, 2011.
+
 msgid ""
 msgstr ""
 "Project-Id-Version: byzanz GNOME TRUNK\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2008-06-06 04:10+0000\n"
-"PO-Revision-Date: 2008-06-06 21:25+0930\n"
-"Last-Translator: Clytie Siddall <clytie at riverland.net.au>\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=byzanz&component=general\n"
+"POT-Creation-Date: 2011-02-21 18:35+0000\n"
+"PO-Revision-Date: 2011-04-24 09:34+0700\n"
+"Last-Translator: L? Tr??ng An <xinemdungkhoc1 at gmail.com>\n"
 "Language-Team: Vietnamese <vi-VN at googlegroups.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,201 +18,285 @@
 "X-Generator: LocFactoryEditor 1.7b3\n"
 
 #: ../src/byzanz.schemas.in.h:1
-msgid "Directory to save in"
-msgstr "Th? m?c v?o ?? c?n l?u"
+msgid "If set, Byzanz will record audio from the default audio device if the format supports it. This allows narrating along with the recording."
+msgstr "N?u thi?t ??t, Byzanz s? ghi ?m t? thi?t b? ?m thanh m?c ??nh n?u ??nh d?ng ???c h? tr?. Cho ph?p nghe l?i c?ng v?i ghi ?m."
 
 #: ../src/byzanz.schemas.in.h:2
-msgid ""
-"If set, Byzanz will record the mouse cursor. While useful, recording the "
-"mouse cursor results in bigger files and should therefore be used with care."
-msgstr "B?t t?y ch?n n?y th? tr?nh Byzanz s? thu con tr? chu?t. D? c? ?ch, ch?c n?ng thu con tr? chu?t g?y ra t?p tin l?n: h?y s? d?ng c?n th?n."
+#: ../src/byzanzapplet.c:292
+#: ../src/record.c:40
+#| msgid "Record _Window"
+msgid "Record audio"
+msgstr "Ghi ?m"
 
 #: ../src/byzanz.schemas.in.h:3
-#: ../src/record.c:39
-msgid "Record mouse cursor"
-msgstr "Thu con tr? chu?t"
+msgid "Recording method"
+msgstr "C?ch ghi"
 
 #: ../src/byzanz.schemas.in.h:4
-msgid "Recording method"
-msgstr "Ph??ng ph?p thu"
+msgid "Save filename"
+msgstr "L?u t?n t?p tin"
 
 #: ../src/byzanz.schemas.in.h:5
-msgid "This is the directory that Byzanz will default to when saving a file."
-msgstr "??y l? th? m?c m?c ??nh v?o ?? Byzanz s? l?u t?p tin."
+msgid "URI for the filename Byzanz will suggest when starting a recording."
+msgstr "URI cho t?n t?p tin Byzanz s? y?u c?u khi b?t ??u ghi ?m."
 
 #: ../src/byzanz.schemas.in.h:6
-msgid ""
-"Use this method as the default method for recording. Must be one of \"screen"
-"\" for recording the whole screen, \"area\" for selecting an area or \"window"
-"\" to select a window."
-msgstr "H?y s? d?ng ph??ng ph?p n?y l?m m?c ??nh khi thu. Ph?i l? m?t c?a:\n"
-" ? screen		thu to?n b? m?n h?nh\n"
-" ? area		thu v?ng m?n h?nh ???c ch?n\n"
-" ? window	thu c?a s? ???c ch?n."
-
-#: ../src/byzanzapplet.c:110
-msgid "A file could not be saved."
-msgstr "M?t t?p tin kh?ng l?u ???c."
+msgid "Use this method as the default method for recording. Must be one of \"screen\" for recording the whole screen, \"area\" for selecting an area or \"window\" to select a window."
+msgstr "H?y s? d?ng ph??ng ph?p n?y l?m m?c ??nh khi ghi h?nh. D?ng \"screen\" khi ghi l?i c? m?n h?nh, \"area\" ?? ch?n m?t khu v?c ho?c \"window\" ?? ch?n m?t c?a s?."
 
-#: ../src/byzanzapplet.c:111
-#, c-format
-msgid ""
-"\"%s\" could not be saved.\n"
-"The error that occured was: %s"
-msgstr "? %s ? kh?ng l?u ???c.\n"
-"G?p l?i: %s"
-
-#: ../src/byzanzapplet.c:175
-msgid "Save Recorded File"
-msgstr "L?u t?p tin ?? l?u"
-
-#: ../src/byzanzapplet.c:224
-msgid "Stop current recording"
-msgstr "D?ng thu"
-
-#: ../src/byzanzapplet.c:258
-msgid "Cannot start recording."
-msgstr "Kh?ng th? b?t ??u thu."
-
-#: ../src/byzanzapplet.c:259
-#: ../src/record.c:131
-#, c-format
-msgid ""
-"Byzanz requires a 24bpp or 32bpp depth for recording. The current resolution "
-"is set to %dbpp."
-msgstr "Tr?nh Byzanz ??i h?i ?? s?u 24bpp hay 32bpp ?? thu. ?? ph?n gi?i hi?n th?i ???c ??t th?nh %dbpp."
+#: ../src/byzanzapplet.c:102
+#: ../src/byzanzapplet.c:266
+#| msgid "Record _Desktop"
+msgid "Record your desktop"
+msgstr "Ghi l?i m?n h?nh l?m vi?c c?a b?n"
+
+#: ../src/byzanzapplet.c:103
+#| msgid "Stop current recording"
+msgid "Select area to record"
+msgstr "Ch?n v?ng ?? ghi l?i"
+
+#: ../src/byzanzapplet.c:104
+#| msgid "Stop current recording"
+msgid "End current recording"
+msgstr "D?ng ghi"
+
+#: ../src/byzanzapplet.c:105
+msgid "Abort encoding of recording"
+msgstr "H?y b? m? h?a ghi ?m"
+
+#: ../src/byzanzapplet.c:276
+msgid "All files"
+msgstr "T?t c? t?p tin"
+
+#: ../src/byzanzapplet.c:366
+#| msgid "Desktop Recorder"
+msgid "Desktop Session"
+msgstr "Phi?n l?m vi?c"
 
 #: ../src/byzanzapplet.c:369
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "B? thu m?n h?nh n?n"
-
-#: ../src/byzanzapplet.c:372
-#: ../src/ByzanzApplet.server.in.in.h:3
 msgid "Record what's happening on your desktop"
-msgstr "Thu s? ki?n tr?n m?n h?nh n?n"
+msgstr "Ghi l?i m?i ho?t ??ng tr?n m?n h?nh l?m vi?c"
 
-#: ../src/byzanzapplet.c:374
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr "Nh?m Vi?t h?a GNOME <gnomevi-list at lists.sourceforge.net>"
 
-#: ../src/byzanzapplet.c:441
-msgid "Record _Mouse Cursor"
-msgstr "Thu _con tr? chu?t"
-
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "_Gi?i thi?u"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
+msgid "This format does not support recording audio."
+msgstr "??nh d?ng n?y kh?ng h? tr? ghi ?m."
+
+#: ../src/byzanzencoderbyzanz.c:80
+msgid "Byzanz debug files"
+msgstr "T?p tin g? l?i Byzanz"
+
+#: ../src/byzanzencoderflv.c:38
+msgid "Flash video"
+msgstr "Video flash"
+
+#: ../src/byzanzencodergif.c:209
+msgid "No image to encode."
+msgstr "Kh?ng c? h?nh ?nh ?? m? ho?."
+
+#: ../src/byzanzencodergif.c:248
+msgid "GIF images"
+msgstr "?nh GIF"
+
+#: ../src/byzanzencodergstreamer.c:165
+msgid "Failed to start GStreamer pipeline"
+msgstr "Kh?i ??ng ?ng d?n GStreamer th?t b?i"
+
+#: ../src/byzanzencoderogv.c:38
+msgid "Theora video"
+msgstr "Video Theora"
+
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "Video Webm"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
-msgstr "Thu _m?n h?nh n?n"
+msgstr "Ghi l?i m?n _h?nh l?m vi?c"
 
-#: ../src/byzanzselect.c:312
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
-msgstr "Thu to?n b? m?n h?nh n?n"
+msgstr "Ghi l?i to?n b? m?n h?nh"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
-msgstr "Thu _v?ng"
+msgstr "Ghi h?nh m?t _khu v?c"
 
-#: ../src/byzanzselect.c:314
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
-msgstr "Thu m?t v?ng ???c ch?n c?a m?n h?nh n?n"
+msgstr "Ghi h?nh m?t v?ng ???c ch?n c?a m?n h?nh"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
-msgstr "Thu c?a _s?"
+msgstr "Ghi h?nh _c?a s?"
 
-#: ../src/byzanzselect.c:316
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
-msgstr "Thu m?t c?a s? ???c ch?n"
+msgstr "Ghi h?nh m?t c?a s? ???c ch?n"
+
+#: ../src/byzanzserialize.c:89
+#| msgid "Cannot start recording."
+msgid "Not a Byzanz recording"
+msgstr "Kh?ng ph?i b?n ghi c?a Byzanz"
+
+#: ../src/byzanzserialize.c:95
+msgid "Unsupported byte order"
+msgstr "Th? t? byte kh?ng ???c h? tr?"
+
+#: ../src/playback.c:37
+#, c-format
+#| msgid "usage: %s [OPTIONS] filename\n"
+msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
+msgstr "s? d?ng: %s [T?Y_CH?N] T?P_TIN_V?O T?P_TIN_XU?T\n"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "B? t?o Byzanz"
+#: ../src/playback.c:38 ../src/record.c:68
+#, c-format
+msgid "       %s --help\n"
+msgstr "       %s --help\n"
 
-#: ../src/record.c:36
+#: ../src/playback.c:77
+msgid "process a Byzanz debug recording"
+msgstr ""
+
+#: ../src/playback.c:84 ../src/record.c:143
+#, c-format
+msgid "Wrong option: %s\n"
+msgstr "T?y ch?n sai: %s\n"
+
+#: ../src/record.c:37
 msgid "Duration of animation (default: 10 seconds)"
 msgstr "Th?i gian ho?t ?nh (m?c ??nh: 10 gi?y)"
 
-#: ../src/record.c:36
-#: ../src/record.c:37
+#: ../src/record.c:37 ../src/record.c:38
 msgid "SECS"
 msgstr "GI?Y"
 
-#: ../src/record.c:37
+#: ../src/record.c:38
 msgid "Delay before start (default: 1 second)"
 msgstr "Kho?ng ??i tr??c khi b?t ??u (m?c ??nh: 1 gi?y)"
 
-#: ../src/record.c:38
-msgid "Let the animation loop"
-msgstr "Cho ph?p ho?t ?nh cu?n l?i"
+#: ../src/record.c:39
+msgid "Record mouse cursor"
+msgstr "Ghi h?nh con tr? chu?t"
 
-#: ../src/record.c:40
+#: ../src/record.c:41
 msgid "X coordinate of rectangle to record"
-msgstr "To? ?? X c?a h?nh ch? nh?t c?n thu"
+msgstr "To? ?? X c?a h?nh ch? nh?t c?n ghi"
 
-#: ../src/record.c:40
-#: ../src/record.c:41
-#: ../src/record.c:42
-#: ../src/record.c:43
+#: ../src/record.c:41 ../src/record.c:42 ../src/record.c:43 ../src/record.c:44
 msgid "PIXEL"
 msgstr "?I?M ?NH"
 
-#: ../src/record.c:41
+#: ../src/record.c:42
 msgid "Y coordinate of rectangle to record"
-msgstr "To? ?? Y c?a h?nh ch? nh?t c?n thu"
+msgstr "To? ?? Y c?a h?nh ch? nh?t c?n ghi"
 
-#: ../src/record.c:42
+#: ../src/record.c:43
 msgid "Width of recording rectangle"
-msgstr "Chi?u r?ng c?a h?nh ch? nh?t ?ang thu"
+msgstr "Chi?u r?ng c?a h?nh ch? nh?t c?n ghi"
 
-#: ../src/record.c:43
+#: ../src/record.c:44
 msgid "Height of recording rectangle"
-msgstr "Chi?u cao c?a h?nh ch? nh?t ?ang thu"
+msgstr "Chi?u cao c?a h?nh ch? nh?t c?n ghi"
 
-#: ../src/record.c:44
+#: ../src/record.c:45
 msgid "Be verbose"
 msgstr "Xu?t chi ti?t"
 
-#: ../src/record.c:66
+#: ../src/record.c:67
 #, c-format
 msgid "usage: %s [OPTIONS] filename\n"
 msgstr "s? d?ng: %s [T?Y_CH?N] t?n_t?p_tin\n"
 
-#: ../src/record.c:67
+#: ../src/record.c:77
 #, c-format
-msgid "       %s --help\n"
-msgstr "       %s --help\n"
-
-#: ../src/record.c:73
-msgid "Recording done. Cleaning up...\n"
-msgstr "Ho?n t?t thu. ?ang l?m s?ch...\n"
+#| msgid "Stop current recording"
+msgid "Error during recording: %s\n"
+msgstr "L?i trong qu? tr?nh ghi: %s\n"
 
 #: ../src/record.c:83
+#| msgid "Recording method"
+msgid "Recording done.\n"
+msgstr "?? ghi xong.\n"
+
+#: ../src/record.c:91
+#| msgid "Recording done. Cleaning up...\n"
+msgid "Recording completed. Finishing encoding...\n"
+msgstr "?? ghi xong. ?ang m? ho?...\n"
+
+#: ../src/record.c:100
 #, c-format
 msgid "Recording starts. Will record %d seconds...\n"
-msgstr "S?p thu ? s? thu %d gi?y...\n"
-
-#: ../src/record.c:93
-msgid "Preparing recording. Will start in 1 second...\n"
-msgstr "?ang chu?n b? ch?c n?ng thu : s? b?t ??u sau 1 gi?y...\n"
+msgstr "S?p ghi h?nh. S? ghi %d gi?y...\n"
 
-#: ../src/record.c:116
+#: ../src/record.c:135
 msgid "record your current desktop session"
-msgstr "thu bu?i h?p ?ang ch?y tr?n m?n h?nh n?n"
+msgstr "ghi l?i phi?n l?m vi?c hi?n t?i"
 
-#: ../src/record.c:120
+#: ../src/record.c:152
 #, c-format
-msgid "Wrong option: %s\n"
-msgstr "T?y ch?n sai: %s\n"
+msgid "Given area is not inside desktop.\n"
+msgstr "V?ng ?? ch?n kh?ng n?m trong m?n h?nh l?m vi?c.\n"
 
-#: ../src/record.c:138
-#, c-format
-msgid ""
-"Could not prepare recording.\n"
-"Most likely the Damage extension is not available on the X server or the "
-"file \"%s\" is not writable.\n"
-msgstr "Kh?ng th? chu?n b? ch?c n?ng thu.\n"
-"R?t c? th? l? ph?n m? r?ng Damage kh?ng c?ng b? th?ng qua tr?nh ph?c v? X, ho?c ? %s ? kh?ng ghi ???c.\n"
+#~ msgid "Directory to save in"
+#~ msgstr "Th? m?c v?o ?? c?n l?u"
+
+#~ msgid ""
+#~ "If set, Byzanz will record the mouse cursor. While useful, recording the "
+#~ "mouse cursor results in bigger files and should therefore be used with "
+#~ "care."
+#~ msgstr ""
+#~ "B?t t?y ch?n n?y th? tr?nh Byzanz s? thu con tr? chu?t. D? c? ?ch, ch?c "
+#~ "n?ng thu con tr? chu?t g?y ra t?p tin l?n: h?y s? d?ng c?n th?n."
+
+#~ msgid ""
+#~ "This is the directory that Byzanz will default to when saving a file."
+#~ msgstr "??y l? th? m?c m?c ??nh v?o ?? Byzanz s? l?u t?p tin."
+
+#~ msgid "A file could not be saved."
+#~ msgstr "M?t t?p tin kh?ng l?u ???c."
+
+#~ msgid ""
+#~ "\"%s\" could not be saved.\n"
+#~ "The error that occured was: %s"
+#~ msgstr ""
+#~ "? %s ? kh?ng l?u ???c.\n"
+#~ "G?p l?i: %s"
+
+#~ msgid "Save Recorded File"
+#~ msgstr "L?u t?p tin ?? l?u"
+
+#~ msgid ""
+#~ "Byzanz requires a 24bpp or 32bpp depth for recording. The current "
+#~ "resolution is set to %dbpp."
+#~ msgstr ""
+#~ "Tr?nh Byzanz ??i h?i ?? s?u 24bpp hay 32bpp ?? thu. ?? ph?n gi?i hi?n "
+#~ "th?i ???c ??t th?nh %dbpp."
+
+#~ msgid "Record _Mouse Cursor"
+#~ msgstr "Thu _con tr? chu?t"
+
+#~ msgid "Byzanz Factory"
+#~ msgstr "B? t?o Byzanz"
+
+#~ msgid "Let the animation loop"
+#~ msgstr "Cho ph?p ho?t ?nh cu?n l?i"
+
+#~ msgid "Preparing recording. Will start in 1 second...\n"
+#~ msgstr "?ang chu?n b? ch?c n?ng thu : s? b?t ??u sau 1 gi?y...\n"
+
+#~ msgid ""
+#~ "Could not prepare recording.\n"
+#~ "Most likely the Damage extension is not available on the X server or the "
+#~ "file \"%s\" is not writable.\n"
+#~ msgstr ""
+#~ "Kh?ng th? chu?n b? ch?c n?ng thu.\n"
+#~ "R?t c? th? l? ph?n m? r?ng Damage kh?ng c?ng b? th?ng qua tr?nh ph?c v? "
+#~ "X, ho?c ? %s ? kh?ng ghi ???c.\n"
diff -Nru byzanz-0.2.2/po/zh_CN.po byzanz-0.2.2+git22.10.2011/po/zh_CN.po
--- byzanz-0.2.2/po/zh_CN.po	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/po/zh_CN.po	2011-10-22 12:56:33.000000000 +0200
@@ -7,10 +7,10 @@
 msgstr ""
 "Project-Id-Version: byzanz master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
-"product=byzanz&component=general\n"
-"POT-Creation-Date: 2010-02-21 20:01+0000\n"
-"PO-Revision-Date: 2010-02-22 21:56+0800\n"
-"Last-Translator: YunQiang Su <wzssyqa at gmail.com>\n"
+"product=byzanz&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2011-03-20 18:39+0000\n"
+"PO-Revision-Date: 2011-03-03 21:34+0800\n"
+"Last-Translator: Yinghua Wang <wantinghard at gmail.com>\n"
 "Language-Team: Chinese (China) <i18n-zh at googlegroups.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,7 +24,7 @@
 "?????????????Byzanz ??????????????????????"
 "??"
 
-#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:294 ../src/record.c:40
+#: ../src/byzanz.schemas.in.h:2 ../src/byzanzapplet.c:292 ../src/record.c:40
 msgid "Record audio"
 msgstr "??"
 
@@ -49,43 +49,43 @@
 "?????????????????????screen???????????area???"
 "????????window??????????"
 
-#: ../src/byzanzapplet.c:103 ../src/byzanzapplet.c:268
+#: ../src/byzanzapplet.c:102 ../src/byzanzapplet.c:266
 msgid "Record your desktop"
 msgstr "????"
 
-#: ../src/byzanzapplet.c:104
+#: ../src/byzanzapplet.c:103
 msgid "Select area to record"
 msgstr "???????"
 
-#: ../src/byzanzapplet.c:105
+#: ../src/byzanzapplet.c:104
 msgid "End current recording"
 msgstr "??????"
 
-#: ../src/byzanzapplet.c:106
+#: ../src/byzanzapplet.c:105
 msgid "Abort encoding of recording"
 msgstr "???????"
 
-#: ../src/byzanzapplet.c:278
+#: ../src/byzanzapplet.c:276
 msgid "All files"
 msgstr "????"
 
-#: ../src/byzanzapplet.c:368
+#: ../src/byzanzapplet.c:366
 msgid "Desktop Session"
 msgstr "????"
 
-#: ../src/byzanzapplet.c:371 ../src/ByzanzApplet.server.in.in.h:3
+#: ../src/byzanzapplet.c:369
 msgid "Record what's happening on your desktop"
 msgstr "???????????"
 
-#: ../src/byzanzapplet.c:373
+#: ../src/byzanzapplet.c:371
 msgid "translator-credits"
 msgstr "YunQiang Su <wzssyqazz at gmail.com>"
 
-#: ../src/byzanzapplet.xml.h:1
+#: ../src/byzanzapplet.c:376
 msgid "_About"
 msgstr "??(_A)"
 
-#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:118
+#: ../src/byzanzencoder.c:89 ../src/byzanzencodergstreamer.c:127
 msgid "This format does not support recording audio."
 msgstr "???????????"
 
@@ -105,7 +105,7 @@
 msgid "GIF images"
 msgstr "GIF ??"
 
-#: ../src/byzanzencodergstreamer.c:156
+#: ../src/byzanzencodergstreamer.c:165
 msgid "Failed to start GStreamer pipeline"
 msgstr "?? GStreamer ????"
 
@@ -113,27 +113,31 @@
 msgid "Theora video"
 msgstr "Theora ??"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzencoderwebm.c:38
+msgid "WebM video"
+msgstr "WebM ??"
+
+#: ../src/byzanzselect.c:357
 msgid "Record _Desktop"
 msgstr "????(_D)"
 
-#: ../src/byzanzselect.c:354
+#: ../src/byzanzselect.c:357
 msgid "Record the entire desktop"
 msgstr "??????"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record _Area"
 msgstr "????(_A)"
 
-#: ../src/byzanzselect.c:356
+#: ../src/byzanzselect.c:359
 msgid "Record a selected area of the desktop"
 msgstr "????????????"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record _Window"
 msgstr "????(_W)"
 
-#: ../src/byzanzselect.c:358
+#: ../src/byzanzselect.c:361
 msgid "Record a selected window"
 msgstr "???????"
 
@@ -145,14 +149,6 @@
 msgid "Unsupported byte order"
 msgstr "????????"
 
-#: ../src/ByzanzApplet.server.in.in.h:1
-msgid "Byzanz Factory"
-msgstr "Byzanz ??"
-
-#: ../src/ByzanzApplet.server.in.in.h:2
-msgid "Desktop Recorder"
-msgstr "?????"
-
 #: ../src/playback.c:37
 #, c-format
 msgid "usage: %s [OPTIONS] INFILE OUTFILE\n"
@@ -164,10 +160,10 @@
 msgstr "       %s --help\n"
 
 #: ../src/playback.c:77
-msgid "process a byzanz debug recording"
-msgstr "?? byzanz ????"
+msgid "process a Byzanz debug recording"
+msgstr "?? Byzanz ????"
 
-#: ../src/playback.c:84 ../src/record.c:140
+#: ../src/playback.c:84 ../src/record.c:143
 #, c-format
 msgid "Wrong option: %s\n"
 msgstr "?????%s\n"
@@ -235,11 +231,17 @@
 msgid "Recording starts. Will record %d seconds...\n"
 msgstr "???????? %d ?...\n"
 
-#: ../src/record.c:132
+#: ../src/record.c:135
 msgid "record your current desktop session"
 msgstr "??????????"
 
-#: ../src/record.c:149
+#: ../src/record.c:152
 #, c-format
 msgid "Given area is not inside desktop.\n"
 msgstr "???????????\n"
+
+#~ msgid "Byzanz Factory"
+#~ msgstr "Byzanz ??"
+
+#~ msgid "Desktop Recorder"
+#~ msgstr "?????"
diff -Nru byzanz-0.2.2/src/byzanzapplet.c byzanz-0.2.2+git22.10.2011/src/byzanzapplet.c
--- byzanz-0.2.2/src/byzanzapplet.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzapplet.c	2011-10-22 12:56:33.000000000 +0200
@@ -41,7 +41,6 @@
 
   GtkWidget *		button;		/* recording button */
   GtkWidget *		image;		/* image displayed in button */
-  GtkTooltips *		tooltips;	/* our tooltips */
   GtkWidget *           dialog;         /* file chooser */
   GFile *               file;           /* file selected for recording */
   GType                 encoder_type;   /* last selected encoder type or 0 if none */
@@ -137,8 +136,7 @@
 
   gtk_image_set_from_icon_name (GTK_IMAGE (priv->image), 
       state_info[state].stock_icon, GTK_ICON_SIZE_LARGE_TOOLBAR);
-  gtk_tooltips_set_tip (priv->tooltips, priv->button,
-      _(state_info[state].tooltip), NULL);
+  gtk_widget_set_tooltip_text (priv->button, _(state_info[state].tooltip));
   
   return TRUE;
 }
@@ -182,7 +180,7 @@
 static int method_response_codes[] = { GTK_RESPONSE_ACCEPT, GTK_RESPONSE_APPLY, GTK_RESPONSE_OK, GTK_RESPONSE_YES };
 
 static void
-byzanz_applet_select_done (GdkWindow *window, const GdkRectangle *area, gpointer data)
+byzanz_applet_select_done (GdkWindow *window, const cairo_rectangle_int_t *area, gpointer data)
 {
   AppletPrivate *priv = data;
 
@@ -357,7 +355,7 @@
 }
 
 static void 
-byzanz_about_cb (BonoboUIComponent *uic, AppletPrivate *priv, const char *verb)
+byzanz_about_cb (GtkAction *action, AppletPrivate *priv)
 {
   const gchar *authors[] = {
     "Benjamin Otte <otte at gnome.org>", 
@@ -374,15 +372,18 @@
     NULL );
 }
 
-static const BonoboUIVerb byzanz_menu_verbs [] = {
-	BONOBO_UI_UNSAFE_VERB ("ByzanzAbout",      byzanz_about_cb),
-        BONOBO_UI_VERB_END
+static const GtkActionEntry byzanz_menu_actions [] = {
+  { "ByzanzAbout", GTK_STOCK_ABOUT, N_("_About"),
+    NULL, NULL,
+    G_CALLBACK (byzanz_about_cb) }
 };
 
 static gboolean
 byzanz_applet_fill (PanelApplet *applet, const gchar *iid, gpointer data)
 {
   AppletPrivate *priv;
+  GtkActionGroup *action_group;
+  char *ui_path;
   char *method;
   
   if (!index_quark)
@@ -401,10 +402,19 @@
   panel_applet_add_preferences (applet, "/schemas/apps/byzanz-applet/prefs",
       NULL);
   panel_applet_set_flags (applet, PANEL_APPLET_EXPAND_MINOR);
-  panel_applet_setup_menu_from_file (PANEL_APPLET (applet), 
-      DATADIR, "byzanzapplet.xml", NULL, byzanz_menu_verbs, priv);
-
-  priv->tooltips = gtk_tooltips_new ();
+  action_group = gtk_action_group_new ("Byzanz Applet Actions");
+#ifdef GETTEXT_PACKAGE
+  gtk_action_group_set_translation_domain (action_group, GETTEXT_PACKAGE);
+#endif
+  gtk_action_group_add_actions (action_group,
+				byzanz_menu_actions,
+				G_N_ELEMENTS (byzanz_menu_actions),
+				priv);
+  ui_path = g_build_filename (BYZANZ_MENU_UI_DIR, "byzanzapplet.xml", NULL);
+  panel_applet_setup_menu_from_file (PANEL_APPLET (applet),
+				     ui_path, action_group);
+  g_free (ui_path);
+  g_object_unref (action_group);
 
   method = panel_applet_gconf_get_string (priv->applet, "method", NULL);
   priv->method = byzanz_select_method_lookup (method);
@@ -425,7 +435,9 @@
   return TRUE;
 }
 
-PANEL_APPLET_BONOBO_FACTORY ("OAFIID:ByzanzApplet_Factory",
-    PANEL_TYPE_APPLET, "ByzanzApplet", "0",
-    byzanz_applet_fill, NULL);
+PANEL_APPLET_OUT_PROCESS_FACTORY ("ByzanzAppletFactory",
+				  PANEL_TYPE_APPLET,
+				  byzanz_applet_fill,
+				  NULL)
+
 
diff -Nru byzanz-0.2.2/src/ByzanzApplet.server.in.in byzanz-0.2.2+git22.10.2011/src/ByzanzApplet.server.in.in
--- byzanz-0.2.2/src/ByzanzApplet.server.in.in	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/ByzanzApplet.server.in.in	1970-01-01 01:00:00.000000000 +0100
@@ -1,36 +0,0 @@
-<oaf_info>
-
-<oaf_server iid="OAFIID:ByzanzApplet_Factory"
-	    type="exe"
-	    location="@LIBEXECDIR@/byzanz-applet">
-
-	<oaf_attribute name="repo_ids" type="stringv">
-		<item value="IDL:Bonobo/GenericFactory:1.0"/>
-		<item value="IDL:Bonobo/Unknown:1.0"/>
-	</oaf_attribute>
-	<oaf_attribute name="name" type="string" _value="Byzanz Factory"/>
-	<oaf_attribute name="description" type="string" _value="Byzanz Factory"/>
-
-</oaf_server>
-
-<oaf_server iid="OAFIID:ByzanzApplet"
-	    type="factory" 
-	    location="OAFIID:ByzanzApplet_Factory">
-
-	<oaf_attribute name="repo_ids" type="stringv">
-		<item value="IDL:GNOME/Vertigo/PanelAppletShell:1.0"/>
-		<item value="IDL:Bonobo/Control:1.0"/>
-		<item value="IDL:Bonobo/Unknown:1.0"/>
-	</oaf_attribute>
-	<oaf_attribute name="name" type="string" _value="Desktop Recorder"/>
-	<oaf_attribute name="description" type="string" _value="Record what's happening on your desktop"/>
-	<oaf_attribute name="panel:icon" type="string" value="byzanz-record-desktop.png"/>
-	<oaf_attribute name="bugzilla:bugzilla" type="string" value="GNOME"/>
-        <oaf_attribute name="bugzilla:product" type="string" value="byzanz"/>
-        <oaf_attribute name="bugzilla:component" type="string" value="applet"/>
-        <oaf_attribute name="bugzilla:other_binaries" type="string" value="byzanz-applet"/>
-
-
-</oaf_server>
-
-</oaf_info>
diff -Nru byzanz-0.2.2/src/byzanzapplet.xml byzanz-0.2.2+git22.10.2011/src/byzanzapplet.xml
--- byzanz-0.2.2/src/byzanzapplet.xml	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzapplet.xml	2011-10-22 12:56:33.000000000 +0200
@@ -1,8 +1,2 @@
-<Root>
-   <popups>
-      <popup name="button3">
-         <menuitem name="Byzanz About Item" verb="ByzanzAbout" _label="_About"
-                   pixtype="stock" pixname="gnome-stock-about"/>
-      </popup>
-   </popups>
-</Root>
+<menuitem name="Byzanz About Item" action="ByzanzAbout"/>
+
diff -Nru byzanz-0.2.2/src/byzanzencoderbyzanz.c byzanz-0.2.2+git22.10.2011/src/byzanzencoderbyzanz.c
--- byzanz-0.2.2/src/byzanzencoderbyzanz.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencoderbyzanz.c	2011-10-22 12:56:33.000000000 +0200
@@ -42,13 +42,13 @@
 }
 
 static gboolean
-byzanz_encoder_byzanz_process (ByzanzEncoder *   encoder,
-                               GOutputStream *   stream,
-                               guint64           msecs,
-                               cairo_surface_t * surface,
-                               const GdkRegion * region,
-                               GCancellable *    cancellable,
-                               GError **	 error)
+byzanz_encoder_byzanz_process (ByzanzEncoder *        encoder,
+                               GOutputStream *        stream,
+                               guint64                msecs,
+                               cairo_surface_t *      surface,
+                               const cairo_region_t * region,
+                               GCancellable *         cancellable,
+                               GError **	      error)
 {
   return byzanz_serialize (stream, msecs, surface, region, cancellable, error);
 }
diff -Nru byzanz-0.2.2/src/byzanzencoder.c byzanz-0.2.2+git22.10.2011/src/byzanzencoder.c
--- byzanz-0.2.2/src/byzanzencoder.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencoder.c	2011-10-22 12:56:33.000000000 +0200
@@ -31,7 +31,7 @@
 struct _ByzanzEncoderJob {
   GTimeVal		tv;		/* time this job was enqueued */
   cairo_surface_t *	surface;	/* image to process */
-  GdkRegion *		region;		/* relevant region of image */
+  cairo_region_t *	region;		/* relevant region of image */
 };
 
 static void
@@ -40,7 +40,7 @@
   if (job->surface)
     cairo_surface_destroy (job->surface);
   if (job->region)
-    gdk_region_destroy (job->region);
+    cairo_region_destroy (job->region);
 
   g_slice_free (ByzanzEncoderJob, job);
 }
@@ -80,7 +80,7 @@
   ByzanzEncoderClass *klass = BYZANZ_ENCODER_GET_CLASS (encoder);
   guint width, height;
   cairo_surface_t *surface;
-  GdkRegion *region;
+  cairo_region_t *region;
   guint64 msecs;
   gboolean success;
 
@@ -107,7 +107,7 @@
     /* decode */
     success = klass->process (encoder, output, msecs, surface, region, cancellable, error);
     cairo_surface_destroy (surface);
-    gdk_region_destroy (region);
+    cairo_region_destroy (region);
     if (!success)
       return FALSE;
   }
@@ -349,7 +349,7 @@
 void
 byzanz_encoder_process (ByzanzEncoder *	 encoder,
 		        cairo_surface_t *surface,
-			const GdkRegion *region,
+			const cairo_region_t *region,
 			const GTimeVal * total_elapsed)
 {
   ByzanzEncoderJob *job;
@@ -364,7 +364,7 @@
 
   job = g_slice_new (ByzanzEncoderJob);
   job->surface = cairo_surface_reference (surface);
-  job->region = gdk_region_copy (region);
+  job->region = cairo_region_copy (region);
   job->tv = *total_elapsed;
 
   g_async_queue_push (encoder->jobs, job);
@@ -433,10 +433,12 @@
 #include "byzanzencoderflv.h"
 #include "byzanzencodergif.h"
 #include "byzanzencoderogv.h"
+#include "byzanzencoderwebm.h"
 
 typedef GType (* TypeFunc) (void);
 static const TypeFunc functions[] = {
   byzanz_encoder_gif_get_type,
+  byzanz_encoder_webm_get_type,
   byzanz_encoder_ogv_get_type,
   byzanz_encoder_flv_get_type,
   /* debug types */
diff -Nru byzanz-0.2.2/src/byzanzencodergif.c byzanz-0.2.2+git22.10.2011/src/byzanzencodergif.c
--- byzanz-0.2.2/src/byzanzencodergif.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencodergif.c	2011-10-22 12:56:33.000000000 +0200
@@ -109,16 +109,16 @@
 }
 
 static gboolean
-byzanz_encoder_gif_encode_image (ByzanzEncoderGif * gif,
-                                 cairo_surface_t *  surface,
-                                 const GdkRegion *  region,
-                                 GdkRectangle *     area_out)
+byzanz_encoder_gif_encode_image (ByzanzEncoderGif *      gif,
+                                 cairo_surface_t *       surface,
+                                 const cairo_region_t *  region,
+                                 cairo_rectangle_int_t * area_out)
 {
-  GdkRectangle extents, area, *rects;
+  cairo_rectangle_int_t extents, area, rect;
   guint8 transparent;
   guint i, n_rects, stride, width;
 
-  gdk_region_get_clipbox (region, &extents);
+  cairo_region_get_extents (region, &extents);
   transparent = gifenc_palette_get_alpha_index (gif->gifenc->palette);
   stride = cairo_image_surface_get_stride (surface);
   width = gifenc_get_width (gif->gifenc);
@@ -130,32 +130,32 @@
   }
 
   /* render changed parts */
-  gdk_region_get_rectangles (region, &rects, (int *) &n_rects);
-  memset (area_out, 0, sizeof (GdkRectangle));
+  n_rects = cairo_region_num_rectangles (region);
+  memset (area_out, 0, sizeof (cairo_rectangle_int_t));
   for (i = 0; i < n_rects; i++) {
+    cairo_region_get_rectangle (region, i, &rect);
     if (gifenc_dither_rgb_with_full_image (
-          gif->cached_tmp + width * rects[i].y + rects[i].x, width,
-	  gif->image_data + width * rects[i].y + rects[i].x, width, 
+          gif->cached_tmp + width * rect.y + rect.x, width,
+	  gif->image_data + width * rect.y + rect.x, width, 
 	  gif->gifenc->palette, 
-          cairo_image_surface_get_data (surface) + (rects[i].x - extents.x) * 4
-              + (rects[i].y - extents.y) * stride,
-          rects[i].width, rects[i].height, stride, &area)) {
-      area.x += rects[i].x;
-      area.y += rects[i].y;
+          cairo_image_surface_get_data (surface) + (rect.x - extents.x) * 4
+              + (rect.y - extents.y) * stride,
+          rect.width, rect.height, stride, &area)) {
+      area.x += rect.x;
+      area.y += rect.y;
       if (area_out->width > 0 && area_out->height > 0)
-        gdk_rectangle_union (area_out, &area, area_out);
+        gdk_rectangle_union ((const GdkRectangle*)area_out, (const GdkRectangle*) &area, (GdkRectangle*)area_out);
       else
         *area_out = area;
     }
   }
-  g_free (rects);
 
   return area_out->width > 0 && area_out->height > 0;
 }
 
 static void
-byzanz_encoder_swap_image (ByzanzEncoderGif * gif,
-                           GdkRectangle *     area)
+byzanz_encoder_swap_image (ByzanzEncoderGif *      gif,
+                           cairo_rectangle_int_t * area)
 {
   guint8 *swap;
 
@@ -166,16 +166,16 @@
 }
 
 static gboolean
-byzanz_encoder_gif_process (ByzanzEncoder *   encoder,
-                            GOutputStream *   stream,
-                            guint64           msecs,
-                            cairo_surface_t * surface,
-                            const GdkRegion * region,
-                            GCancellable *    cancellable,
-                            GError **	      error)
+byzanz_encoder_gif_process (ByzanzEncoder *        encoder,
+                            GOutputStream *        stream,
+                            guint64                msecs,
+                            cairo_surface_t *      surface,
+                            const cairo_region_t * region,
+                            GCancellable *         cancellable,
+                            GError **	           error)
 {
   ByzanzEncoderGif *gif = BYZANZ_ENCODER_GIF (encoder);
-  GdkRectangle area;
+  cairo_rectangle_int_t area;
 
   if (!gif->has_quantized) {
     if (!byzanz_encoder_gif_quantize (gif, surface, error))
diff -Nru byzanz-0.2.2/src/byzanzencodergif.h byzanz-0.2.2+git22.10.2011/src/byzanzencodergif.h
--- byzanz-0.2.2/src/byzanzencodergif.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencodergif.h	2011-10-22 12:56:33.000000000 +0200
@@ -41,7 +41,7 @@
   gboolean              has_quantized;  /* qantization has happened already */
   guint8 *              image_data;     /* width * height of encoded image */
 
-  GdkRectangle          cached_area;    /* area that is saved in cached_data */
+  cairo_rectangle_int_t cached_area;    /* area that is saved in cached_data */
   guint8 *              cached_data;    /* cached_area.{width x height} sized area of image */
   guint64               cached_time;    /* timestamp the cached image corresponds to */
 
diff -Nru byzanz-0.2.2/src/byzanzencodergstreamer.c byzanz-0.2.2+git22.10.2011/src/byzanzencodergstreamer.c
--- byzanz-0.2.2/src/byzanzencodergstreamer.c	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencodergstreamer.c	2011-10-22 12:56:33.000000000 +0200
@@ -39,9 +39,10 @@
   GstBuffer *buffer;
   cairo_t *cr;
   cairo_surface_t *surface;
-  GdkRegion *region;
+  cairo_region_t *region;
   GError *error = NULL;
   guint64 msecs;
+  int i, num_rects;
 
   if (!byzanz_deserialize (encoder->input_stream, &msecs, &surface, &region, encoder->cancellable, &error)) {
     gst_element_message_full (GST_ELEMENT (src), GST_MESSAGE_ERROR,
@@ -71,7 +72,15 @@
   }
   cr = cairo_create (gst->surface);
   cairo_set_source_surface (cr, surface, 0, 0);
-  gdk_cairo_region (cr, region);
+
+  num_rects = cairo_region_num_rectangles (region);
+  for (i = 0; i < num_rects; i++) {
+    cairo_rectangle_int_t rect;
+    cairo_region_get_rectangle (region, i, &rect);
+    cairo_rectangle (cr, rect.x, rect.y,
+                     rect.width, rect.height);
+  }
+
   cairo_fill (cr);
   cairo_destroy (cr);
 
diff -Nru byzanz-0.2.2/src/byzanzencoder.h byzanz-0.2.2+git22.10.2011/src/byzanzencoder.h
--- byzanz-0.2.2/src/byzanzencoder.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencoder.h	2011-10-22 12:56:33.000000000 +0200
@@ -76,7 +76,7 @@
 						 GOutputStream *	stream,
                                                  guint64                msecs,
 						 cairo_surface_t *	surface,
-						 const GdkRegion *	region,
+						 const cairo_region_t *	region,
                                                  GCancellable *         cancellable,
 						 GError **		error);
   gboolean		(* close)		(ByzanzEncoder *	encoder,
@@ -96,7 +96,7 @@
 /*
 void		byzanz_encoder_process		(ByzanzEncoder *	encoder,
 						 cairo_surface_t *	surface,
-						 const GdkRegion *	region,
+						 const cairo_region_t *	region,
 						 const GTimeVal *	total_elapsed);
 void		byzanz_encoder_close		(ByzanzEncoder *	encoder,
 						 const GTimeVal *	total_elapsed);
diff -Nru byzanz-0.2.2/src/byzanzencoderwebm.c byzanz-0.2.2+git22.10.2011/src/byzanzencoderwebm.c
--- byzanz-0.2.2/src/byzanzencoderwebm.c	1970-01-01 01:00:00.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencoderwebm.c	2011-10-22 12:56:33.000000000 +0200
@@ -0,0 +1,55 @@
+/* desktop session recorder
+ * Copyright (C) 2010 Benjamin Otte <otte at gnome.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "byzanzencoderwebm.h"
+
+#include <glib/gi18n.h>
+
+G_DEFINE_TYPE (ByzanzEncoderWebm, byzanz_encoder_webm, BYZANZ_TYPE_ENCODER_GSTREAMER)
+
+static void
+byzanz_encoder_webm_class_init (ByzanzEncoderWebmClass *klass)
+{
+  ByzanzEncoderClass *encoder_class = BYZANZ_ENCODER_CLASS (klass);
+  ByzanzEncoderGStreamerClass *gstreamer_class = BYZANZ_ENCODER_GSTREAMER_CLASS (klass);
+
+  encoder_class->filter = gtk_file_filter_new ();
+  g_object_ref_sink (encoder_class->filter);
+  gtk_file_filter_set_name (encoder_class->filter, _("WebM video"));
+  gtk_file_filter_add_mime_type (encoder_class->filter, "video/webm");
+  gtk_file_filter_add_pattern (encoder_class->filter, "*.webm");
+
+  gstreamer_class->pipeline_string = 
+    "appsrc name=src ! ffmpegcolorspace ! videorate ! "
+    "video/x-raw-yuv,framerate=25/1 ! vp8enc ! webmmux ! giostreamsink name=sink";
+  gstreamer_class->audio_pipeline_string = 
+    "autoaudiosrc name=audiosrc ! audioconvert ! vorbisenc ! queue ! webmmux name=muxer ! giostreamsink name=sink "
+    "appsrc name=src ! ffmpegcolorspace ! videorate ! "
+    "video/x-raw-yuv,framerate=25/1 ! vp8enc ! queue ! muxer.";
+}
+
+static void
+byzanz_encoder_webm_init (ByzanzEncoderWebm *encoder_webm)
+{
+}
+
diff -Nru byzanz-0.2.2/src/byzanzencoderwebm.h byzanz-0.2.2+git22.10.2011/src/byzanzencoderwebm.h
--- byzanz-0.2.2/src/byzanzencoderwebm.h	1970-01-01 01:00:00.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzencoderwebm.h	2011-10-22 12:56:33.000000000 +0200
@@ -0,0 +1,46 @@
+/* desktop session recorder
+ * Copyright (C) 2010 Benjamin Otte <otte at gnome.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include "byzanzencodergstreamer.h"
+
+#ifndef __HAVE_BYZANZ_ENCODER_WEBM_H__
+#define __HAVE_BYZANZ_ENCODER_WEBM_H__
+
+typedef struct _ByzanzEncoderWebm ByzanzEncoderWebm;
+typedef struct _ByzanzEncoderWebmClass ByzanzEncoderWebmClass;
+
+#define BYZANZ_TYPE_ENCODER_WEBM                    (byzanz_encoder_webm_get_type())
+#define BYZANZ_IS_ENCODER_WEBM(obj)                 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BYZANZ_TYPE_ENCODER_WEBM))
+#define BYZANZ_IS_ENCODER_WEBM_CLASS(klass)         (G_TYPE_CHECK_CLASS_TYPE ((klass), BYZANZ_TYPE_ENCODER_WEBM))
+#define BYZANZ_ENCODER_WEBM(obj)                    (G_TYPE_CHECK_INSTANCE_CAST ((obj), BYZANZ_TYPE_ENCODER_WEBM, ByzanzEncoderWebm))
+#define BYZANZ_ENCODER_WEBM_CLASS(klass)            (G_TYPE_CHECK_CLASS_CAST ((klass), BYZANZ_TYPE_ENCODER_WEBM, ByzanzEncoderWebmClass))
+#define BYZANZ_ENCODER_WEBM_GET_CLASS(obj)          (G_TYPE_INSTANCE_GET_CLASS ((obj), BYZANZ_TYPE_ENCODER_WEBM, ByzanzEncoderWebmClass))
+
+struct _ByzanzEncoderWebm {
+  ByzanzEncoderGStreamer        encoder;
+};
+
+struct _ByzanzEncoderWebmClass {
+  ByzanzEncoderGStreamerClass   encoder_class;
+};
+
+GType		byzanz_encoder_webm_get_type		(void) G_GNUC_CONST;
+
+
+#endif /* __HAVE_BYZANZ_ENCODER_WEBM_H__ */
diff -Nru byzanz-0.2.2/src/byzanzlayercursor.c byzanz-0.2.2+git22.10.2011/src/byzanzlayercursor.c
--- byzanz-0.2.2/src/byzanzlayercursor.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzlayercursor.c	2011-10-22 12:56:33.000000000 +0200
@@ -30,7 +30,7 @@
 static void
 byzanz_layer_cursor_read_cursor (ByzanzLayerCursor *clayer)
 {
-  Display *dpy = gdk_x11_drawable_get_xdisplay (BYZANZ_LAYER (clayer)->recorder->window);
+  Display *dpy = GDK_DISPLAY_XDISPLAY (gdk_window_get_display (BYZANZ_LAYER (clayer)->recorder->window));
 
   clayer->cursor_next = XFixesGetCursorImage (dpy);
   if (clayer->cursor_next)
@@ -86,9 +86,9 @@
 }
 
 static void
-byzanz_recorder_invalidate_cursor (GdkRegion *region, XFixesCursorImage *cursor, int x, int y)
+byzanz_recorder_invalidate_cursor (cairo_region_t *region, XFixesCursorImage *cursor, int x, int y)
 {
-  GdkRectangle cursor_rect;
+  cairo_rectangle_int_t cursor_rect;
 
   if (cursor == NULL)
     return;
@@ -98,14 +98,14 @@
   cursor_rect.width = cursor->width;
   cursor_rect.height = cursor->height;
 
-  gdk_region_union_with_rect (region, &cursor_rect);
+  cairo_region_union_rectangle (region, &cursor_rect);
 }
 
-static GdkRegion *
+static cairo_region_t *
 byzanz_layer_cursor_snapshot (ByzanzLayer *layer)
 {
   ByzanzLayerCursor *clayer = BYZANZ_LAYER_CURSOR (layer);
-  GdkRegion *region, *area;
+  cairo_region_t *region, *area;
   int x, y;
   
   gdk_window_get_pointer (layer->recorder->window, &x, &y, NULL);
@@ -114,12 +114,12 @@
       clayer->cursor_next == clayer->cursor)
     return NULL;
 
-  region = gdk_region_new ();
+  region = cairo_region_create ();
   byzanz_recorder_invalidate_cursor (region, clayer->cursor, clayer->cursor_x, clayer->cursor_y);
   byzanz_recorder_invalidate_cursor (region, clayer->cursor_next, x, y);
-  area = gdk_region_rectangle (&layer->recorder->area);
-  gdk_region_intersect (region, area);
-  gdk_region_destroy (area);
+  area = cairo_region_create_rectangle (&layer->recorder->area);
+  cairo_region_intersect (region, area);
+  cairo_region_destroy (area);
 
   clayer->cursor = clayer->cursor_next;
   clayer->cursor_x = x;
@@ -168,9 +168,9 @@
 {
   ByzanzLayerCursor *clayer = BYZANZ_LAYER_CURSOR (object);
   GdkWindow *window = BYZANZ_LAYER (object)->recorder->window;
-  Display *dpy = gdk_x11_drawable_get_xdisplay (window);
+  Display *dpy = GDK_DISPLAY_XDISPLAY (gdk_window_get_display (window));
 
-  XFixesSelectCursorInput (dpy, gdk_x11_drawable_get_xid (window), 0);
+  XFixesSelectCursorInput (dpy, GDK_WINDOW_XID (window), 0);
 
   g_hash_table_destroy (clayer->cursors);
 
@@ -186,9 +186,9 @@
 {
   ByzanzLayerCursor *clayer = BYZANZ_LAYER_CURSOR (object);
   GdkWindow *window = BYZANZ_LAYER (object)->recorder->window;
-  Display *dpy = gdk_x11_drawable_get_xdisplay (window);
+  Display *dpy = GDK_DISPLAY_XDISPLAY (gdk_window_get_display (window));
 
-  XFixesSelectCursorInput (dpy, gdk_x11_drawable_get_xid (window), XFixesDisplayCursorNotifyMask);
+  XFixesSelectCursorInput (dpy, GDK_WINDOW_XID (window), XFixesDisplayCursorNotifyMask);
   byzanz_layer_cursor_read_cursor (clayer);
   byzanz_layer_cursor_setup_poll (clayer);
 
diff -Nru byzanz-0.2.2/src/byzanzlayer.h byzanz-0.2.2+git22.10.2011/src/byzanzlayer.h
--- byzanz-0.2.2/src/byzanzlayer.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzlayer.h	2011-10-22 12:56:33.000000000 +0200
@@ -45,7 +45,7 @@
 
   gboolean              (* event)                       (ByzanzLayer *          layer,
                                                          GdkXEvent *            event);
-  GdkRegion *           (* snapshot)                    (ByzanzLayer *          layer);
+  cairo_region_t *      (* snapshot)                    (ByzanzLayer *          layer);
   void                  (* render)                      (ByzanzLayer *          layer,
                                                          cairo_t *              cr);
 };
diff -Nru byzanz-0.2.2/src/byzanzlayerwindow.c byzanz-0.2.2+git22.10.2011/src/byzanzlayerwindow.c
--- byzanz-0.2.2/src/byzanzlayerwindow.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzlayerwindow.c	2011-10-22 12:56:33.000000000 +0200
@@ -36,14 +36,16 @@
 
   if (event->type == layer->recorder->damage_event_base + XDamageNotify && 
       event->damage == wlayer->damage) {
-    GdkRectangle rect;
+    cairo_rectangle_int_t rect;
 
     rect.x = event->area.x;
     rect.y = event->area.y;
     rect.width = event->area.width;
     rect.height = event->area.height;
-    if (gdk_rectangle_intersect (&rect, &layer->recorder->area, &rect)) {
-      gdk_region_union_with_rect (wlayer->invalid, &rect);
+    if (gdk_rectangle_intersect ((GdkRectangle*) &rect,
+                                 (GdkRectangle*) &layer->recorder->area,
+                                 (GdkRectangle*) &rect)) {
+      cairo_region_union_rectangle (wlayer->invalid, &rect);
       byzanz_layer_invalidate (layer);
     }
     return TRUE;
@@ -53,38 +55,38 @@
 }
 
 static XserverRegion
-byzanz_server_region_from_gdk (Display *dpy, GdkRegion *source)
+byzanz_server_region_from_gdk (Display *dpy, cairo_region_t *source)
 {
   XserverRegion dest;
   XRectangle *dest_rects;
-  GdkRectangle *source_rects;
+  cairo_rectangle_int_t source_rect;
   int n_rectangles, i;
 
-  gdk_region_get_rectangles (source, &source_rects, &n_rectangles);
+  n_rectangles = cairo_region_num_rectangles (source);
   g_assert (n_rectangles);
   dest_rects = g_new (XRectangle, n_rectangles);
   for (i = 0; i < n_rectangles; i++) {
-    dest_rects[i].x = source_rects[i].x;
-    dest_rects[i].y = source_rects[i].y;
-    dest_rects[i].width = source_rects[i].width;
-    dest_rects[i].height = source_rects[i].height;
+    cairo_region_get_rectangle (source, i, &source_rect);
+    dest_rects[i].x = source_rect.x;
+    dest_rects[i].y = source_rect.y;
+    dest_rects[i].width = source_rect.width;
+    dest_rects[i].height = source_rect.height;
   }
   dest = XFixesCreateRegion (dpy, dest_rects, n_rectangles);
   g_free (dest_rects);
-  g_free (source_rects);
 
   return dest;
 }
 
-static GdkRegion *
+static cairo_region_t *
 byzanz_layer_window_snapshot (ByzanzLayer *layer)
 {
-  Display *dpy = gdk_x11_drawable_get_xdisplay (layer->recorder->window);
+  Display *dpy = GDK_DISPLAY_XDISPLAY (gdk_window_get_display (layer->recorder->window));
   ByzanzLayerWindow *wlayer = BYZANZ_LAYER_WINDOW (layer);
   XserverRegion reg;
-  GdkRegion *region;
+  cairo_region_t *region;
 
-  if (gdk_region_empty (wlayer->invalid))
+  if (cairo_region_is_empty (wlayer->invalid))
     return NULL;
 
   reg = byzanz_server_region_from_gdk (dpy, wlayer->invalid);
@@ -92,7 +94,7 @@
   XFixesDestroyRegion (dpy, reg);
 
   region = wlayer->invalid;
-  wlayer->invalid = gdk_region_new ();
+  wlayer->invalid = cairo_region_create ();
   return region;
 }
 
@@ -117,11 +119,11 @@
 static void
 byzanz_layer_window_finalize (GObject *object)
 {
-  Display *dpy = gdk_x11_drawable_get_xdisplay (BYZANZ_LAYER (object)->recorder->window);
+  Display *dpy = GDK_DISPLAY_XDISPLAY (gdk_window_get_display (BYZANZ_LAYER (object)->recorder->window));
   ByzanzLayerWindow *wlayer = BYZANZ_LAYER_WINDOW (object);
 
   XDamageDestroy (dpy, wlayer->damage);
-  gdk_region_destroy (wlayer->invalid);
+  cairo_region_destroy (wlayer->invalid);
 
   G_OBJECT_CLASS (byzanz_layer_window_parent_class)->finalize (object);
 }
@@ -131,11 +133,11 @@
 {
   ByzanzLayer *layer = BYZANZ_LAYER (object);
   GdkWindow *window = layer->recorder->window;
-  Display *dpy = gdk_x11_drawable_get_xdisplay (window);
+  Display *dpy = GDK_DISPLAY_XDISPLAY (gdk_window_get_display (window));
   ByzanzLayerWindow *wlayer = BYZANZ_LAYER_WINDOW (object);
 
-  wlayer->damage = XDamageCreate (dpy, gdk_x11_drawable_get_xid (window), XDamageReportDeltaRectangles);
-  gdk_region_union_with_rect (wlayer->invalid, &layer->recorder->area);
+  wlayer->damage = XDamageCreate (dpy, gdk_x11_window_get_xid (window), XDamageReportDeltaRectangles);
+  cairo_region_union_rectangle (wlayer->invalid, &layer->recorder->area);
 
   G_OBJECT_CLASS (byzanz_layer_window_parent_class)->constructed (object);
 }
@@ -157,6 +159,6 @@
 static void
 byzanz_layer_window_init (ByzanzLayerWindow *wlayer)
 {
-  wlayer->invalid = gdk_region_new ();
+  wlayer->invalid = cairo_region_create ();
 }
 
diff -Nru byzanz-0.2.2/src/byzanzlayerwindow.h byzanz-0.2.2+git22.10.2011/src/byzanzlayerwindow.h
--- byzanz-0.2.2/src/byzanzlayerwindow.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzlayerwindow.h	2011-10-22 12:56:33.000000000 +0200
@@ -38,7 +38,7 @@
 struct _ByzanzLayerWindow {
   ByzanzLayer           layer;
 
-  GdkRegion *           invalid;                /* TRUE if we need to repaint */
+  cairo_region_t *      invalid;                /* TRUE if we need to repaint */
   Damage		damage;		        /* the Damage object */
 };
 
diff -Nru byzanz-0.2.2/src/byzanz-playback.1 byzanz-0.2.2+git22.10.2011/src/byzanz-playback.1
--- byzanz-0.2.2/src/byzanz-playback.1	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/src/byzanz-playback.1	2011-10-22 12:56:33.000000000 +0200
@@ -26,9 +26,10 @@
 format to be used. See the \fBbyzanz-record\fP(1) man page for a list of
 supported formats and their extensions.
 .SH OPTIONS
+.SS "Help Options:"
 .TP
 \fB\-h\fR, \fB\-\-help\fR
-Show brief help.
+Show help options
 .SH SEE ALSO
 \fBbyzanz-record\fR(1)
 .SH AUTHOR
diff -Nru byzanz-0.2.2/src/byzanz-record.1 byzanz-0.2.2+git22.10.2011/src/byzanz-record.1
--- byzanz-0.2.2/src/byzanz-record.1	2011-10-22 12:58:02.000000000 +0200
+++ byzanz-0.2.2+git22.10.2011/src/byzanz-record.1	2011-10-22 12:56:33.000000000 +0200
@@ -28,60 +28,51 @@
 .SH OPTIONS
 .SS "Application Options:"
 .TP
-\fB\-a\fR, \fB\-\-audio\fR
-Record audio from the default input device. This only works if the output format
-supports it and will otherwise cause an error.
-.TP
-\fB\-c\fR, \fB\-\-cursor\fR
-Record mouse cursor
-.TP
 \fB\-d\fR, \fB\-\-duration\fR=\fISECS\fR
 Duration of animation (default: 10 seconds)
 .TP
 \fB\-\-delay\fR=\fISECS\fR
 Delay before start (default: 1 second)
 .TP
-\fB\-\-display\fR=\fIDISPLAY\fR
-X display to use
-.TP
-\fB\-h\fR, \fB\-\-height\fR=\fIPIXEL\fR
-Height of recording rectangle
-.TP
-\fB\-v\fR, \fB\-\-verbose\fR
-Be verbos
+\fB\-c\fR, \fB\-\-cursor\fR
+Record mouse cursor
 .TP
-\fB\-w\fR, \fB\-\-width\fR=\fIPIXEL\fR
-Width of recording rectangle
+\fB\-a\fR, \fB\-\-audio\fR
+Record audio from the default input device. This only works if the output format
+supports it and will otherwise cause an error.
 .TP
 \fB\-x\fR, \fB\-\-x\fR=\fIPIXEL\fR
 X coordinate of rectangle to record
 .TP
 \fB\-y\fR, \fB\-\-y\fR=\fIPIXEL\fR
 Y coordinate of rectangle to record
+.TP
+\fB\-w\fR, \fB\-\-width\fR=\fIPIXEL\fR
+Width of recording rectangle
+.TP
+\fB\-h\fR, \fB\-\-height\fR=\fIPIXEL\fR
+Height of recording rectangle
+.TP
+\fB\-v\fR, \fB\-\-verbose\fR
+Be verbose
+.TP
+\fB\-\-display\fR=\fIDISPLAY\fR
+X display to use
 .SS "Help Options:"
 .TP
 \-?, \fB\-\-help\fR
 Show help options
 .TP
-\fB\-\-help\-all\fR
-Show all help options
-.TP
 \fB\-\-help\-gtk\fR
 Show GTK+ Options
+.TP
+\fB\-\-help\-all\fR
+Show all help options
 .SH OUTPUT FILE
 After \fBbyzanz-record\fP is finished, the recording is written to FILENAME.
 The format is determined by the filename extension. The following formats are
 supported:
 .TP
-\fBbyzanz\fR
-Record to Byzanz' internal debugging format. This is useful for benchmarking
-Byzanz or if you want to convert the recording to multiple formats later.
-You can use \fBbyzanz-playback\fP(1) to convert the file.
-.TP
-\fBflv\fR
-Record to a Flash Screen video. This recording method is lossless. Use it if
-you want to postprocess the file in other applications.
-.TP
 \fBgif\fR
 Record to an animated GIF image. Use this if you want to record a mostly
 static screen with a limited amount of colors, such as using a file manager
@@ -91,6 +82,15 @@
 \fBogg\fR, \fBogv\fR
 Record to an Ogg Theora video. This format supports audio. Use this if you
 want to record dynamic contents, such as video playback.
+.TP
+\fBflv\fR
+Record to a Flash Screen video. This recording method is lossless. Use it if
+you want to postprocess the file in other applications.
+.TP
+\fBbyzanz\fR
+Record to Byzanz' internal debugging format. This is useful for benchmarking
+Byzanz or if you want to convert the recording to multiple formats later.
+You can use \fBbyzanz-playback\fP(1) to convert the file.
 .SH SEE ALSO
 \fBbyzanz-playback\fR(1)
 .SH AUTHOR
diff -Nru byzanz-0.2.2/src/byzanzrecorder.c byzanz-0.2.2+git22.10.2011/src/byzanzrecorder.c
--- byzanz-0.2.2/src/byzanzrecorder.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzrecorder.c	2011-10-22 12:56:33.000000000 +0200
@@ -48,13 +48,13 @@
 G_DEFINE_TYPE (ByzanzRecorder, byzanz_recorder, G_TYPE_OBJECT)
 static guint signals[LAST_SIGNAL] = { 0, };
 
-static GdkRegion *
+static cairo_region_t *
 byzanz_recorder_get_invalid_region (ByzanzRecorder *recorder)
 {
-  GdkRegion *invalid, *layer_invalid;
+  cairo_region_t *invalid, *layer_invalid;
   GSequenceIter *iter;
 
-  invalid = gdk_region_new ();
+  invalid = cairo_region_create ();
   for (iter = g_sequence_get_begin_iter (recorder->layers);
        !g_sequence_iter_is_end (iter);
        iter = g_sequence_iter_next (iter)) {
@@ -63,8 +63,8 @@
 
     layer_invalid = klass->snapshot (layer);
     if (layer_invalid) {
-      gdk_region_union (invalid, layer_invalid);
-      gdk_region_destroy (layer_invalid);
+      cairo_region_union (invalid, layer_invalid);
+      cairo_region_destroy (layer_invalid);
     }
   }
 
@@ -72,23 +72,32 @@
 }
 
 static cairo_surface_t *
-ensure_image_surface (cairo_surface_t *surface, const GdkRegion *region)
+ensure_image_surface (cairo_surface_t *surface, const cairo_region_t *region)
 {
-  GdkRectangle extents;
+  cairo_rectangle_int_t extents;
   cairo_surface_t *image;
   cairo_t *cr;
+  int i, num_rects;
 
   if (cairo_surface_get_type (surface) == CAIRO_SURFACE_TYPE_IMAGE)
     return surface;
 
-  gdk_region_get_clipbox (region, &extents);
+  cairo_region_get_extents (region, &extents);
   image = cairo_image_surface_create (CAIRO_FORMAT_RGB24, extents.width, extents.height);
   cairo_surface_set_device_offset (image, -extents.x, -extents.y);
 
   cr = cairo_create (image);
   cairo_set_source_surface (cr, surface, 0, 0);
   cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
-  gdk_cairo_region (cr, region);
+
+  num_rects = cairo_region_num_rectangles (region);
+  for (i = 0; i < num_rects; i++) {
+    cairo_rectangle_int_t rect;
+    cairo_region_get_rectangle (region, i, &rect);
+    cairo_rectangle (cr, rect.x, rect.y,
+                     rect.width, rect.height);
+  }
+
   cairo_fill (cr);
   cairo_destroy (cr);
 
@@ -97,14 +106,15 @@
 }
 
 static cairo_surface_t *
-byzanz_recorder_create_snapshot (ByzanzRecorder *recorder, const GdkRegion *invalid)
+byzanz_recorder_create_snapshot (ByzanzRecorder *recorder, const cairo_region_t *invalid)
 {
-  GdkRectangle extents;
+  cairo_rectangle_int_t extents;
   cairo_surface_t *surface;
   cairo_t *cr;
   GSequenceIter *iter;
+  int i, num_rects;
   
-  gdk_region_get_clipbox (invalid, &extents);
+  cairo_region_get_extents (invalid, &extents);
   cr = gdk_cairo_create (recorder->window);
   surface = cairo_surface_create_similar (cairo_get_target (cr), CAIRO_CONTENT_COLOR,
       extents.width, extents.height);
@@ -112,7 +122,15 @@
   cairo_surface_set_device_offset (surface, -extents.x, -extents.y);
 
   cr = cairo_create (surface);
-  gdk_cairo_region (cr, invalid);
+
+  num_rects = cairo_region_num_rectangles (invalid);
+  for (i = 0; i < num_rects; i++) {
+    cairo_rectangle_int_t rect;
+    cairo_region_get_rectangle (invalid, i, &rect);
+    cairo_rectangle (cr, rect.x, rect.y,
+                     rect.width, rect.height);
+  }
+
   cairo_clip (cr);
 
   for (iter = g_sequence_get_begin_iter (recorder->layers);
@@ -157,7 +175,7 @@
 byzanz_recorder_snapshot (ByzanzRecorder *recorder)
 {
   cairo_surface_t *surface;
-  GdkRegion *invalid;
+  cairo_region_t *invalid;
   GTimeVal tv;
 
   if (!recorder->recording)
@@ -167,19 +185,19 @@
     return FALSE;
 
   invalid = byzanz_recorder_get_invalid_region (recorder);
-  if (gdk_region_empty (invalid)) {
-    gdk_region_destroy (invalid);
+  if (cairo_region_is_empty (invalid)) {
+    cairo_region_destroy (invalid);
     return FALSE;
   }
 
   surface = byzanz_recorder_create_snapshot (recorder, invalid);
   g_get_current_time (&tv);
-  gdk_region_offset (invalid, -recorder->area.x, -recorder->area.y);
+  cairo_region_translate (invalid, -recorder->area.x, -recorder->area.y);
 
   g_signal_emit (recorder, signals[IMAGE], 0, surface, invalid, &tv);
 
   cairo_surface_destroy (surface);
-  gdk_region_destroy (invalid);
+  cairo_region_destroy (invalid);
 
   recorder->next_image_source = gdk_threads_add_timeout_full (G_PRIORITY_HIGH_IDLE,
       BYZANZ_RECORDER_FRAME_RATE_MS, byzanz_recorder_next_image, recorder, NULL);
@@ -254,7 +272,7 @@
       byzanz_recorder_set_window (recorder, g_value_get_object (value));
       break;
     case PROP_AREA:
-      recorder->area = *(GdkRectangle *) g_value_get_boxed (value);
+      recorder->area = *(cairo_rectangle_int_t *) g_value_get_boxed (value);
       break;
     case PROP_RECORDING:
       byzanz_recorder_set_recording (recorder, g_value_get_boolean (value));
@@ -362,7 +380,7 @@
 }
 
 ByzanzRecorder *
-byzanz_recorder_new (GdkWindow *window, GdkRectangle *area)
+byzanz_recorder_new (GdkWindow *window, cairo_rectangle_int_t *area)
 {
   g_return_val_if_fail (GDK_IS_WINDOW (window), NULL);
   g_return_val_if_fail (area != NULL, NULL);
diff -Nru byzanz-0.2.2/src/byzanzrecorder.h byzanz-0.2.2+git22.10.2011/src/byzanzrecorder.h
--- byzanz-0.2.2/src/byzanzrecorder.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzrecorder.h	2011-10-22 12:56:33.000000000 +0200
@@ -39,7 +39,7 @@
   GObject		object;
 
   GdkWindow *           window;                 /* window we are recording from */
-  GdkRectangle          area;                   /* area of window that we record */
+  cairo_rectangle_int_t area;                   /* area of window that we record */
   gboolean              recording;              /* wether we should be recording now */
 
   int                   damage_event_base;      /* base event for Damage extension */
@@ -55,16 +55,16 @@
 struct _ByzanzRecorderClass {
   GObjectClass		object_class;
 
-  void                  (* image)                       (ByzanzRecorder *       recorder,
-                                                         cairo_surface_t *      surface,
-                                                         const GdkRegion *      region,
-                                                         const GTimeVal *       tv);
+  void                  (* image)                       (ByzanzRecorder *        recorder,
+                                                         cairo_surface_t *       surface,
+                                                         const cairo_surface_t * region,
+                                                         const GTimeVal *        tv);
 };
 
 GType		        byzanz_recorder_get_type	(void) G_GNUC_CONST;
 
-ByzanzRecorder *	byzanz_recorder_new		(GdkWindow *		window,
-							 GdkRectangle *		area);
+ByzanzRecorder *	byzanz_recorder_new		(GdkWindow *		 window,
+							 cairo_rectangle_int_t * area);
 
 void                    byzanz_recorder_set_recording   (ByzanzRecorder *       recorder,
                                                          gboolean               recording);
diff -Nru byzanz-0.2.2/src/byzanzselect.c byzanz-0.2.2+git22.10.2011/src/byzanzselect.c
--- byzanz-0.2.2/src/byzanzselect.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzselect.c	2011-10-22 12:56:33.000000000 +0200
@@ -28,7 +28,7 @@
 #include "screenshot-utils.h"
 
 static void
-rectangle_sanitize (GdkRectangle *dest, const GdkRectangle *src)
+rectangle_sanitize (cairo_rectangle_int_t *dest, const cairo_rectangle_int_t *src)
 {
   *dest = *src;
   if (dest->width < 0) {
@@ -48,7 +48,7 @@
 
   /* results */
   GdkWindow *           result;         /* window that was selected */
-  GdkRectangle          area;           /* the area to select */
+  cairo_rectangle_int_t area;           /* the area to select */
 
   /* method data */
   GtkWidget *           window;         /* window we created to do selecting or NULL */
@@ -91,7 +91,7 @@
 
   if (window) {
     /* stupid hack to get around a session recording the selection window */
-    gdk_display_sync (gdk_drawable_get_display (GDK_DRAWABLE (window)));
+    gdk_display_sync (gdk_window_get_display (window));
     data->result = g_object_ref (window);
     gdk_threads_add_timeout (1000, byzanz_select_really_done, data);
   } else {
@@ -113,7 +113,7 @@
   static double dashes[] = { 1.0, 2.0 };
 #endif
 
-  cr = gdk_cairo_create (widget->window);
+  cr = gdk_cairo_create (gtk_widget_get_window (widget));
   cairo_rectangle (cr, event->area.x, event->area.y, event->area.width, event->area.height);
   cairo_clip (cr);
 
@@ -140,11 +140,11 @@
   cairo_stroke (cr);
 #endif
   if (data->area.x >= 0 && data->area.width != 0 && data->area.height != 0) {
-    GdkRectangle rect = data->area;
+    cairo_rectangle_int_t rect = data->area;
     rectangle_sanitize (&rect, &data->area);
     cairo_set_source_rgba (cr, 0.0, 0.0, 0.5, 0.2);
     cairo_set_dash (cr, NULL, 0, 0.0);
-    gdk_cairo_rectangle (cr, &rect);
+    gdk_cairo_rectangle (cr, (GdkRectangle *) &rect);
     cairo_fill (cr);
     cairo_set_source_rgba (cr, 0.0, 0.0, 0.5, 0.5);
     cairo_rectangle (cr, rect.x + 0.5, rect.y + 0.5, rect.width - 1, rect.height - 1);
@@ -199,7 +199,7 @@
   gtk_widget_queue_draw (widget);
 #else
   if (data->area.x >= 0) {
-    GdkRectangle rect;
+    cairo_rectangle_int_t rect;
     rectangle_sanitize (&rect, &data->area);
     gtk_widget_queue_draw_area (widget, rect.x, rect.y, rect.width, rect.height);
   }
@@ -207,7 +207,7 @@
   data->area.width = event->x - data->area.x;
   data->area.height = event->y - data->area.y;
   if (data->area.x >= 0) {
-    GdkRectangle rect;
+    cairo_rectangle_int_t rect;
     rectangle_sanitize (&rect, &data->area);
     gtk_widget_queue_draw_area (widget, rect.x, rect.y, rect.width, rect.height);
   }
@@ -218,7 +218,7 @@
 static void
 realize_cb (GtkWidget *widget, gpointer datap)
 {
-  GdkWindow *window = widget->window;
+  GdkWindow *window = gtk_widget_get_window (widget);
   GdkCursor *cursor;
 
   gdk_window_set_events (window, gdk_window_get_events (window) |
@@ -228,7 +228,7 @@
   cursor = gdk_cursor_new (GDK_CROSSHAIR);
   gdk_window_set_cursor (window, cursor);
   gdk_cursor_unref (cursor);
-  gdk_window_set_back_pixmap (window, NULL, FALSE);
+  gdk_window_set_background_pattern (window, NULL);
 }
 
 static void
@@ -247,21 +247,22 @@
 static void
 byzanz_select_area (ByzanzSelectData *data)
 {
-  GdkColormap *rgba;
+  GdkVisual *visual;
   
   data->window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
   data->area.x = -1;
   data->area.y = -1;
 
-  rgba = gdk_screen_get_rgba_colormap (gdk_screen_get_default ());
-  if (rgba && gdk_screen_is_composited (gdk_screen_get_default ())) {
-    gtk_widget_set_colormap (data->window, rgba);
+  visual = gdk_screen_get_rgba_visual (gdk_screen_get_default ());
+  if (visual && gdk_screen_is_composited (gdk_screen_get_default ())) {
+    gtk_widget_set_visual (data->window, visual);
   } else {
     GdkWindow *root = gdk_get_default_root_window ();
     cairo_t *cr;
     cairo_surface_t *root_surface;
     gint width, height;
-    gdk_drawable_get_size (root, &width, &height);
+    width = gdk_window_get_width (root);
+    height = gdk_window_get_height (root);
 
     cr = gdk_cairo_create (root);
     root_surface = cairo_surface_reference (cairo_get_target (cr));
@@ -294,7 +295,8 @@
   GdkWindow *root;
   
   root = gdk_get_default_root_window ();
-  gdk_drawable_get_size (root, &data->area.width, &data->area.height);
+  data->area.width = gdk_window_get_width (root);
+  data->area.height = gdk_window_get_height (root);
   byzanz_select_done (data, root);
 }
 
@@ -312,12 +314,13 @@
 
     w = screenshot_find_current_window (TRUE);
     if (w != None)
-      window = gdk_window_foreign_new (w);
+      window = gdk_x11_window_foreign_new_for_display (gdk_display_get_default (), w);
     else
       window = gdk_get_default_root_window ();
 
     gdk_window_get_root_origin (window, &data->area.x, &data->area.y);
-    gdk_drawable_get_size (window, &data->area.width, &data->area.height);
+    data->area.width = gdk_window_get_width (window);
+    data->area.height = gdk_window_get_height (window);
     g_object_unref (window);
 
     window = gdk_get_default_root_window ();
@@ -338,7 +341,7 @@
   g_signal_connect (data->window, "button-press-event", 
       G_CALLBACK (select_window_button_pressed_cb), data);
   gtk_widget_show (data->window);
-  gdk_pointer_grab (data->window->window, FALSE, GDK_BUTTON_PRESS_MASK, NULL, cursor, GDK_CURRENT_TIME);
+  gdk_pointer_grab (gtk_widget_get_window (data->window), FALSE, GDK_BUTTON_PRESS_MASK, NULL, cursor, GDK_CURRENT_TIME);
   gdk_cursor_unref (cursor);
 }
   
diff -Nru byzanz-0.2.2/src/byzanzselect.h byzanz-0.2.2+git22.10.2011/src/byzanzselect.h
--- byzanz-0.2.2/src/byzanzselect.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzselect.h	2011-10-22 12:56:33.000000000 +0200
@@ -30,7 +30,7 @@
 const char *		byzanz_select_method_get_name	        (guint		        method);
 int			byzanz_select_method_lookup	        (const char *	        name);
 
-typedef void (* ByzanzSelectFunc) (GdkWindow *window, const GdkRectangle *area, gpointer data);
+typedef void (* ByzanzSelectFunc) (GdkWindow *window, const cairo_rectangle_int_t *area, gpointer data);
 void    		byzanz_select_method_select	        (guint		        method,
                                                                  ByzanzSelectFunc       func,
                                                                  gpointer               data);
diff -Nru byzanz-0.2.2/src/byzanzserialize.c byzanz-0.2.2+git22.10.2011/src/byzanzserialize.c
--- byzanz-0.2.2/src/byzanzserialize.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzserialize.c	2011-10-22 12:56:33.000000000 +0200
@@ -106,22 +106,22 @@
 } 
 
 gboolean
-byzanz_serialize (GOutputStream *   stream,
-                  guint64           msecs,
-                  cairo_surface_t * surface,
-                  const GdkRegion * region,
-                  GCancellable *    cancellable,
-                  GError **         error)
+byzanz_serialize (GOutputStream *        stream,
+                  guint64                msecs,
+                  cairo_surface_t *      surface,
+                  const cairo_region_t * region,
+                  GCancellable *         cancellable,
+                  GError **              error)
 {
   guint i, stride;
-  GdkRectangle *rects, extents;
+  cairo_rectangle_int_t rect, extents;
   guchar *data;
   guint32 n;
   int y, n_rects;
 
   g_return_val_if_fail (G_IS_OUTPUT_STREAM (stream), FALSE);
   g_return_val_if_fail ((surface == NULL) == (region == NULL), FALSE);
-  g_return_val_if_fail (region == NULL || !gdk_region_empty (region), FALSE);
+  g_return_val_if_fail (region == NULL || !cairo_region_is_empty (region), FALSE);
 
   if (!g_output_stream_write_all (stream, &msecs, sizeof (guint64), NULL, cancellable, error))
     return FALSE;
@@ -131,51 +131,48 @@
     return g_output_stream_write_all (stream, &n, sizeof (guint32), NULL, cancellable, error);
   }
 
-  gdk_region_get_rectangles (region, &rects, &n_rects);
-  n = n_rects;
+  n = n_rects = cairo_region_num_rectangles (region);
   if (!g_output_stream_write_all (stream, &n, sizeof (guint32), NULL, cancellable, error))
-    goto fail;
+    return FALSE;
   for (i = 0; i < n; i++) {
-    gint32 ints[4] = { rects[i].x, rects[i].y, rects[i].width, rects[i].height };
+    gint32 ints[4];
+    cairo_region_get_rectangle (region, i, &rect);
+    ints[0] = rect.x, ints[1] = rect.y, ints[2] = rect.width, ints[3] = rect.height;
 
     g_assert (sizeof (ints) == 16);
     if (!g_output_stream_write_all (stream, ints, sizeof (ints), NULL, cancellable, error))
-      goto fail;
+      return FALSE;
   }
 
   stride = cairo_image_surface_get_stride (surface);
-  gdk_region_get_clipbox (region, &extents);
+  cairo_region_get_extents (region, &extents);
   for (i = 0; i < n; i++) {
+    cairo_region_get_rectangle (region, i, &rect);
     data = cairo_image_surface_get_data (surface) 
-      + stride * (rects[i].y - extents.y) 
-      + sizeof (guint32) * (rects[i].x - extents.x);
-    for (y = 0; y < rects[i].height; y++) {
+      + stride * (rect.y - extents.y) 
+      + sizeof (guint32) * (rect.x - extents.x);
+    for (y = 0; y < rect.height; y++) {
       if (!g_output_stream_write_all (G_OUTPUT_STREAM (stream), data, 
-            rects[i].width * sizeof (guint32), NULL, cancellable, error))
-        goto fail;
+            rect.width * sizeof (guint32), NULL, cancellable, error))
+        return FALSE;
       data += stride;
     }
   }
 
-  g_free (rects);
   return TRUE;
-
-fail:
-  g_free (rects);
-  return FALSE;
 }
 
 gboolean
 byzanz_deserialize (GInputStream *     stream,
                     guint64 *          msecs_out,
                     cairo_surface_t ** surface_out,
-                    GdkRegion **       region_out,
+                    cairo_region_t **  region_out,
                     GCancellable *     cancellable,
                     GError **          error)
 {
   guint i, stride;
-  GdkRectangle extents, *rects;
-  GdkRegion *region;
+  cairo_rectangle_int_t extents, *rects;
+  cairo_region_t *region;
   cairo_surface_t *surface;
   guchar *data;
   guint32 n;
@@ -197,8 +194,8 @@
     return TRUE;
   }
 
-  region = gdk_region_new ();
-  rects = g_new (GdkRectangle, n);
+  region = cairo_region_create ();
+  rects = g_new (cairo_rectangle_int_t, n);
   surface = NULL;
   for (i = 0; i < n; i++) {
     gint ints[4];
@@ -209,10 +206,10 @@
     rects[i].y = ints[1];
     rects[i].width = ints[2];
     rects[i].height = ints[3];
-    gdk_region_union_with_rect (region, &rects[i]);
+    cairo_region_union_rectangle (region, &rects[i]);
   }
 
-  gdk_region_get_clipbox (region, &extents);
+  cairo_region_get_extents (region, &extents);
   surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, extents.width, extents.height);
   cairo_surface_set_device_offset (surface, -extents.x, -extents.y);
   stride = cairo_image_surface_get_stride (surface);
@@ -236,7 +233,7 @@
 fail:
   if (surface)
     cairo_surface_destroy (surface);
-  gdk_region_destroy (region);
+  cairo_region_destroy (region);
   g_free (rects);
   return FALSE;
 }
diff -Nru byzanz-0.2.2/src/byzanzserialize.h byzanz-0.2.2+git22.10.2011/src/byzanzserialize.h
--- byzanz-0.2.2/src/byzanzserialize.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzserialize.h	2011-10-22 12:56:33.000000000 +0200
@@ -30,12 +30,12 @@
                                                          guint                  height,
                                                          GCancellable *         cancellable,
                                                          GError **              error);
-gboolean                byzanz_serialize                (GOutputStream *        stream,
-                                                         guint64                msecs,
-                                                         cairo_surface_t *      surface,
-                                                         const GdkRegion *      region,
-                                                         GCancellable *         cancellable,
-                                                         GError **              error);
+gboolean                byzanz_serialize                (GOutputStream *         stream,
+                                                         guint64                 msecs,
+                                                         cairo_surface_t *       surface,
+                                                         const cairo_region_t * region,
+                                                         GCancellable *          cancellable,
+                                                         GError **               error);
 
 gboolean                byzanz_deserialize_header       (GInputStream *         stream,
                                                          guint *                width,
@@ -45,7 +45,7 @@
 gboolean                byzanz_deserialize              (GInputStream *         stream,
                                                          guint64 *              msecs_out,
                                                          cairo_surface_t **     surface_out,
-                                                         GdkRegion **           region_out,
+                                                         cairo_region_t **      region_out,
                                                          GCancellable *         cancellable,
                                                          GError **              error);
 
diff -Nru byzanz-0.2.2/src/byzanzsession.c byzanz-0.2.2+git22.10.2011/src/byzanzsession.c
--- byzanz-0.2.2/src/byzanzsession.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzsession.c	2011-10-22 12:56:33.000000000 +0200
@@ -105,7 +105,7 @@
       session->file = g_value_dup_object (value);
       break;
     case PROP_AREA:
-      session->area = *(GdkRectangle *) g_value_get_boxed (value);
+      session->area = *(cairo_rectangle_int_t *) g_value_get_boxed (value);
       break;
     case PROP_WINDOW:
       session->window = g_value_dup_object (value);
@@ -185,11 +185,11 @@
 }
 
 static void
-byzanz_session_recorder_image_cb (ByzanzRecorder *  recorder,
-                                  cairo_surface_t * surface,
-                                  const GdkRegion * region,
-                                  const GTimeVal *  tv,
-                                  ByzanzSession *   session)
+byzanz_session_recorder_image_cb (ByzanzRecorder *       recorder,
+                                  cairo_surface_t *      surface,
+                                  const cairo_region_t * region,
+                                  const GTimeVal *       tv,
+                                  ByzanzSession *        session)
 {
   GOutputStream *stream;
   GError *error = NULL;
@@ -328,7 +328,7 @@
  **/
 ByzanzSession *
 byzanz_session_new (GFile *file, GType encoder_type, 
-    GdkWindow *window, const GdkRectangle *area, gboolean record_cursor,
+    GdkWindow *window, const cairo_rectangle_int_t *area, gboolean record_cursor,
     gboolean record_audio)
 {
   g_return_val_if_fail (G_IS_FILE (file), NULL);
diff -Nru byzanz-0.2.2/src/byzanzsession.h byzanz-0.2.2+git22.10.2011/src/byzanzsession.h
--- byzanz-0.2.2/src/byzanzsession.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/byzanzsession.h	2011-10-22 12:56:33.000000000 +0200
@@ -43,7 +43,7 @@
   /*< private >*/
   /* properties */
   GFile *               file;           /* file we're saving to */
-  GdkRectangle          area;           /* area of window to record */
+  cairo_rectangle_int_t area;           /* area of window to record */
   GdkWindow *           window;         /* window to record */
   gboolean              record_audio;   /* TRUE to record audio */
   GType                 encoder_type;   /* type of encoder to use */
@@ -64,12 +64,12 @@
 GType		        byzanz_session_get_type		(void) G_GNUC_CONST;
 
 
-ByzanzSession * 	byzanz_session_new		(GFile *                file,
-                                                         GType                  encoder_type,
-							 GdkWindow *		window,
-							 const GdkRectangle *	area,
-							 gboolean		record_cursor,
-                                                         gboolean               record_audio);
+ByzanzSession * 	byzanz_session_new		(GFile *                        file,
+                                                         GType                          encoder_type,
+							 GdkWindow *		        window,
+							 const cairo_rectangle_int_t *	area,
+							 gboolean		        record_cursor,
+                                                         gboolean                       record_audio);
 void			byzanz_session_start		(ByzanzSession *	session);
 void			byzanz_session_stop		(ByzanzSession *	session);
 void			byzanz_session_abort            (ByzanzSession *	session);
diff -Nru byzanz-0.2.2/src/Makefile.am byzanz-0.2.2+git22.10.2011/src/Makefile.am
--- byzanz-0.2.2/src/Makefile.am	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/Makefile.am	2011-10-22 12:56:33.000000000 +0200
@@ -14,6 +14,7 @@
 	byzanzencodergif.h \
 	byzanzencodergstreamer.h \
 	byzanzencoderogv.h \
+	byzanzencoderwebm.h \
 	byzanzlayer.h \
 	byzanzlayercursor.h \
 	byzanzlayerwindow.h \
@@ -34,6 +35,7 @@
 	byzanzencodergif.c \
 	byzanzencodergstreamer.c \
 	byzanzencoderogv.c \
+	byzanzencoderwebm.c \
 	byzanzlayer.c \
 	byzanzlayercursor.c \
 	byzanzlayerwindow.c \
@@ -68,7 +70,7 @@
 	paneltogglebutton.c \
 	screenshot-utils.c
 
-byzanz_applet_CFLAGS = $(APPLET_CFLAGS)
+byzanz_applet_CFLAGS = -DBYZANZ_MENU_UI_DIR=\""$(uidir)"\" $(APPLET_CFLAGS)
 byzanz_applet_LDADD = $(APPLET_LIBS) ./libbyzanz.la
 
 
@@ -91,24 +93,36 @@
 	GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(schemas_DATA) ;
 endif
 
-serverdir       = $(libdir)/bonobo/servers
-server_in_files = ByzanzApplet.server.in
-server_DATA     = $(server_in_files:.server.in=.server)
+applet_in_files = org.gnome.ByzanzApplet.panel-applet.in
+applet_DATA     = $(applet_in_files:.panel-applet.in=.panel-applet)
 
-$(server_in_files): $(server_in_files:.server.in=.server.in.in)
-	sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@
+$(applet_in_files): $(applet_in_files).in Makefile
+	sed \
+            -e "s|\@LIBEXECDIR\@|$(libexecdir)|" \
+            -e "s|\@VERSION\@|$(PACKAGE_VERSION)|" \
+            $< > $@
+
+%.panel-applet: %.panel-applet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+
+servicedir       = $(datadir)/dbus-1/services
+service_in_files = org.gnome.panel.applet.ByzanzAppletFactory.service.in
+service_DATA     = $(service_in_files:.service.in=.service)
+
+org.gnome.panel.applet.ByzanzAppletFactory.service: $(service_in_files)
+	sed \
+	    -e "s|\@LIBEXECDIR\@|$(libexecdir)|" \
+	    $< > $@
 
-uidir = $(datadir)/gnome-2.0/ui
+uidir = $(datadir)/byzanz
 ui_DATA = byzanzapplet.xml
 
-CLEANFILES = $(server_in_files) $(server_DATA) $(schemas_DATA) $(BUILT_SOURCES)
+CLEANFILES = $(applet_DATA) $(applet_DATA).in $(service_DATA) $(schemas_DATA) $(BUILT_SOURCES)
 
 EXTRA_DIST = \
 	byzanzmarshal.list \
-	ByzanzApplet.server.in.in \
+	org.gnome.ByzanzApplet.panel-applet.in.in \
 	$(man_MANS) \
 	$(ui_DATA) \
 	$(schemas_in_files)
 
 
- at INTLTOOL_SERVER_RULE@
diff -Nru byzanz-0.2.2/src/org.gnome.ByzanzApplet.panel-applet.in.in byzanz-0.2.2+git22.10.2011/src/org.gnome.ByzanzApplet.panel-applet.in.in
--- byzanz-0.2.2/src/org.gnome.ByzanzApplet.panel-applet.in.in	1970-01-01 01:00:00.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/org.gnome.ByzanzApplet.panel-applet.in.in	2011-10-22 12:56:33.000000000 +0200
@@ -0,0 +1,16 @@
+[Applet Factory]
+Id=ByzanzAppletFactory
+Location=@LIBEXECDIR@/byzanz-applet
+_Name=Byzanz Factory
+_Description=Byzanz Factory
+
+[ByzanzApplet]
+_Name=Desktop Recorder
+_Description=Record what's happening on your desktop
+Icon=byzanz-record-desktop.png
+BonoboId=OAFIID:ByzanzApplet
+X-GNOME-Bugzilla-Bugzilla=GNOME
+X-GNOME-Bugzilla-Product=byzanz
+X-GNOME-Bugzilla-Component=applet
+X-GNOME-Bugzilla-Version=@VERSION@
+X-GNOME-Bugzilla-OtherBinaries=byzanz-applet
diff -Nru byzanz-0.2.2/src/org.gnome.panel.applet.ByzanzAppletFactory.service.in byzanz-0.2.2+git22.10.2011/src/org.gnome.panel.applet.ByzanzAppletFactory.service.in
--- byzanz-0.2.2/src/org.gnome.panel.applet.ByzanzAppletFactory.service.in	1970-01-01 01:00:00.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/org.gnome.panel.applet.ByzanzAppletFactory.service.in	2011-10-22 12:56:33.000000000 +0200
@@ -0,0 +1,3 @@
+[D-BUS Service]
+Name=org.gnome.panel.applet.ByzanzAppletFactory
+Exec=@LIBEXECDIR@/byzanz-applet
diff -Nru byzanz-0.2.2/src/paneltogglebutton.c byzanz-0.2.2+git22.10.2011/src/paneltogglebutton.c
--- byzanz-0.2.2/src/paneltogglebutton.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/paneltogglebutton.c	2011-10-22 12:56:33.000000000 +0200
@@ -32,7 +32,7 @@
 {
   GtkWidget *child;
   
-  child = GTK_BIN (widget)->child;
+  child = gtk_bin_get_child (GTK_BIN (widget));
 
   if (child) {
     gtk_widget_size_request (child, requisition);
@@ -42,53 +42,77 @@
 }
 
 static void
+panel_toggle_button_get_preferred_width (GtkWidget *widget,
+                                         gint      *minimal_width,
+                                         gint      *natural_width)
+{
+  GtkRequisition requisition;
+
+  panel_toggle_button_size_request (widget, &requisition);
+
+  *minimal_width = *natural_width = requisition.width;
+}
+
+static void
+panel_toggle_button_get_preferred_height (GtkWidget *widget,
+                                          gint      *minimal_height,
+                                          gint      *natural_height)
+{
+  GtkRequisition requisition;
+
+  panel_toggle_button_size_request (widget, &requisition);
+
+  *minimal_height = *natural_height = requisition.height;
+}
+
+static void
 panel_toggle_button_size_allocate (GtkWidget *widget,
     GtkAllocation *allocation)
 {
   GtkWidget *child;
   
-  child = GTK_BIN (widget)->child;
+  child = gtk_bin_get_child (GTK_BIN (widget));
 
-  widget->allocation = *allocation;
+  gtk_widget_set_allocation (widget, allocation);
   
-  if (GTK_WIDGET_REALIZED (widget))
-    gdk_window_move_resize (GTK_BUTTON (widget)->event_window, 
-	widget->allocation.x, widget->allocation.y,
-	widget->allocation.width, widget->allocation.height);
+  if (gtk_widget_get_realized (widget))
+    gdk_window_move_resize (gtk_button_get_event_window (GTK_BUTTON(widget)), 
+	allocation->x, allocation->y,
+	allocation->width, allocation->height); 
   
   if (child)
     gtk_widget_size_allocate (child, allocation);
 }
 
 static gboolean
-panel_toggle_button_expose (GtkWidget *widget, GdkEventExpose *event)
+panel_toggle_button_draw (GtkWidget *widget, cairo_t *cr)
 {
-  if (GTK_WIDGET_DRAWABLE (widget)) {
-    GtkWidget *child = GTK_BIN (widget)->child;
-    GtkStateType state_type;
-    GtkShadowType shadow_type;
+  GtkWidget *child = gtk_bin_get_child (GTK_BIN (widget));
+  GtkStateType state_type;
+  GtkShadowType shadow_type;
+  GtkAllocation allocation;
 
-    state_type = GTK_WIDGET_STATE (widget);
+  state_type = gtk_widget_get_state (widget);
     
-    /* FIXME: someone make this layout work nicely for all themes
-     * Currently I'm trying to imitate the volume applet's widget */
-    if (GTK_TOGGLE_BUTTON (widget)->inconsistent) {
-      if (state_type == GTK_STATE_ACTIVE)
-	state_type = GTK_STATE_NORMAL;
-      shadow_type = GTK_SHADOW_ETCHED_IN;
-    } else {
-      shadow_type = GTK_BUTTON (widget)->depressed ? GTK_SHADOW_IN : GTK_SHADOW_OUT;
-    }
-    if (GTK_BUTTON (widget)->depressed)
-      state_type = GTK_STATE_SELECTED;
-    /* FIXME: better detail? */
-    gtk_paint_flat_box (widget->style, widget->window, state_type, shadow_type,
-	&event->area, widget, "togglebutton", widget->allocation.x,
-	widget->allocation.y, widget->allocation.width, widget->allocation.height);
-      
-    if (child)
-      gtk_container_propagate_expose (GTK_CONTAINER (widget), child, event);
+  /* FIXME: someone make this layout work nicely for all themes
+   * Currently I'm trying to imitate the volume applet's widget */
+  if (gtk_toggle_button_get_inconsistent (GTK_TOGGLE_BUTTON (widget))) {
+    if (state_type == GTK_STATE_ACTIVE)
+      state_type = GTK_STATE_NORMAL;
+    shadow_type = GTK_SHADOW_ETCHED_IN;
+  } else {
+    shadow_type = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)) ? GTK_SHADOW_IN : GTK_SHADOW_OUT;
   }
+  if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)))
+    state_type = GTK_STATE_SELECTED;
+  /* FIXME: better detail? */
+  gtk_widget_get_allocation (widget, &allocation);
+  gtk_paint_flat_box (gtk_widget_get_style (widget), cr, state_type, shadow_type,
+                      widget, "togglebutton", allocation.x,
+                      allocation.y, allocation.width, allocation.height);
+
+  if (child)
+    gtk_container_propagate_draw (GTK_CONTAINER (widget), child, cr);
   
   return FALSE;
 }
@@ -118,9 +142,10 @@
 
   parent_class = g_type_class_peek_parent (class);
 
-  widget_class->size_request = panel_toggle_button_size_request;
+  widget_class->get_preferred_width = panel_toggle_button_get_preferred_width;
+  widget_class->get_preferred_height = panel_toggle_button_get_preferred_height;
   widget_class->size_allocate = panel_toggle_button_size_allocate;
-  widget_class->expose_event = panel_toggle_button_expose;
+  widget_class->draw = panel_toggle_button_draw;
   widget_class->button_press_event = panel_toggle_button_button_press;
   widget_class->button_release_event = panel_toggle_button_button_release;
 }
diff -Nru byzanz-0.2.2/src/paneltogglebutton.h byzanz-0.2.2+git22.10.2011/src/paneltogglebutton.h
--- byzanz-0.2.2/src/paneltogglebutton.h	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/paneltogglebutton.h	2011-10-22 12:56:33.000000000 +0200
@@ -22,7 +22,7 @@
 #ifndef __PANEL_TOGGLE_BUTTON_H__
 #define __PANEL_TOGGLE_BUTTON_H__
 
-#include <gtk/gtktogglebutton.h>
+#include <gtk/gtk.h>
 
 G_BEGIN_DECLS
 
diff -Nru byzanz-0.2.2/src/playback.c byzanz-0.2.2+git22.10.2011/src/playback.c
--- byzanz-0.2.2/src/playback.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/playback.c	2011-10-22 12:56:33.000000000 +0200
@@ -74,7 +74,7 @@
   g_thread_init (NULL);
   g_type_init ();
 
-  context = g_option_context_new (_("process a byzanz debug recording"));
+  context = g_option_context_new (_("process a Byzanz debug recording"));
 #ifdef GETTEXT_PACKAGE
   g_option_context_set_translation_domain(context, GETTEXT_PACKAGE);
 #endif
diff -Nru byzanz-0.2.2/src/record.c byzanz-0.2.2+git22.10.2011/src/record.c
--- byzanz-0.2.2/src/record.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/record.c	2011-10-22 12:56:33.000000000 +0200
@@ -30,7 +30,7 @@
 static gboolean cursor = FALSE;
 static gboolean audio = FALSE;
 static gboolean verbose = FALSE;
-static GdkRectangle area = { 0, 0, G_MAXINT / 2, G_MAXINT / 2 };
+static cairo_rectangle_int_t area = { 0, 0, G_MAXINT / 2, G_MAXINT / 2 };
 
 static GOptionEntry entries[] = 
 {
@@ -105,12 +105,15 @@
 }
 
 static gboolean
-clamp_to_window (GdkRectangle *out, GdkWindow *window, GdkRectangle *in)
+clamp_to_window (cairo_rectangle_int_t *out, GdkWindow *window, cairo_rectangle_int_t *in)
 {
-  GdkRectangle window_area = { 0, };
+  cairo_rectangle_int_t window_area = { 0, };
 
-  gdk_drawable_get_size (GDK_DRAWABLE (window), &window_area.width, &window_area.height);
-  return gdk_rectangle_intersect (in, &window_area, in);
+  window_area.width = gdk_window_get_width (window);
+  window_area.height = gdk_window_get_height (window);
+  return gdk_rectangle_intersect ((GdkRectangle *) in,
+                                  (GdkRectangle *) &window_area,
+                                  (GdkRectangle *) in);
 }
 
 int
diff -Nru byzanz-0.2.2/src/screenshot-utils.c byzanz-0.2.2+git22.10.2011/src/screenshot-utils.c
--- byzanz-0.2.2/src/screenshot-utils.c	2010-03-23 22:02:37.000000000 +0100
+++ byzanz-0.2.2+git22.10.2011/src/screenshot-utils.c	2011-10-22 12:56:33.000000000 +0200
@@ -23,7 +23,7 @@
   
   gdk_error_trap_push ();
   type = None;
-  result = XGetWindowProperty (gdk_display,
+  result = XGetWindowProperty (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
 			       xwindow,
 			       atom,
 			       0, G_MAXLONG,
@@ -56,7 +56,7 @@
 
   do
     {
-      if (XQueryTree (GDK_DISPLAY (), xid, &root,
+      if (XQueryTree (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), xid, &root,
 		      &parent, &children, &nchildren) == 0)
 	{
 	  g_warning ("Couldn't find window manager window");
@@ -79,7 +79,8 @@
   if (xid == root_window)
     return TRUE;
 
-  if (gdk_net_wm_supports (gdk_atom_intern ("_NET_WM_WINDOW_TYPE", FALSE)))
+  if (gdk_x11_screen_supports_net_wm_hint (gdk_screen_get_default (),
+                                           gdk_atom_intern ("_NET_WM_WINDOW_TYPE", FALSE)))
     {
       gboolean retval;
       Atom property;
@@ -106,7 +107,7 @@
 
   root_window = GDK_ROOT_WINDOW ();
 
-  XQueryPointer (GDK_DISPLAY (), root_window,
+  XQueryPointer (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), root_window,
 		 &root_return, &child, &unused,
 		 &unused, &unused, &unused, &mask);
 
@@ -128,7 +129,8 @@
   Window root, parent, *children, window;
   guint nchildren, i;
 
-  if (XGetWindowProperty (GDK_DISPLAY (), xid, property, 0, 1,
+  if (XGetWindowProperty (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+                          xid, property, 0, 1,
 			  False, AnyPropertyType, &actual_type,
 			  &actual_format, &nitems, &bytes_after,
 			  (gpointer) &prop) == Success
@@ -144,7 +146,7 @@
 
   if (depth < MAXIMUM_WM_REPARENTING_DEPTH)
     {
-      if (XQueryTree (GDK_DISPLAY (), xid, &root,
+      if (XQueryTree (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), xid, &root,
 		      &parent, &children, &nchildren) != 0)
 	{
 	  window = None;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnome-maintainers/attachments/20111022/fb29abdb/attachment-0001.pgp>


More information about the pkg-gnome-maintainers mailing list