[ooo-build-commit] .: 2 commits - patches/dev300 patches/gstreamer

Radek Doulík rodo at kemper.freedesktop.org
Thu Sep 16 07:26:06 PDT 2010


 patches/dev300/apply                                                |   24 
 patches/dev300/gnome-vfs-locking-config_office.diff                 |    2 
 patches/gstreamer/avmedia-source-gstreamer-ChangeLog.diff           |  127 -
 patches/gstreamer/avmedia-source-gstreamer-exports.dxp.diff         |   17 
 patches/gstreamer/avmedia-source-gstreamer-gstcommon.hxx.diff       |   97 -
 patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.cxx.diff |  258 ----
 patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.hxx.diff |   92 -
 patches/gstreamer/avmedia-source-gstreamer-gstmanager.cxx.diff      |  128 -
 patches/gstreamer/avmedia-source-gstreamer-gstmanager.hxx.diff      |   88 -
 patches/gstreamer/avmedia-source-gstreamer-gstplayer.cxx.diff       |  642 ----------
 patches/gstreamer/avmedia-source-gstreamer-gstplayer.hxx.diff       |  134 --
 patches/gstreamer/avmedia-source-gstreamer-gstuno.cxx.diff          |  125 -
 patches/gstreamer/avmedia-source-gstreamer-gstwindow.cxx.diff       |  379 -----
 patches/gstreamer/avmedia-source-gstreamer-gstwindow.hxx.diff       |  133 --
 patches/gstreamer/avmedia-source-gstreamer-makefile.mk.diff         |   99 -
 patches/gstreamer/gstreamer-avmedia-file-types.diff                 |   19 
 patches/gstreamer/gstreamer-avmedia-loopingetc.diff                 |   97 -
 patches/gstreamer/gstreamer-avmedia.diff                            |  206 ---
 patches/gstreamer/gstreamer-config-office.diff                      |   93 -
 patches/gstreamer/gstreamer-scp2.diff                               |   42 
 patches/gstreamer/gstreamer-slideshow.diff                          |  125 -
 patches/gstreamer/gstreamer-solenv.diff                             |   22 
 patches/gstreamer/gstreamer-svtools-content-types.diff              |  496 -------
 patches/gstreamer/gstreamer-vcl.diff                                |   80 -
 24 files changed, 1 insertion(+), 3524 deletions(-)

New commits:
commit 7ee3dd530d50a5a3a70f8a2bbac9c80fc3284580
Author: Radek Doulik <rodo at novell.com>
Date:   Thu Sep 16 16:25:45 2010 +0200

    update the patch so that it applies

diff --git a/patches/dev300/gnome-vfs-locking-config_office.diff b/patches/dev300/gnome-vfs-locking-config_office.diff
index ae2c5d5..e7d1a56 100644
--- a/patches/dev300/gnome-vfs-locking-config_office.diff
+++ b/patches/dev300/gnome-vfs-locking-config_office.diff
@@ -46,9 +46,9 @@ index 1c67478..5b876d2 100644
  ToFile( "ENABLE_GCONF",      "@ENABLE_GCONF@",     "e" );
  ToFile( "ENABLE_GNOMEVFS",   "@ENABLE_GNOMEVFS@",  "e" );
 +ToFile( "GNOMEVFS_HAS_LOCKING","@GNOMEVFS_HAS_LOCKING@",  "e" );
+ ToFile( "ENABLE_GSTREAMER",  "@ENABLE_GSTREAMER@", "e" );
  ToFile( "ENABLE_GIO",        "@ENABLE_GIO@",       "e" );
  ToFile( "ENABLE_KDE",        "@ENABLE_KDE@",       "e" );
- ToFile( "KDE_CFLAGS",        "@KDE_CFLAGS@",       "e" );
 -- 
 1.7.0.1
 
commit 932063bf5c6ef19e8b7f917d36c662c7674ffe8e
Author: Radek Doulik <rodo at novell.com>
Date:   Thu Sep 16 16:16:55 2010 +0200

    Migrated gstreamer patches to git repo.

diff --git a/patches/dev300/apply b/patches/dev300/apply
index 18490d8..fdabcad 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -1840,32 +1840,8 @@ soffice-opengl-and-locking-config.diff, mklose
 SectionOwner => rodo
 SectionIssue => i#68717
 
-gstreamer-avmedia.diff
-gstreamer-scp2.diff
-gstreamer-config-office.diff
-gstreamer-slideshow.diff
-gstreamer-solenv.diff
-gstreamer-svtools-content-types.diff
-gstreamer-avmedia-file-types.diff
-gstreamer-vcl.diff
-avmedia-source-gstreamer-ChangeLog.diff
-avmedia-source-gstreamer-exports.dxp.diff
-avmedia-source-gstreamer-gstcommon.hxx.diff
-avmedia-source-gstreamer-gstframegrabber.cxx.diff
-avmedia-source-gstreamer-gstframegrabber.hxx.diff
-avmedia-source-gstreamer-gstmanager.cxx.diff
-avmedia-source-gstreamer-gstmanager.hxx.diff
-avmedia-source-gstreamer-gstplayer.cxx.diff
-avmedia-source-gstreamer-gstplayer.hxx.diff
-avmedia-source-gstreamer-gstuno.cxx.diff
-avmedia-source-gstreamer-gstwindow.cxx.diff
-avmedia-source-gstreamer-gstwindow.hxx.diff
-avmedia-source-gstreamer-makefile.mk.diff
 # FIXME dev300-m77 letter-wizard-resource-id.diff, i#84209 #update!
 
-# Loop the A/V when the 'loop' flag is set; from Caolan
-gstreamer-avmedia-loopingetc.diff
-
 [ Shrink ]
 SectionOwner => michael
 
diff --git a/patches/gstreamer/avmedia-source-gstreamer-ChangeLog.diff b/patches/gstreamer/avmedia-source-gstreamer-ChangeLog.diff
deleted file mode 100644
index 730c5c8..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-ChangeLog.diff
+++ /dev/null
@@ -1,127 +0,0 @@
----
- avmedia/source/gstreamer/ChangeLog |  112 ++++++++++++++++++++++++++++++++++++
- 1 files changed, 112 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/ChangeLog
-
-diff --git avmedia/source/gstreamer/ChangeLog avmedia/source/gstreamer/ChangeLog
-new file mode 100644
-index 0000000..9831614
---- /dev/null
-+++ avmedia/source/gstreamer/ChangeLog
-@@ -0,0 +1,112 @@
-+2006-09-22  Radek Doulik  <rodo at novell.com>
-+
-+	* gstplayer.cxx (processSyncMessage): remember GstXOverlay
-+	(processMessage): explicit expose when we reach paused state -
-+	this mean that now once stream is loaded/video inserted, the 1st
-+	frame is rendered
-+	(setMediaTime): if not playing set PAUSED state again, seems like
-+	seek is changing state to PLAYING. this fixes problem when stop
-+	seeked to begin and started playing again
-+
-+2006-09-21  Radek Doulik  <rodo at novell.com>
-+
-+	* gstplayer.cxx (processSyncMessage): when error occurs, set the
-+	condition so that OOo does'n waste time waiting for us to finish
-+	reaching PAUSED state
-+
-+2006-09-19  Radek Doulik  <rodo at novell.com>
-+
-+	* gstplayer.cxx (processSyncMessage): set condition even if we
-+	weren't able to get video size - might be audio only stream
-+	(getPreferredPlayerWindowSize): init size to 0, 0 - in case we
-+	don't have video size, it will fallback to system media window
-+	content (some icon)
-+
-+2006-08-31  Radek Doulik  <rodo at novell.com>
-+
-+	* gstplayer.cxx (processSyncMessage): when we get to paused state,
-+	get stream-info from playbin and look for video size. set
-+	condition when done
-+	(Player): added width, height, size condition
-+	(preparePlaybin): new helper method, extracted from create
-+	method. use fake video sink in the beggining so that we don't get
-+	xwindow-id message too early
-+	(getPreferredPlayerWindowSize): wait for size condition to be sure
-+	we know video size (if possible). reset video sink to default one
-+	(NULL) and set state to READY and immediatelly to PAUSE so that
-+	the default sink is relinked
-+
-+2006-08-16  Radek Doulik  <rodo at novell.com>
-+
-+	* gstplayer.cxx (create): set state to PAUSED so that we can query
-+	duration ASAP
-+	(processMessage): watch for state changed and query duration when
-+	going to PAUSED state
-+
-+2006-08-15  Radek Doulik  <rodo at novell.com>
-+
-+	* makefile.mk: require gstreamer-plugins-base-0.10 and link with
-+	gst interfaces library
-+
-+	* gstwindow.cxx: make it build
-+
-+	* gstplayer.cxx: removed WINNT ifdefs (relict from time when I
-+	thought Cedric develops on win architecture)
-+	(gst_pipeline_bus_callback): added sync handler for setting
-+	xwindow id to to video sink
-+	(processSyncMessage): new metrhod, process message from sync
-+	handler
-+	(create): set playbin state to READY so that playback start is
-+	faster
-+	(createPlayerWindow): implemented, we pass xwindow id in 3rd
-+	argument
-+
-+2006-08-04  Radek Doulik  <rodo at novell.com>
-+
-+	* gstplayer.cxx (create): add bus watch, watch for EOS in
-+	processMessage method (called from watch callback)
-+
-+2006-08-02  Radek Doulik  <rodo at novell.com>
-+
-+	* gstplayer.cxx: test for mpPlaybin != NULL before using it,
-+	initialize it in constructor to NULL and also reset it to NULL
-+	after unrefing
-+	(getDuration): check for sucessful query and the right format
-+	(getMediaTime): ditto,
-+	(setMediaTime): implemented
-+
-+2006-08-01  Radek Doulik  <rodo at novell.com>
-+
-+	* gstwindow.hxx: removed mpWndClass for now, so that the rest
-+	compiles
-+
-+	* gstuno.cxx (component_getFactory): s/DirectX/GStreamer so that
-+	component is loaded
-+
-+	* gstplayer.cxx (Player::Player): do not create gerror object, it
-+	is noit needed, free the error object only if created during
-+	initialization of gstremer
-+	(Player::create, start, stop): use g_main_loop only on windows
-+	(create): fixed ascURL declaration, added rtl namespace prefix
-+	(setMute): set mbMuted
-+	(setVolumeDB): convert avmedia volume to gstreamer volume, added
-+	missing NULL to the end of g_object_set call
-+	(getVolumeDB): convert gstreamer volume back to avmedia volume
-+
-+	* gstplayer.hxx: keep g_main_loop only on win platform. make
-+	mnUnmutedVolume double, moved mbInitialized to the end to quiet
-+	compiler warning
-+
-+	* gstcommon.hxx: removed wrong #include <rtl/ustring>
-+
-+	* renamed source files, prefixed the names with gst so that obj
-+	file names do not clash with xine object files
-+
-+	* makefile.mk: changed PRJNAME and TARGET to reflect
-+	gstreamer. enabled build on unix as well. removed win library
-+	references. removed source files which are not yet ported from
-+	SLOFILES list.
-+
-+2006-08-31  Radek Doulik  <rodo at novell.com>
-+
-+        * imported initial sources from Cedric Bosdonnat
-\ No newline at end of file
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-exports.dxp.diff b/patches/gstreamer/avmedia-source-gstreamer-exports.dxp.diff
deleted file mode 100644
index 85bd17a..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-exports.dxp.diff
+++ /dev/null
@@ -1,17 +0,0 @@
----
- avmedia/source/gstreamer/exports.dxp |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/exports.dxp
-
-diff --git avmedia/source/gstreamer/exports.dxp avmedia/source/gstreamer/exports.dxp
-new file mode 100644
-index 0000000..9630d7e
---- /dev/null
-+++ avmedia/source/gstreamer/exports.dxp
-@@ -0,0 +1,3 @@
-+component_getImplementationEnvironment
-+component_writeInfo
-+component_getFactory
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstcommon.hxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstcommon.hxx.diff
deleted file mode 100644
index dc9adb8..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstcommon.hxx.diff
+++ /dev/null
@@ -1,97 +0,0 @@
----
- avmedia/source/gstreamer/gstcommon.hxx |   83 ++++++++++++++++++++++++++++++++
- 1 files changed, 83 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstcommon.hxx
-
-diff --git avmedia/source/gstreamer/gstcommon.hxx avmedia/source/gstreamer/gstcommon.hxx
-new file mode 100644
-index 0000000..54df6e8
---- /dev/null
-+++ avmedia/source/gstreamer/gstcommon.hxx
-@@ -0,0 +1,83 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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
-+ *
-+ ************************************************************************/
-+
-+#ifndef _GSTCOMMON_HXX
-+#define _GSTCOMMON_HXX
-+
-+#include <gst/gst.h>
-+
-+#ifndef _OSL_MUTEX_HXX_
-+#include <osl/mutex.hxx>
-+#endif
-+#ifndef _DEBUG_HXX
-+#include <tools/debug.hxx>
-+#endif
-+#ifndef _STREAM_HXX
-+#include <tools/stream.hxx>
-+#endif
-+#ifndef _STRING_HXX
-+#include <tools/string.hxx>
-+#endif
-+#ifndef _URLOBJ_HXX
-+#include <tools/urlobj.hxx>
-+#endif
-+#ifndef _CPPUHELPER_IMPLBASE1_HXX_
-+#include <cppuhelper/implbase1.hxx>
-+#endif
-+#ifndef _CPPUHELPER_IMPLBASE2_HXX_
-+#include <cppuhelper/implbase2.hxx>
-+#endif
-+#ifndef _CPPUHELPER_WEAK_HXX_
-+#include <cppuhelper/weak.hxx>
-+#endif
-+#ifndef _CPPUHELPER_FACTORY_HXX_
-+#include <cppuhelper/factory.hxx>
-+#endif
-+
-+#include <com/sun/star/uno/Reference.h>
-+#include <com/sun/star/uno/RuntimeException.hpp>
-+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-+#include <com/sun/star/lang/XComponent.hpp>
-+#include <com/sun/star/registry/XRegistryKey.hpp>
-+#include <com/sun/star/lang/XComponent.hpp>
-+#include <com/sun/star/lang/XServiceInfo.hpp>
-+#include <com/sun/star/awt/Rectangle.hpp>
-+#include <com/sun/star/awt/KeyModifier.hpp>
-+#include <com/sun/star/awt/MouseButton.hpp>
-+#include <com/sun/star/media/XManager.hpp>
-+
-+#define WM_GRAPHNOTIFY (WM_USER + 567)
-+
-+#endif // _GSTCOMMOM_HXX
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.cxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.cxx.diff
deleted file mode 100644
index 850d9d3..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.cxx.diff
+++ /dev/null
@@ -1,258 +0,0 @@
----
- avmedia/source/gstreamer/gstframegrabber.cxx |  244 ++++++++++++++++++++++++++
- 1 files changed, 244 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstframegrabber.cxx
-
-diff --git avmedia/source/gstreamer/gstframegrabber.cxx avmedia/source/gstreamer/gstframegrabber.cxx
-new file mode 100644
-index 0000000..26b2e16
---- /dev/null
-+++ avmedia/source/gstreamer/gstframegrabber.cxx
-@@ -0,0 +1,244 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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 <tools/prewin.h>
-+#include <windows.h>
-+#include <objbase.h>
-+#include <strmif.h>
-+#include <Amvideo.h>
-+#include <Qedit.h>
-+#include <uuids.h>
-+#include <tools/postwin.h>
-+
-+#include "framegrabber.hxx"
-+#include "player.hxx"
-+
-+#include <tools/stream.hxx>
-+#include <vcl/graph.hxx>
-+#include <unotools/localfilehelper.hxx>
-+
-+#define AVMEDIA_GST_FRAMEGRABBER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.FrameGrabber_GStreamer"
-+#define AVMEDIA_GST_FRAMEGRABBER_SERVICENAME "com.sun.star.media.FrameGrabber_GStreamer"
-+
-+using namespace ::com::sun::star;
-+
-+namespace avmedia { namespace gstreamer {
-+
-+// ----------------
-+// - FrameGrabber -
-+// ----------------
-+
-+FrameGrabber::FrameGrabber( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
-+    mxMgr( rxMgr )
-+{
-+    ::CoInitialize( NULL );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+FrameGrabber::~FrameGrabber()
-+{
-+    ::CoUninitialize();
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+IMediaDet* FrameGrabber::implCreateMediaDet( const ::rtl::OUString& rURL ) const
-+{
-+    IMediaDet* pDet = NULL;
-+
-+    if( SUCCEEDED( CoCreateInstance( CLSID_MediaDet, NULL, CLSCTX_INPROC_SERVER, IID_IMediaDet, (void**) &pDet ) ) )
-+    {
-+        String aLocalStr;
-+
-+        if( ::utl::LocalFileHelper::ConvertURLToPhysicalName( rURL, aLocalStr ) && aLocalStr.Len() )
-+        {
-+            if( !SUCCEEDED( pDet->put_Filename( ::SysAllocString( aLocalStr.GetBuffer() ) ) ) )
-+            {
-+                pDet->Release();
-+                pDet = NULL;
-+            }
-+        }
-+    }
-+
-+    return pDet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+bool FrameGrabber::create( const ::rtl::OUString& rURL )
-+{
-+    // just check if a MediaDet interface can be created with the given URL
-+    IMediaDet*  pDet = implCreateMediaDet( rURL );
-+
-+    if( pDet )
-+    {
-+        maURL = rURL;
-+        pDet->Release();
-+        pDet = NULL;
-+    }
-+    else
-+        maURL = ::rtl::OUString();
-+
-+    return( maURL.getLength() > 0 );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Reference< graphic::XGraphic > SAL_CALL FrameGrabber::grabFrame( double fMediaTime )
-+    throw (uno::RuntimeException)
-+{
-+    uno::Reference< graphic::XGraphic > xRet;
-+    IMediaDet*                          pDet = implCreateMediaDet( maURL );
-+
-+    if( pDet )
-+    {
-+        double  fLength;
-+        long    nStreamCount;
-+        bool    bFound = false;
-+
-+        if( SUCCEEDED( pDet->get_OutputStreams( &nStreamCount ) ) )
-+        {
-+            for( long n = 0; ( n < nStreamCount ) && !bFound; ++n )
-+            {
-+                GUID aMajorType;
-+
-+                if( SUCCEEDED( pDet->put_CurrentStream( n ) )  &&
-+                    SUCCEEDED( pDet->get_StreamType( &aMajorType ) ) &&
-+                    ( aMajorType == MEDIATYPE_Video ) )
-+                {
-+                    bFound = true;
-+                }
-+            }
-+        }
-+
-+        if( bFound &&
-+            ( S_OK == pDet->get_StreamLength( &fLength ) ) &&
-+            ( fLength > 0.0 ) && ( fMediaTime >= 0.0 ) && ( fMediaTime <= fLength ) )
-+        {
-+            AM_MEDIA_TYPE   aMediaType;
-+            long            nWidth = 0, nHeight = 0, nSize = 0;
-+
-+            if( SUCCEEDED( pDet->get_StreamMediaType( &aMediaType ) ) )
-+            {
-+                if( ( aMediaType.formattype == FORMAT_VideoInfo ) &&
-+                    ( aMediaType.cbFormat >= sizeof( VIDEOINFOHEADER ) ) )
-+                {
-+                    VIDEOINFOHEADER* pVih = reinterpret_cast< VIDEOINFOHEADER* >( aMediaType.pbFormat );
-+
-+                    nWidth = pVih->bmiHeader.biWidth;
-+                    nHeight = pVih->bmiHeader.biHeight;
-+
-+                    if( nHeight < 0 )
-+                        nHeight *= -1;
-+                }
-+
-+                if( aMediaType.cbFormat != 0 )
-+                {
-+                    ::CoTaskMemFree( (PVOID) aMediaType.pbFormat );
-+                    aMediaType.cbFormat = 0;
-+                    aMediaType.pbFormat = NULL;
-+                }
-+
-+                if( aMediaType.pUnk != NULL )
-+                {
-+                    aMediaType.pUnk->Release();
-+                    aMediaType.pUnk = NULL;
-+                }
-+            }
-+
-+            if( ( nWidth > 0 ) && ( nHeight > 0 ) &&
-+                SUCCEEDED( pDet->GetBitmapBits( 0, &nSize, NULL, nWidth, nHeight ) ) &&
-+                ( nSize > 0  ) )
-+            {
-+                char* pBuffer = new char[ nSize ];
-+
-+                try
-+                {
-+                    if( SUCCEEDED( pDet->GetBitmapBits( fMediaTime, NULL, pBuffer, nWidth, nHeight ) ) )
-+                    {
-+                        SvMemoryStream  aMemStm( pBuffer, nSize, STREAM_READ | STREAM_WRITE );
-+                        Bitmap          aBmp;
-+
-+                        if( aBmp.Read( aMemStm, false ) && !aBmp.IsEmpty() )
-+                        {
-+                            const Graphic aGraphic( aBmp );
-+                            xRet = aGraphic.GetXGraphic();
-+                        }
-+                    }
-+                }
-+                catch( ... )
-+                {
-+                }
-+
-+                delete [] pBuffer;
-+            }
-+        }
-+
-+        pDet->Release();
-+    }
-+
-+    return xRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+::rtl::OUString SAL_CALL FrameGrabber::getImplementationName(  )
-+    throw (uno::RuntimeException)
-+{
-+    return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_GST_FRAMEGRABBER_IMPLEMENTATIONNAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL FrameGrabber::supportsService( const ::rtl::OUString& ServiceName )
-+    throw (uno::RuntimeException)
-+{
-+    return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_GST_FRAMEGRABBER_SERVICENAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Sequence< ::rtl::OUString > SAL_CALL FrameGrabber::getSupportedServiceNames(  )
-+    throw (uno::RuntimeException)
-+{
-+    uno::Sequence< ::rtl::OUString > aRet(1);
-+    aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_GST_FRAMEGRABBER_SERVICENAME ) );
-+
-+    return aRet;
-+}
-+
-+} // namespace gstreamer
-+} // namespace avmedia
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.hxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.hxx.diff
deleted file mode 100644
index f8d0dd9..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstframegrabber.hxx.diff
+++ /dev/null
@@ -1,92 +0,0 @@
----
- avmedia/source/gstreamer/gstframegrabber.hxx |   78 ++++++++++++++++++++++++++
- 1 files changed, 78 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstframegrabber.hxx
-
-diff --git avmedia/source/gstreamer/gstframegrabber.hxx avmedia/source/gstreamer/gstframegrabber.hxx
-new file mode 100644
-index 0000000..30e431f
---- /dev/null
-+++ avmedia/source/gstreamer/gstframegrabber.hxx
-@@ -0,0 +1,78 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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
-+ *
-+ ************************************************************************/
-+
-+#ifndef _FRAMEGRABBER_HXX
-+#define _FRAMEGRABBER_HXX
-+
-+#include "gstcommon.hxx"
-+
-+#ifndef _COM_SUN_STAR_MEDIA_XFRAMEGRABBER_HDL_
-+#include "com/sun/star/media/XFrameGrabber.hdl"
-+#endif
-+
-+namespace avmedia { namespace gstreamer {
-+
-+// ----------------
-+// - FrameGrabber -
-+// ----------------
-+
-+class FrameGrabber : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XFrameGrabber,
-+                                                      ::com::sun::star::lang::XServiceInfo >
-+{
-+public:
-+
-+            FrameGrabber( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr );
-+            ~FrameGrabber();
-+
-+    bool    create( const ::rtl::OUString& rURL );
-+
-+    // XFrameGrabber
-+    virtual ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphic > SAL_CALL grabFrame( double fMediaTime ) throw (::com::sun::star::uno::RuntimeException);
-+
-+    // XServiceInfo
-+    virtual ::rtl::OUString SAL_CALL getImplementationName(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames(  ) throw (::com::sun::star::uno::RuntimeException);
-+
-+private:
-+
-+    ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >    mxMgr;
-+    ::rtl::OUString                                                                     maURL;
-+};
-+
-+} // namespace gstreamer
-+} // namespace avmedia
-+
-+#endif // _FRAMEGRABBER_HXX
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstmanager.cxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstmanager.cxx.diff
deleted file mode 100644
index 08390f0..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstmanager.cxx.diff
+++ /dev/null
@@ -1,128 +0,0 @@
----
- avmedia/source/gstreamer/gstmanager.cxx |  114 +++++++++++++++++++++++++++++++
- 1 files changed, 114 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstmanager.cxx
-
-diff --git avmedia/source/gstreamer/gstmanager.cxx avmedia/source/gstreamer/gstmanager.cxx
-new file mode 100644
-index 0000000..5b6cb15
---- /dev/null
-+++ avmedia/source/gstreamer/gstmanager.cxx
-@@ -0,0 +1,114 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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 "gstmanager.hxx"
-+#include "gstplayer.hxx"
-+
-+#include <tools/urlobj.hxx>
-+
-+#define AVMEDIA_GST_MANAGER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Manager_GStreamer"
-+#define AVMEDIA_GST_MANAGER_SERVICENAME "com.sun.star.media.Manager"
-+
-+#if DEBUG
-+#define DBG OSL_TRACE
-+#else
-+#define DBG(...)
-+#endif
-+
-+using namespace ::com::sun::star;
-+
-+namespace avmedia { namespace gstreamer {
-+// ----------------
-+// - Manager -
-+// ----------------
-+
-+Manager::Manager( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
-+    mxMgr( rxMgr )
-+{
-+    DBG( "avmediagst: Manager::Manager" );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+Manager::~Manager()
-+{
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const ::rtl::OUString& rURL )
-+    throw (uno::RuntimeException)
-+{
-+    Player*                             pPlayer( new Player( mxMgr ) );
-+    uno::Reference< media::XPlayer >    xRet( pPlayer );
-+    const INetURLObject                 aURL( rURL );
-+
-+    DBG( "avmediagst: Manager::createPlayer" );
-+
-+    if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) )  )
-+        xRet = uno::Reference< media::XPlayer >();
-+
-+    return xRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+::rtl::OUString SAL_CALL Manager::getImplementationName(  )
-+    throw (uno::RuntimeException)
-+{
-+    return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_GST_MANAGER_IMPLEMENTATIONNAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL Manager::supportsService( const ::rtl::OUString& ServiceName )
-+    throw (uno::RuntimeException)
-+{
-+    return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_GST_MANAGER_SERVICENAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Sequence< ::rtl::OUString > SAL_CALL Manager::getSupportedServiceNames(  )
-+    throw (uno::RuntimeException)
-+{
-+    uno::Sequence< ::rtl::OUString > aRet(1);
-+    aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_GST_MANAGER_SERVICENAME ) );
-+
-+    return aRet;
-+}
-+
-+} // namespace gstreamer
-+} // namespace avmedia
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstmanager.hxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstmanager.hxx.diff
deleted file mode 100644
index fd10a41..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstmanager.hxx.diff
+++ /dev/null
@@ -1,88 +0,0 @@
----
- avmedia/source/gstreamer/gstmanager.hxx |   74 +++++++++++++++++++++++++++++++
- 1 files changed, 74 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstmanager.hxx
-
-diff --git avmedia/source/gstreamer/gstmanager.hxx avmedia/source/gstreamer/gstmanager.hxx
-new file mode 100644
-index 0000000..8ed38bb
---- /dev/null
-+++ avmedia/source/gstreamer/gstmanager.hxx
-@@ -0,0 +1,74 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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
-+ *
-+ ************************************************************************/
-+
-+#ifndef _MANAGER_HXX
-+#define _MANAGER_HXX
-+
-+#include "gstcommon.hxx"
-+
-+#ifndef _COM_SUN_STAR_MEDIA_XMANAGER_HDL_
-+#include "com/sun/star/media/XManager.hdl"
-+#endif
-+
-+// -----------
-+// - Manager -
-+// -----------
-+
-+namespace avmedia { namespace gstreamer {
-+
-+class Manager : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XManager,
-+                                                 ::com::sun::star::lang::XServiceInfo >
-+{
-+public:
-+
-+    Manager( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr );
-+    ~Manager();
-+
-+    // XManager
-+    virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XPlayer > SAL_CALL createPlayer( const ::rtl::OUString& aURL ) throw (::com::sun::star::uno::RuntimeException);
-+
-+    // XServiceInfo
-+    virtual ::rtl::OUString SAL_CALL getImplementationName(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames(  ) throw (::com::sun::star::uno::RuntimeException);
-+private:
-+
-+    ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
-+};
-+
-+} // namespace gstreamer
-+} // namespace avmedia
-+
-+#endif // _MANAGER_HXX
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstplayer.cxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstplayer.cxx.diff
deleted file mode 100644
index 0f8df7b..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstplayer.cxx.diff
+++ /dev/null
@@ -1,642 +0,0 @@
----
- avmedia/source/gstreamer/gstplayer.cxx |  628 ++++++++++++++++++++++++++++++++
- 1 files changed, 628 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstplayer.cxx
-
-diff --git avmedia/source/gstreamer/gstplayer.cxx avmedia/source/gstreamer/gstplayer.cxx
-new file mode 100644
-index 0000000..66bbf7a
---- /dev/null
-+++ avmedia/source/gstreamer/gstplayer.cxx
-@@ -0,0 +1,628 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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 <math.h>
-+
-+#ifndef __RTL_USTRING_
-+#include <rtl/string.hxx>
-+#endif
-+
-+#include "gstplayer.hxx"
-+#include "gstframegrabber.hxx"
-+#include "gstwindow.hxx"
-+
-+#include <gst/interfaces/xoverlay.h>
-+
-+#define AVMEDIA_GST_PLAYER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Player_GStreamer"
-+#define AVMEDIA_GST_PLAYER_SERVICENAME "com.sun.star.media.Player_GStreamer"
-+
-+#if DEBUG
-+#define DBG OSL_TRACE
-+#else
-+#define DBG(...)
-+#endif
-+
-+using namespace ::com::sun::star;
-+
-+namespace avmedia { namespace gstreamer {
-+
-+// ----------------
-+// - Player -
-+// ----------------
-+
-+Player::Player( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
-+    mxMgr( rxMgr ),
-+    mpPlaybin( NULL ),
-+    mbFakeVideo (sal_False ),
-+    mnUnmutedVolume( 0 ),
-+    mbMuted( false ),
-+    mbLooping( false ),
-+    mbInitialized( false ),
-+    mnWindowID( 0 ),
-+    mpXOverlay( NULL ),
-+    mnDuration( 0 ),
-+    mnWidth( 0 ),
-+    mnHeight( 0 ),
-+    maSizeCondition( osl_createCondition() )
-+{
-+    // Initialize GStreamer library
-+    int argc = 1;
-+    char *arguments[] = { "openoffice.org" };
-+    char** argv = arguments;
-+    GError* pError = NULL;
-+
-+    mbInitialized = gst_init_check( &argc, &argv, &pError );
-+
-+    if (pError != NULL)
-+        // TODO: thow an exception?
-+        g_error_free (pError);
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+Player::~Player()
-+{
-+    // Release the elements and pipeline
-+    if( mbInitialized )
-+    {
-+        if( mpPlaybin )
-+        {
-+            gst_element_set_state( mpPlaybin, GST_STATE_NULL );
-+            gst_object_unref( GST_OBJECT( mpPlaybin ) );
-+
-+            mpPlaybin = NULL;
-+        }
-+
-+        if( mpXOverlay ) {
-+            g_object_unref( G_OBJECT ( mpXOverlay ) );
-+            mpXOverlay = NULL;
-+        }
-+    }
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+static gboolean gst_pipeline_bus_callback( GstBus *, GstMessage *message, gpointer data )
-+{
-+    Player* pPlayer = (Player *) data;
-+
-+    pPlayer->processMessage( message );
-+
-+    return TRUE;
-+}
-+
-+static GstBusSyncReply gst_pipeline_bus_sync_handler( GstBus *, GstMessage * message, gpointer data )
-+{
-+    Player* pPlayer = (Player *) data;
-+
-+    return pPlayer->processSyncMessage( message );
-+}
-+
-+void Player::processMessage( GstMessage *message )
-+{
-+    //DBG ( "gst message received: src name: %s structure type: %s",
-+    //            gst_object_get_name (message->src),
-+    //            message->structure ? gst_structure_get_name (message->structure) : "<none>");
-+
-+    switch( GST_MESSAGE_TYPE( message ) ) {
-+    case GST_MESSAGE_EOS:
-+        //DBG( "EOS, reset state to NULL" );
-+        gst_element_set_state( mpPlaybin, GST_STATE_READY );
-+        break;
-+    case GST_MESSAGE_STATE_CHANGED:
-+        if( message->src == GST_OBJECT( mpPlaybin ) ) {
-+            GstState newstate, pendingstate;
-+
-+            gst_message_parse_state_changed (message, NULL, &newstate, &pendingstate);
-+
-+            if( newstate == GST_STATE_PAUSED &&
-+                pendingstate == GST_STATE_VOID_PENDING &&
-+                mpXOverlay )
-+                gst_x_overlay_expose( mpXOverlay );
-+        }
-+    default:
-+        break;
-+    }
-+}
-+
-+GstBusSyncReply Player::processSyncMessage( GstMessage *message )
-+{
-+    DBG( "%p processSyncMessage", this );
-+    //DBG ( "gst message received: src name: %s structure type: %s",
-+    //            gst_object_get_name (message->src),
-+    //            message->structure ? gst_structure_get_name (message->structure) : "<none>");
-+
-+    if (message->structure) {
-+        if( !strcmp( gst_structure_get_name( message->structure ), "prepare-xwindow-id" ) && mnWindowID != 0 ) {
-+            if( mpXOverlay )
-+                g_object_unref( G_OBJECT ( mpXOverlay ) );
-+            mpXOverlay = GST_X_OVERLAY( GST_MESSAGE_SRC( message ) );
-+            g_object_ref( G_OBJECT ( mpXOverlay ) );
-+            gst_x_overlay_set_xwindow_id( mpXOverlay, mnWindowID );
-+            return GST_BUS_DROP;
-+        }
-+    }
-+
-+    if( GST_MESSAGE_TYPE( message ) == GST_MESSAGE_STATE_CHANGED ) {
-+        if( message->src == GST_OBJECT( mpPlaybin ) ) {
-+            GstState newstate, pendingstate;
-+
-+            gst_message_parse_state_changed (message, NULL, &newstate, &pendingstate);
-+
-+            DBG( "%p state change received, new state %d", this, newstate );
-+            if( newstate == GST_STATE_PAUSED &&
-+                pendingstate == GST_STATE_VOID_PENDING ) {
-+
-+                DBG( "%p change to paused received", this );
-+
-+                if( mnDuration == 0) {
-+                    GstFormat format = GST_FORMAT_TIME;
-+                    gint64 gst_duration = 0L;
-+
-+                    if( gst_element_query_duration( mpPlaybin, &format, &gst_duration) && format == GST_FORMAT_TIME && gst_duration > 0L )
-+                        mnDuration = gst_duration;
-+                }
-+
-+                if( mnWidth == 0 ) {
-+                    GList *pStreamInfo = NULL;
-+
-+                    g_object_get( G_OBJECT( mpPlaybin ), "stream-info", &pStreamInfo, NULL );
-+
-+                    for ( ; pStreamInfo != NULL; pStreamInfo = pStreamInfo->next) {
-+                        GObject *pInfo = G_OBJECT( pStreamInfo->data );
-+
-+                        if( !pInfo )
-+                            continue;
-+
-+                        int nType;
-+                        g_object_get( pInfo, "type", &nType, NULL );
-+                        GEnumValue *pValue = g_enum_get_value( G_PARAM_SPEC_ENUM( g_object_class_find_property( G_OBJECT_GET_CLASS( pInfo ), "type" ) )->enum_class,
-+                                                               nType );
-+
-+                        if( !g_strcasecmp( pValue->value_nick, "video" ) ) {
-+                            GstStructure *pStructure;
-+                            GstPad *pPad;
-+
-+                            g_object_get( pInfo, "object", &pPad, NULL );
-+                            pStructure = gst_caps_get_structure( GST_PAD_CAPS( pPad ), 0 );
-+                            if( pStructure ) {
-+                                gst_structure_get_int( pStructure, "width", &mnWidth );
-+                                gst_structure_get_int( pStructure, "height", &mnHeight );
-+                                DBG( "queried size: %d x %d", mnWidth, mnHeight );
-+                            }
-+                        }
-+                    }
-+
-+                    sal_Bool aSuccess = osl_setCondition( maSizeCondition );
-+                    DBG( "%p set condition result: %d", this, aSuccess );
-+                }
-+            }
-+        }
-+    } else if( GST_MESSAGE_TYPE( message ) == GST_MESSAGE_ERROR ) {
-+        if( mnWidth == 0 ) {
-+            // an error occured, set condition so that OOo thread doesn't wait for us
-+            sal_Bool aSuccess = osl_setCondition( maSizeCondition );
-+            DBG( "%p set condition result: %d", this, aSuccess );
-+        }
-+    }
-+
-+    return GST_BUS_PASS;
-+}
-+
-+void Player::preparePlaybin( const ::rtl::OUString& rURL, bool bFakeVideo )
-+{
-+        GstBus *pBus;
-+
-+        //sal_Bool aSuccess = osl_setCondition( maSizeCondition );
-+        //DBG( "%p set condition result: %d", this, aSuccess );
-+
-+        if( mpPlaybin != NULL ) {
-+            gst_element_set_state( mpPlaybin, GST_STATE_NULL );
-+            g_object_unref( mpPlaybin );
-+        }
-+
-+        mpPlaybin = gst_element_factory_make( "playbin", NULL );
-+
-+        if( bFakeVideo )
-+            g_object_set( G_OBJECT( mpPlaybin ), "video-sink", gst_element_factory_make( "fakesink", NULL ), NULL );
-+
-+        mbFakeVideo = bFakeVideo;
-+
-+        rtl::OString ascURL = OUStringToOString( rURL, RTL_TEXTENCODING_ASCII_US );
-+        g_object_set( G_OBJECT( mpPlaybin ), "uri", ascURL.getStr() , NULL );
-+
-+        pBus = gst_element_get_bus( mpPlaybin );
-+        gst_bus_add_watch( pBus, gst_pipeline_bus_callback, this );
-+        DBG( "%p set sync handler", this );
-+        gst_bus_set_sync_handler( pBus, gst_pipeline_bus_sync_handler, this );
-+        g_object_unref( pBus );
-+}
-+
-+bool Player::create( const ::rtl::OUString& rURL )
-+{
-+    bool    bRet = false;
-+
-+    // create all the elements and link them
-+
-+    if( mbInitialized )
-+    {
-+        preparePlaybin( rURL, true );
-+
-+        gst_element_set_state( mpPlaybin, GST_STATE_PAUSED );
-+
-+        bRet = true;
-+    }
-+
-+
-+    if( bRet )
-+        maURL = rURL;
-+    else
-+        maURL = ::rtl::OUString();
-+
-+    return bRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::start(  )
-+    throw (uno::RuntimeException)
-+{
-+    //DBG ("Player::start");
-+
-+    // set the pipeline state to READY and run the loop
-+    if( mbInitialized && NULL != mpPlaybin )
-+    {
-+        gst_element_set_state( mpPlaybin, GST_STATE_PLAYING );
-+    }
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::stop(  )
-+    throw (uno::RuntimeException)
-+{
-+    // set the pipeline in PAUSED STATE
-+    if( mpPlaybin )
-+        gst_element_set_state( mpPlaybin, GST_STATE_PAUSED );
-+
-+    DBG( "stop %p", mpPlaybin );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL Player::isPlaying()
-+    throw (uno::RuntimeException)
-+{
-+    bool            bRet = false;
-+
-+    // return whether the pipeline is in PLAYING STATE or not
-+    if( mbInitialized && mpPlaybin )
-+    {
-+        bRet = GST_STATE_PLAYING == GST_STATE( mpPlaybin );
-+    }
-+
-+    DBG( "isPlaying %d", bRet );
-+
-+    return bRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+double SAL_CALL Player::getDuration(  )
-+    throw (uno::RuntimeException)
-+{
-+    // slideshow checks for non-zero duration, so cheat here
-+    double duration = 0.01;
-+
-+    if( mpPlaybin && mnDuration > 0 ) {
-+        duration = mnDuration / 1E9;
-+
-+        //DBG( "gst duration: %lld ns duration: %lf s", gst_duration, duration );
-+    }
-+
-+    return duration;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::setMediaTime( double fTime )
-+    throw (uno::RuntimeException)
-+{
-+    if( mpPlaybin ) {
-+        gint64 gst_position = llround (fTime * 1E9);
-+
-+        gst_element_seek( mpPlaybin, 1.0,
-+                          GST_FORMAT_TIME,
-+                          GST_SEEK_FLAG_FLUSH,
-+                          GST_SEEK_TYPE_SET, gst_position,
-+                          GST_SEEK_TYPE_NONE, 0 );
-+        if( !isPlaying() )
-+            gst_element_set_state( mpPlaybin, GST_STATE_PAUSED );
-+
-+        DBG( "seek to: %lld ns original: %lf s", gst_position, fTime );
-+    }
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+double SAL_CALL Player::getMediaTime(  )
-+    throw (uno::RuntimeException)
-+{
-+    double position = 0.0;
-+
-+    if( mpPlaybin ) {
-+        // get current position in the stream
-+        GstFormat format = GST_FORMAT_TIME;
-+        gint64 gst_position;
-+        if( gst_element_query_position( mpPlaybin, &format, &gst_position ) && format == GST_FORMAT_TIME && gst_position > 0L )
-+            position = gst_position / 1E9;
-+    }
-+
-+    return position;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::setStopTime( double fTime )
-+    throw (uno::RuntimeException)
-+{
-+    // TODO implement
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+double SAL_CALL Player::getStopTime(  )
-+    throw (uno::RuntimeException)
-+{
-+    // Get the time at which to stop
-+
-+    return 0;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::setRate( double fRate )
-+    throw (uno::RuntimeException)
-+{
-+    // TODO set the window rate
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+double SAL_CALL Player::getRate(  )
-+    throw (uno::RuntimeException)
-+{
-+    double rate = 0.0;
-+
-+    // TODO get the window rate
-+    if( mbInitialized )
-+    {
-+
-+    }
-+
-+    return rate;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::setPlaybackLoop( sal_Bool bSet )
-+    throw (uno::RuntimeException)
-+{
-+    // TODO check how to do with GST
-+    mbLooping = bSet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL Player::isPlaybackLoop(  )
-+    throw (uno::RuntimeException)
-+{
-+    // TODO check how to do with GST
-+    return mbLooping;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::setMute( sal_Bool bSet )
-+    throw (uno::RuntimeException)
-+{
-+    DBG( "set mute: %d muted: %d unmuted volume: %lf", bSet, mbMuted, mnUnmutedVolume );
-+
-+    // change the volume to 0 or the unmuted volume
-+    if(  mpPlaybin && mbMuted != bSet )
-+    {
-+        double nVolume = mnUnmutedVolume;
-+        if( bSet )
-+        {
-+            nVolume = 0.0;
-+        }
-+
-+        g_object_set( G_OBJECT( mpPlaybin ), "volume", nVolume, NULL );
-+
-+        mbMuted = bSet;
-+    }
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL Player::isMute(  )
-+    throw (uno::RuntimeException)
-+{
-+    return mbMuted;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Player::setVolumeDB( sal_Int16 nVolumeDB )
-+    throw (uno::RuntimeException)
-+{
-+    mnUnmutedVolume = pow( 10.0, nVolumeDB / 20.0 );
-+
-+    DBG( "set volume: %d gst volume: %lf", nVolumeDB, mnUnmutedVolume );
-+
-+    // change volume
-+     if( !mbMuted && mpPlaybin )
-+     {
-+         g_object_set( G_OBJECT( mpPlaybin ), "volume", (gdouble) mnUnmutedVolume, NULL );
-+     }
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Int16 SAL_CALL Player::getVolumeDB(  )
-+    throw (uno::RuntimeException)
-+{
-+    sal_Int16 nVolumeDB;
-+
-+    if( mpPlaybin ) {
-+        double nGstVolume = 0.0;
-+
-+        g_object_get( G_OBJECT( mpPlaybin ), "volume", &nGstVolume, NULL );
-+
-+        nVolumeDB = (sal_Int16) ( 20.0*log10 ( nGstVolume ) );
-+
-+        //DBG( "get volume: %d gst volume: %lf", nVolumeDB, nGstVolume );
-+    }
-+
-+    return nVolumeDB;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+awt::Size SAL_CALL Player::getPreferredPlayerWindowSize(  )
-+    throw (uno::RuntimeException)
-+{
-+    awt::Size aSize( 0, 0 );
-+
-+    DBG( "%p Player::getPreferredPlayerWindowSize, member %d x %d", this, mnWidth, mnHeight );
-+
-+    TimeValue aTimeout = { 10, 0 };
-+    oslConditionResult aResult = osl_waitCondition( maSizeCondition, &aTimeout );
-+
-+    if( mbFakeVideo ) {
-+        mbFakeVideo = sal_False;
-+
-+         g_object_set( G_OBJECT( mpPlaybin ), "video-sink", NULL, NULL );
-+         gst_element_set_state( mpPlaybin, GST_STATE_READY );
-+         gst_element_set_state( mpPlaybin, GST_STATE_PAUSED );
-+    }
-+
-+    DBG( "%p Player::getPreferredPlayerWindowSize after waitCondition %d, member %d x %d", this, aResult, mnWidth, mnHeight );
-+
-+    if( mnWidth != 0 && mnHeight != 0 ) {
-+        aSize.Width = mnWidth;
-+        aSize.Height = mnHeight;
-+    }
-+
-+    return aSize;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Reference< ::media::XPlayerWindow > SAL_CALL Player::createPlayerWindow( const uno::Sequence< uno::Any >& rArguments )
-+    throw (uno::RuntimeException)
-+{
-+    uno::Reference< ::media::XPlayerWindow >    xRet;
-+    awt::Size                                   aSize( getPreferredPlayerWindowSize() );
-+
-+    DBG( "Player::createPlayerWindow %d %d length: %d", aSize.Width, aSize.Height, rArguments.getLength() );
-+
-+    if( aSize.Width > 0 && aSize.Height > 0 )
-+    {
-+        ::avmedia::gstreamer::Window* pWindow = new ::avmedia::gstreamer::Window( mxMgr, *this );
-+
-+        xRet = pWindow;
-+
-+        if( rArguments.getLength() > 2 ) {
-+            rArguments[ 2 ] >>= mnWindowID;
-+            DBG( "window ID: %ld", mnWindowID );
-+        }
-+
-+        //if( !pWindow->create( aArguments ) )
-+        //xRet = uno::Reference< ::media::XPlayerWindow >();
-+    }
-+
-+    return xRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Reference< media::XFrameGrabber > SAL_CALL Player::createFrameGrabber(  )
-+    throw (uno::RuntimeException)
-+{
-+    uno::Reference< media::XFrameGrabber > xRet;
-+
-+    /*if( maURL.getLength() > 0 )
-+    {
-+        FrameGrabber* pGrabber = new FrameGrabber( mxMgr );
-+
-+        xRet = pGrabber;
-+
-+        if( !pGrabber->create( maURL ) )
-+            xRet.clear();
-+            }*/
-+
-+    return xRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+::rtl::OUString SAL_CALL Player::getImplementationName(  )
-+    throw (uno::RuntimeException)
-+{
-+    return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_GST_PLAYER_IMPLEMENTATIONNAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL Player::supportsService( const ::rtl::OUString& ServiceName )
-+    throw (uno::RuntimeException)
-+{
-+    return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_GST_PLAYER_SERVICENAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Sequence< ::rtl::OUString > SAL_CALL Player::getSupportedServiceNames(  )
-+    throw (uno::RuntimeException)
-+{
-+    uno::Sequence< ::rtl::OUString > aRet(1);
-+    aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_GST_PLAYER_SERVICENAME ) );
-+
-+    return aRet;
-+}
-+
-+} // namespace gstreamer
-+} // namespace avmedia
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstplayer.hxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstplayer.hxx.diff
deleted file mode 100644
index 969617d..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstplayer.hxx.diff
+++ /dev/null
@@ -1,134 +0,0 @@
----
- avmedia/source/gstreamer/gstplayer.hxx |  120 ++++++++++++++++++++++++++++++++
- 1 files changed, 120 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstplayer.hxx
-
-diff --git avmedia/source/gstreamer/gstplayer.hxx avmedia/source/gstreamer/gstplayer.hxx
-new file mode 100644
-index 0000000..4296576
---- /dev/null
-+++ avmedia/source/gstreamer/gstplayer.hxx
-@@ -0,0 +1,120 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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
-+ *
-+ ************************************************************************/
-+
-+#ifndef _PLAYER_HXX
-+#define _PLAYER_HXX
-+
-+#include <osl/conditn.h>
-+#include "gstcommon.hxx"
-+
-+#ifndef _COM_SUN_STAR_MEDIA_XPLAYER_HDL_
-+#include "com/sun/star/media/XPlayer.hdl"
-+#endif
-+
-+typedef struct _GstXOverlay GstXOverlay;
-+
-+namespace avmedia { namespace gstreamer {
-+
-+// ----------
-+// - Player -
-+// ----------
-+
-+class Player : public ::cppu::WeakImplHelper2< ::com::sun::star::media::XPlayer,
-+                                               ::com::sun::star::lang::XServiceInfo >
-+{
-+public:
-+
-+    Player( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr );
-+    ~Player();
-+
-+    void preparePlaybin( const ::rtl::OUString& rURL, bool bFakeVideo );
-+    bool create( const ::rtl::OUString& rURL );
-+    void processMessage( GstMessage *message );
-+    GstBusSyncReply processSyncMessage( GstMessage *message );
-+
-+    // XPlayer
-+    virtual void SAL_CALL start(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL stop(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL isPlaying(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual double SAL_CALL getDuration(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setMediaTime( double fTime ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual double SAL_CALL getMediaTime(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setStopTime( double fTime ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual double SAL_CALL getStopTime(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setRate( double fRate ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual double SAL_CALL getRate(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setPlaybackLoop( sal_Bool bSet ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL isPlaybackLoop(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setMute( sal_Bool bSet ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL isMute(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setVolumeDB( sal_Int16 nVolumeDB ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Int16 SAL_CALL getVolumeDB(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::awt::Size SAL_CALL getPreferredPlayerWindowSize(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XPlayerWindow > SAL_CALL createPlayerWindow( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XFrameGrabber > SAL_CALL createFrameGrabber(  ) throw (::com::sun::star::uno::RuntimeException);
-+
-+    // XServiceInfo
-+    virtual ::rtl::OUString SAL_CALL getImplementationName(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames(  ) throw (::com::sun::star::uno::RuntimeException);
-+
-+private:
-+
-+    ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
-+
-+    ::rtl::OUString         maURL;
-+
-+    // Add elements and pipeline here
-+    GstElement*             mpPlaybin;  // the playbin is also a pipeline
-+    sal_Bool                mbFakeVideo;
-+
-+    gdouble                 mnUnmutedVolume;
-+    sal_Bool                mbMuted;
-+    sal_Bool                mbLooping;
-+    sal_Bool                mbInitialized;
-+
-+    long                    mnWindowID;
-+    GstXOverlay*            mpXOverlay;
-+    gint64                  mnDuration;
-+    int                     mnWidth;
-+    int                     mnHeight;
-+
-+    oslCondition            maSizeCondition;
-+};
-+
-+} // namespace gstreamer
-+} // namespace avmedia
-+
-+#endif // _PLAYER_HXX
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstuno.cxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstuno.cxx.diff
deleted file mode 100644
index 458110e..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstuno.cxx.diff
+++ /dev/null
@@ -1,125 +0,0 @@
----
- avmedia/source/gstreamer/gstuno.cxx |  111 +++++++++++++++++++++++++++++++++++
- 1 files changed, 111 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstuno.cxx
-
-diff --git avmedia/source/gstreamer/gstuno.cxx avmedia/source/gstreamer/gstuno.cxx
-new file mode 100644
-index 0000000..93eedb0
---- /dev/null
-+++ avmedia/source/gstreamer/gstuno.cxx
-@@ -0,0 +1,111 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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 "gstmanager.hxx"
-+
-+using namespace ::com::sun::star;
-+
-+// -------------------
-+// - factory methods -
-+// -------------------
-+
-+static uno::Reference< uno::XInterface > SAL_CALL create_MediaPlayer( const uno::Reference< lang::XMultiServiceFactory >& rxFact )
-+{
-+    return uno::Reference< uno::XInterface >( *new ::avmedia::gstreamer::Manager( rxFact ) );
-+}
-+
-+// ------------------------------------------
-+// - component_getImplementationEnvironment -
-+// ------------------------------------------
-+
-+extern "C" void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** ppEnv )
-+{
-+    *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
-+}
-+
-+// -----------------------
-+// - component_writeInfo -
-+// -----------------------
-+
-+extern "C" sal_Bool SAL_CALL component_writeInfo( void* pServiceManager, void* pRegistryKey )
-+{
-+    sal_Bool bRet = sal_False;
-+
-+    if( pRegistryKey )
-+    {
-+        try
-+        {
-+            uno::Reference< registry::XRegistryKey > xNewKey1(
-+                static_cast< registry::XRegistryKey* >( pRegistryKey )->createKey(
-+                ::rtl::OUString::createFromAscii( "/com.sun.star.comp.media.Manager_GStreamer/UNO/SERVICES/com.sun.star.media.Manager_GStreamer" ) ) );
-+
-+            bRet = sal_True;
-+        }
-+        catch( registry::InvalidRegistryException& )
-+        {
-+            OSL_ENSURE( sal_False, "### InvalidRegistryException!" );
-+        }
-+    }
-+
-+    return bRet;
-+}
-+
-+// ------------------------
-+// - component_getFactory -
-+// ------------------------
-+
-+extern "C" void* SAL_CALL component_getFactory( const sal_Char* pImplName, void* pServiceManager, void* pRegistryKey )
-+{
-+    uno::Reference< lang::XSingleServiceFactory > xFactory;
-+    void*									pRet = 0;
-+
-+    if( rtl_str_compare( pImplName, "com.sun.star.comp.media.Manager_GStreamer" ) == 0 )
-+    {
-+        const ::rtl::OUString aServiceName( ::rtl::OUString::createFromAscii( "com.sun.star.media.Manager_GStreamer" ) );
-+
-+        xFactory = uno::Reference< lang::XSingleServiceFactory >( ::cppu::createSingleFactory(
-+                        reinterpret_cast< lang::XMultiServiceFactory* >( pServiceManager ),
-+                        ::rtl::OUString::createFromAscii( "com.sun.star.comp.media.Manager_GStreamer" ),
-+                        create_MediaPlayer, uno::Sequence< ::rtl::OUString >( &aServiceName, 1 ) ) );
-+    }
-+
-+    if( xFactory.is() )
-+    {
-+        xFactory->acquire();
-+        pRet = xFactory.get();
-+    }
-+
-+    return pRet;
-+}
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstwindow.cxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstwindow.cxx.diff
deleted file mode 100644
index 109eff8..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstwindow.cxx.diff
+++ /dev/null
@@ -1,379 +0,0 @@
----
- avmedia/source/gstreamer/gstwindow.cxx |  365 ++++++++++++++++++++++++++++++++
- 1 files changed, 365 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstwindow.cxx
-
-diff --git avmedia/source/gstreamer/gstwindow.cxx avmedia/source/gstreamer/gstwindow.cxx
-new file mode 100644
-index 0000000..7c0c038
---- /dev/null
-+++ avmedia/source/gstreamer/gstwindow.cxx
-@@ -0,0 +1,365 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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 <com/sun/star/awt/SystemPointer.hdl>
-+
-+#include "gstwindow.hxx"
-+#include "gstplayer.hxx"
-+
-+#define AVMEDIA_GST_WINDOW_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Window_GStreamer"
-+#define AVMEDIA_GST_WINDOW_SERVICENAME "com.sun.star.media.Window_GStreamer"
-+
-+using namespace ::com::sun::star;
-+
-+namespace avmedia { namespace gstreamer {
-+
-+// -----------
-+// - statics -
-+// -----------
-+
-+static ::osl::Mutex& ImplGetOwnStaticMutex()
-+{
-+    static ::osl::Mutex* pMutex = NULL;
-+
-+    if( pMutex == NULL )
-+    {
-+        ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
-+
-+        if( pMutex == NULL )
-+        {
-+            static ::osl::Mutex aMutex;
-+            pMutex = &aMutex;
-+        }
-+    }
-+
-+    return *pMutex;
-+}
-+
-+// ---------------
-+// - Window -
-+// ---------------
-+
-+// ------------------------------------------------------------------------------
-+
-+Window::Window( const uno::Reference< lang::XMultiServiceFactory >& rxMgr, Player& rPlayer ) :
-+    mxMgr( rxMgr ),
-+    maListeners( maMutex ),
-+    meZoomLevel( media::ZoomLevel_NOT_AVAILABLE ),
-+    mrPlayer( rPlayer ),
-+    mnPointerType( awt::SystemPointer::ARROW )
-+{
-+    ::osl::MutexGuard aGuard( ImplGetOwnStaticMutex() );
-+
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+Window::~Window()
-+{
-+}
-+
-+// XPlayerWindow
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::update(  )
-+    throw (uno::RuntimeException)
-+{
-+    //::RedrawWindow( (HWND) mnFrameWnd, NULL, NULL, RDW_ALLCHILDREN | RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE  );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL Window::setZoomLevel( media::ZoomLevel eZoomLevel )
-+    throw (uno::RuntimeException)
-+{
-+        sal_Bool bRet = false;
-+
-+        if( media::ZoomLevel_NOT_AVAILABLE != meZoomLevel &&
-+            media::ZoomLevel_NOT_AVAILABLE != eZoomLevel )
-+        {
-+            if( eZoomLevel != meZoomLevel )
-+            {
-+                meZoomLevel = eZoomLevel;
-+                //ImplLayoutVideoWindow();
-+            }
-+
-+            bRet = true;
-+        }
-+
-+        return bRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+media::ZoomLevel SAL_CALL Window::getZoomLevel(  )
-+    throw (uno::RuntimeException)
-+{
-+    return meZoomLevel;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::setPointerType( sal_Int32 nPointerType )
-+    throw (uno::RuntimeException)
-+{
-+    mnPointerType = nPointerType;
-+}
-+
-+// XWindow
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::setPosSize( sal_Int32 X, sal_Int32 Y, sal_Int32 Width, sal_Int32 Height, sal_Int16 Flags )
-+    throw (uno::RuntimeException)
-+{
-+//     if( mnFrameWnd )
-+//     {
-+//         ::SetWindowPos( (HWND) mnFrameWnd, HWND_TOP, X, Y, Width, Height, 0 );
-+//         ImplLayoutVideoWindow();
-+//     }
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+awt::Rectangle SAL_CALL Window::getPosSize()
-+    throw (uno::RuntimeException)
-+{
-+    awt::Rectangle aRet;
-+
-+    aRet.X = aRet.Y = 0;
-+    aRet.Width = 320;
-+    aRet.Height = 240;
-+
-+//     if( mnFrameWnd )
-+//     {
-+//         ::RECT  aWndRect;
-+//         long    nX = 0, nY = 0, nWidth = 0, nHeight = 0;
-+
-+//         if( ::GetClientRect( (HWND) mnFrameWnd, &aWndRect ) )
-+//         {
-+//             aRet.X = aWndRect.left;
-+//             aRet.Y = aWndRect.top;
-+//             aRet.Width = aWndRect.right - aWndRect.left + 1;
-+//             aRet.Height = aWndRect.bottom - aWndRect.top + 1;
-+//         }
-+//     }
-+
-+    return aRet;
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::setVisible( sal_Bool bVisible )
-+    throw (uno::RuntimeException)
-+{
-+//     if( mnFrameWnd )
-+//     {
-+//         IVideoWindow* pVideoWindow = const_cast< IVideoWindow* >( mrPlayer.getVideoWindow() );
-+
-+//         if( pVideoWindow )
-+//             pVideoWindow->put_Visible( bVisible ? OATRUE : OAFALSE );
-+
-+//         ::ShowWindow( (HWND) mnFrameWnd, bVisible ? SW_SHOW : SW_HIDE );
-+//     }
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::setEnable( sal_Bool bEnable )
-+    throw (uno::RuntimeException)
-+{
-+//     if( mnFrameWnd )
-+//         ::EnableWindow( (HWND) mnFrameWnd, bEnable );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::setFocus(  )
-+    throw (uno::RuntimeException)
-+{
-+//     if( mnFrameWnd )
-+//         ::SetFocus( (HWND) mnFrameWnd );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::addWindowListener( const uno::Reference< awt::XWindowListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.addInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::removeWindowListener( const uno::Reference< awt::XWindowListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.removeInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::addFocusListener( const uno::Reference< awt::XFocusListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.addInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::removeFocusListener( const uno::Reference< awt::XFocusListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.removeInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::addKeyListener( const uno::Reference< awt::XKeyListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.addInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::removeKeyListener( const uno::Reference< awt::XKeyListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.removeInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::addMouseListener( const uno::Reference< awt::XMouseListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.addInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::removeMouseListener( const uno::Reference< awt::XMouseListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.removeInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::addMouseMotionListener( const uno::Reference< awt::XMouseMotionListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.addInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::removeMouseMotionListener( const uno::Reference< awt::XMouseMotionListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.removeInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::addPaintListener( const uno::Reference< awt::XPaintListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.addInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::removePaintListener( const uno::Reference< awt::XPaintListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.removeInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+
-+// XComponent
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::dispose(  )
-+    throw (uno::RuntimeException)
-+{
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::addEventListener( const uno::Reference< lang::XEventListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.addInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+void SAL_CALL Window::removeEventListener( const uno::Reference< lang::XEventListener >& xListener )
-+    throw (uno::RuntimeException)
-+{
-+    maListeners.removeInterface( getCppuType( &xListener ), xListener );
-+}
-+
-+// XServiceInfo
-+// ------------------------------------------------------------------------------
-+
-+::rtl::OUString SAL_CALL Window::getImplementationName(  )
-+    throw (uno::RuntimeException)
-+{
-+    return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_GST_WINDOW_IMPLEMENTATIONNAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+sal_Bool SAL_CALL Window::supportsService( const ::rtl::OUString& ServiceName )
-+    throw (uno::RuntimeException)
-+{
-+    return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_GST_WINDOW_SERVICENAME ) );
-+}
-+
-+// ------------------------------------------------------------------------------
-+
-+uno::Sequence< ::rtl::OUString > SAL_CALL Window::getSupportedServiceNames(  )
-+    throw (uno::RuntimeException)
-+{
-+    uno::Sequence< ::rtl::OUString > aRet(1);
-+    aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_GST_WINDOW_SERVICENAME ) );
-+
-+    return aRet;
-+}
-+
-+} // namespace gstreamer
-+} // namespace avmedia
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-gstwindow.hxx.diff b/patches/gstreamer/avmedia-source-gstreamer-gstwindow.hxx.diff
deleted file mode 100644
index 63621c2..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-gstwindow.hxx.diff
+++ /dev/null
@@ -1,133 +0,0 @@
----
- avmedia/source/gstreamer/gstwindow.hxx |  119 ++++++++++++++++++++++++++++++++
- 1 files changed, 119 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/gstwindow.hxx
-
-diff --git avmedia/source/gstreamer/gstwindow.hxx avmedia/source/gstreamer/gstwindow.hxx
-new file mode 100644
-index 0000000..b4dd5c3
---- /dev/null
-+++ avmedia/source/gstreamer/gstwindow.hxx
-@@ -0,0 +1,119 @@
-+/*************************************************************************
-+ *
-+ *  OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ *  $RCSfile$
-+ *
-+ *  $Revision$
-+ *
-+ *  last change: $Author$ $Date$
-+ *
-+ *  The Contents of this file are made available subject to
-+ *  the terms of GNU Lesser General Public License Version 2.1.
-+ *
-+ *
-+ *    GNU Lesser General Public License Version 2.1
-+ *    =============================================
-+ *    Copyright 2005 by Sun Microsystems, Inc.
-+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
-+ *
-+ *    This library is free software; you can redistribute it and/or
-+ *    modify it under the terms of the GNU Lesser General Public
-+ *    License version 2.1, as published by the Free Software Foundation.
-+ *
-+ *    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
-+ *    Lesser General Public License for more details.
-+ *
-+ *    You should have received a copy of the GNU Lesser 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
-+ *
-+ ************************************************************************/
-+
-+#ifndef _WINDOW_HXX
-+#define _WINDOW_HXX
-+
-+#include "gstcommon.hxx"
-+#include <cppuhelper/interfacecontainer.h>
-+
-+#ifndef _COM_SUN_STAR_MEDIA_XPLAYERWINDOW_HDL_
-+#include "com/sun/star/media/XPlayerWindow.hdl"
-+#endif
-+
-+namespace avmedia { namespace gstreamer {
-+
-+// ---------------
-+// - Window -
-+// ---------------
-+
-+class Player;
-+
-+class Window : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XPlayerWindow,
-+                                                ::com::sun::star::lang::XServiceInfo >
-+{
-+public:
-+
-+            Window( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr,
-+                    Player& rPlayer );
-+            ~Window();
-+
-+    bool    create( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments );
-+    void    processGraphEvent();
-+    void    updatePointer();
-+
-+    // XPlayerWindow
-+    virtual void SAL_CALL update(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL setZoomLevel( ::com::sun::star::media::ZoomLevel ZoomLevel ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::media::ZoomLevel SAL_CALL getZoomLevel(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setPointerType( sal_Int32 nPointerType ) throw (::com::sun::star::uno::RuntimeException);
-+
-+    // XWindow
-+    virtual void SAL_CALL setPosSize( sal_Int32 X, sal_Int32 Y, sal_Int32 Width, sal_Int32 Height, sal_Int16 Flags ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::awt::Rectangle SAL_CALL getPosSize(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setVisible( sal_Bool Visible ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setEnable( sal_Bool Enable ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL setFocus(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL addWindowListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL removeWindowListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL addFocusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFocusListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL removeFocusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFocusListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL addKeyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XKeyListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL removeKeyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XKeyListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL addMouseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL removeMouseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL addMouseMotionListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseMotionListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL removeMouseMotionListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseMotionListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL addPaintListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPaintListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL removePaintListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPaintListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+
-+    // XComponent
-+    virtual void SAL_CALL dispose(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) throw (::com::sun::star::uno::RuntimeException);
-+
-+    // XServiceInfo
-+    virtual ::rtl::OUString SAL_CALL getImplementationName(  ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
-+    virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames(  ) throw (::com::sun::star::uno::RuntimeException);
-+
-+
-+private:
-+
-+    ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
-+
-+    ::osl::Mutex                                maMutex;
-+    ::cppu::OMultiTypeInterfaceContainerHelper  maListeners;
-+    ::com::sun::star::media::ZoomLevel          meZoomLevel;
-+    Player&                                     mrPlayer;
-+    int                                         mnPointerType;
-+
-+    void                                        ImplLayoutVideoWindow();
-+};
-+
-+} // namespace gstreamer
-+} // namespace avmedia
-+
-+#endif // _WINDOW_HXX
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/avmedia-source-gstreamer-makefile.mk.diff b/patches/gstreamer/avmedia-source-gstreamer-makefile.mk.diff
deleted file mode 100644
index 68e89c0..0000000
--- a/patches/gstreamer/avmedia-source-gstreamer-makefile.mk.diff
+++ /dev/null
@@ -1,99 +0,0 @@
----
- avmedia/source/gstreamer/makefile.mk |   85 ++++++++++++++++++++++++++++++++++
- 1 files changed, 85 insertions(+), 0 deletions(-)
- create mode 100644 avmedia/source/gstreamer/makefile.mk
-
-diff --git avmedia/source/gstreamer/makefile.mk avmedia/source/gstreamer/makefile.mk
-new file mode 100644
-index 0000000..ec24ac7
---- /dev/null
-+++ avmedia/source/gstreamer/makefile.mk
-@@ -0,0 +1,85 @@
-+#*************************************************************************
-+#
-+#   OpenOffice.org - a multi-platform office productivity suite
-+#
-+#   $RCSfile$
-+#
-+#   $Revision$
-+#
-+#   last change: $Author$ $Date$
-+#
-+#   The Contents of this file are made available subject to
-+#   the terms of GNU Lesser General Public License Version 2.1.
-+#
-+#
-+#     GNU Lesser General Public License Version 2.1
-+#     =============================================
-+#     Copyright 2005 by Sun Microsystems, Inc.
-+#     901 San Antonio Road, Palo Alto, CA 94303, USA
-+#
-+#     This library is free software; you can redistribute it and/or
-+#     modify it under the terms of the GNU Lesser General Public
-+#     License version 2.1, as published by the Free Software Foundation.
-+#
-+#     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
-+#     Lesser General Public License for more details.
-+#
-+#     You should have received a copy of the GNU Lesser 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
-+#
-+#*************************************************************************
-+
-+PRJ=..$/..
-+PRJNAME=avmedia
-+TARGET=avmediagst
-+
-+# --- Settings ----------------------------------
-+
-+.INCLUDE :  	settings.mk
-+
-+.IF "$(ENABLE_GSTREAMER)" == "TRUE"
-+
-+.IF "$(verbose)"!="" || "$(VERBOSE)"!=""
-+CDEFS+= -DVERBOSE
-+.ENDIF
-+
-+PKGCONFIG_MODULES=gstreamer-0.10, gstreamer-plugins-base-0.10
-+.INCLUDE: pkg_config.mk
-+PKGCONFIG_LIBS+=-lgstinterfaces-0.10
-+
-+# --- Files ----------------------------------
-+
-+.IF "$(GUI)" == "UNX" || "$(GUI)" == "WNT"
-+
-+.IF "$(GUI)" == "WNT"
-+CDEFS+= -DWINNT
-+.ENDIF
-+
-+SLOFILES= \
-+        $(SLO)$/gstuno.obj      \
-+        $(SLO)$/gstmanager.obj  \
-+        $(SLO)$/gstplayer.obj	\
-+        $(SLO)$/gstwindow.obj
-+
-+
-+EXCEPTIONSFILES= \
-+        $(SLO)$/gstuno.obj      \
-+
-+SHL1TARGET=$(TARGET)
-+SHL1STDLIBS= $(CPPULIB) $(SALLIB) $(COMPHELPERLIB) $(CPPUHELPERLIB) $(PKGCONFIG_LIBS) $(TOOLSLIB)
-+SHL1IMPLIB=i$(TARGET)
-+SHL1LIBS=$(SLB)$/$(TARGET).lib
-+SHL1DEF=$(MISC)$/$(SHL1TARGET).def
-+
-+DEF1NAME=$(SHL1TARGET)
-+DEF1EXPORTFILE=exports.dxp
-+
-+.ENDIF
-+
-+.ENDIF
-+
-+.INCLUDE :  	target.mk
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/gstreamer-avmedia-file-types.diff b/patches/gstreamer/gstreamer-avmedia-file-types.diff
deleted file mode 100644
index 0ab242c..0000000
--- a/patches/gstreamer/gstreamer-avmedia-file-types.diff
+++ /dev/null
@@ -1,19 +0,0 @@
----
- avmedia/source/viewer/mediawindow.cxx |    1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
-
-diff --git avmedia/source/viewer/mediawindow.cxx avmedia/source/viewer/mediawindow.cxx
-index edc9ee5..e9ade6d 100644
---- avmedia/source/viewer/mediawindow.cxx
-+++ avmedia/source/viewer/mediawindow.cxx
-@@ -368,6 +368,7 @@ void MediaWindow::getMediaFilters( FilterNameVector& rFilterNameVector )
-                                         "AU Audio", "au",
-                                         "AVI", "avi",
-                                         "CD Audio", "cda",
-+                                        "FLAC Audio", "flac",
-                                         "MIDI Audio", "mid;midi",
-                                         "MPEG Audio", "mp2;mp3;mpa",
-                                         "MPEG Video", "mpg;mpeg;mpv;mp4",
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/gstreamer-avmedia-loopingetc.diff b/patches/gstreamer/gstreamer-avmedia-loopingetc.diff
deleted file mode 100644
index 6b4da39..0000000
--- a/patches/gstreamer/gstreamer-avmedia-loopingetc.diff
+++ /dev/null
@@ -1,97 +0,0 @@
----
- avmedia/source/gstreamer/gstplayer.cxx |   15 +++++++++++++--
- avmedia/source/gstreamer/gstplayer.hxx |    1 +
- 2 files changed, 14 insertions(+), 2 deletions(-)
-
-diff --git avmedia/source/gstreamer/gstplayer.cxx avmedia/source/gstreamer/gstplayer.cxx
-index 66bbf7a..1d6a04d 100644
---- avmedia/source/gstreamer/gstplayer.cxx
-+++ avmedia/source/gstreamer/gstplayer.cxx
-@@ -67,6 +67,7 @@ Player::Player( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
-     mpPlaybin( NULL ),
-     mbFakeVideo (sal_False ),
-     mnUnmutedVolume( 0 ),
-+    mbPlayPending ( false ),
-     mbMuted( false ),
-     mbLooping( false ),
-     mbInitialized( false ),
-@@ -140,6 +141,9 @@ void Player::processMessage( GstMessage *message )
-     case GST_MESSAGE_EOS:
-         //DBG( "EOS, reset state to NULL" );
-         gst_element_set_state( mpPlaybin, GST_STATE_READY );
-+        mbPlayPending = false;
-+        if (mbLooping)
-+            start();
-         break;
-     case GST_MESSAGE_STATE_CHANGED:
-         if( message->src == GST_OBJECT( mpPlaybin ) ) {
-@@ -151,6 +155,9 @@ void Player::processMessage( GstMessage *message )
-                 pendingstate == GST_STATE_VOID_PENDING &&
-                 mpXOverlay )
-                 gst_x_overlay_expose( mpXOverlay );
-+
-+        if (mbPlayPending)
-+            mbPlayPending = ((newstate == GST_STATE_READY) || (newstate == GST_STATE_PAUSED));
-         }
-     default:
-         break;
-@@ -250,6 +257,7 @@ void Player::preparePlaybin( const ::rtl::OUString& rURL, bool bFakeVideo )
- 
-         if( mpPlaybin != NULL ) {
-             gst_element_set_state( mpPlaybin, GST_STATE_NULL );
-+            mbPlayPending = false;
-             g_object_unref( mpPlaybin );
-         }
- 
-@@ -281,6 +289,7 @@ bool Player::create( const ::rtl::OUString& rURL )
-         preparePlaybin( rURL, true );
- 
-         gst_element_set_state( mpPlaybin, GST_STATE_PAUSED );
-+        mbPlayPending = false;
- 
-         bRet = true;
-     }
-@@ -305,6 +314,7 @@ void SAL_CALL Player::start(  )
-     if( mbInitialized && NULL != mpPlaybin )
-     {
-         gst_element_set_state( mpPlaybin, GST_STATE_PLAYING );
-+        mbPlayPending = true;
-     }
- }
- 
-@@ -317,6 +327,7 @@ void SAL_CALL Player::stop(  )
-     if( mpPlaybin )
-         gst_element_set_state( mpPlaybin, GST_STATE_PAUSED );
- 
-+    mbPlayPending = false;
-     DBG( "stop %p", mpPlaybin );
- }
- 
-@@ -325,10 +336,10 @@ void SAL_CALL Player::stop(  )
- sal_Bool SAL_CALL Player::isPlaying()
-     throw (uno::RuntimeException)
- {
--    bool            bRet = false;
-+    bool            bRet = mbPlayPending;
- 
-     // return whether the pipeline is in PLAYING STATE or not
--    if( mbInitialized && mpPlaybin )
-+    if( !mbPlayPending && mbInitialized && mpPlaybin )
-     {
-         bRet = GST_STATE_PLAYING == GST_STATE( mpPlaybin );
-     }
-diff --git avmedia/source/gstreamer/gstplayer.hxx avmedia/source/gstreamer/gstplayer.hxx
-index 4296576..064eb16 100644
---- avmedia/source/gstreamer/gstplayer.hxx
-+++ avmedia/source/gstreamer/gstplayer.hxx
-@@ -101,6 +101,7 @@ private:
-     sal_Bool                mbFakeVideo;
- 
-     gdouble                 mnUnmutedVolume;
-+    sal_Bool                mbPlayPending;
-     sal_Bool                mbMuted;
-     sal_Bool                mbLooping;
-     sal_Bool                mbInitialized;
--- 
-1.7.0.1
-
diff --git a/patches/gstreamer/gstreamer-avmedia.diff b/patches/gstreamer/gstreamer-avmedia.diff
deleted file mode 100644
index 523b0d3..0000000
--- a/patches/gstreamer/gstreamer-avmedia.diff
+++ /dev/null
@@ -1,206 +0,0 @@
----
- avmedia/prj/build.lst                      |    3 +-
- avmedia/source/inc/mediamisc.hxx           |    4 ++
- avmedia/source/viewer/mediawindow_impl.cxx |   50 ++++++++++++++++++++++++++-
- avmedia/source/viewer/mediawindow_impl.hxx |    8 ++++
- 4 files changed, 62 insertions(+), 3 deletions(-)
-
-diff --git avmedia/prj/build.lst avmedia/prj/build.lst
-index 1ef04ca..9e3f9ea 100644
---- avmedia/prj/build.lst
-+++ avmedia/prj/build.lst
-@@ -8,4 +8,5 @@ av  avmedia\source\win	    	nmake	-	all	av_win	            									NULL
- av	avmedia\source\java			nmake	-	all	av_java	            									NULL
- av	avmedia\source\xine			nmake	-	all	av_xine	            									NULL
- av	avmedia\source\quicktime	nmake	-	all	av_quicktime											NULL
--av	avmedia\util				nmake	-	all	av_util av_viewer av_framework av_win av_java av_quicktime av_xine	NULL
-+av	avmedia\source\gstreamer		nmake	-	all	av_gstreamer           									NULL
-+av	avmedia\util				nmake	-	all	av_util av_viewer av_framework av_win av_java av_quicktime av_xine av_gstreamer	NULL
-diff --git avmedia/source/inc/mediamisc.hxx avmedia/source/inc/mediamisc.hxx
-index db5a72d..cc4f4ca 100644
---- avmedia/source/inc/mediamisc.hxx
-+++ avmedia/source/inc/mediamisc.hxx
-@@ -29,6 +29,9 @@ class ResMgr;
- 
- #define AVMEDIA_RESID( nId ) ResId( nId, * ::avmedia::GetResMgr() )
- 
-+#ifdef GSTREAMER
-+#define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.media.Manager_GStreamer"
-+#else
- #ifdef WNT 
- #define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.media.Manager_DirectX"
- #else
-@@ -38,6 +41,7 @@ class ResMgr;
- #define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.media.Manager_Java"
- #endif
- #endif
-+#endif
-  
- namespace avmedia
- {
-diff --git avmedia/source/viewer/mediawindow_impl.cxx avmedia/source/viewer/mediawindow_impl.cxx
-index 24d17ab..4b006af 100644
---- avmedia/source/viewer/mediawindow_impl.cxx
-+++ avmedia/source/viewer/mediawindow_impl.cxx
-@@ -36,6 +36,11 @@
- #include <osl/mutex.hxx>
- #include <tools/time.hxx>
- #include <vcl/svapp.hxx>
-+#ifdef UNX
-+#ifndef _SV_SYSDATA_HXX
-+#include <vcl/sysdata.hxx>
-+#endif
-+#endif
- 
- #ifndef _COM_SUN_STAR_AWT_SYSTEMPOINTER_HDL_
- #include <com/sun/star/awt/SystemPointer.hdl>
-@@ -94,7 +99,11 @@ void  MediaWindowControl::execute( const MediaItem& rItem )
- // --------------------
- 
- MediaChildWindow::MediaChildWindow( Window* pParent ) :
-+#ifdef GSTREAMER
-+    SystemChildWindow( pParent, WB_CLIPCHILDREN )
-+#else
-     JavaChildWindow( pParent, WB_CLIPCHILDREN )
-+#endif
- {
- }
- 
-@@ -111,7 +120,11 @@ void MediaChildWindow::MouseMove( const MouseEvent& rMEvt )
-     const MouseEvent aTransformedEvent( GetParent()->ScreenToOutputPixel( OutputToScreenPixel( rMEvt.GetPosPixel() ) ),
-                                           rMEvt.GetClicks(), rMEvt.GetMode(), rMEvt.GetButtons(), rMEvt.GetModifier() );
-     
-+#ifdef GSTREAMER
-+    SystemChildWindow::MouseMove( rMEvt );
-+#else
-     JavaChildWindow::MouseMove( rMEvt );
-+#endif
-     GetParent()->MouseMove( aTransformedEvent );
- }
- 
-@@ -122,7 +135,11 @@ void MediaChildWindow::MouseButtonDown( const MouseEvent& rMEvt )
-     const MouseEvent aTransformedEvent( GetParent()->ScreenToOutputPixel( OutputToScreenPixel( rMEvt.GetPosPixel() ) ),
-                                           rMEvt.GetClicks(), rMEvt.GetMode(), rMEvt.GetButtons(), rMEvt.GetModifier() );
-     
-+#ifdef GSTREAMER
-+    SystemChildWindow::MouseButtonDown( rMEvt );
-+#else
-     JavaChildWindow::MouseButtonDown( rMEvt );
-+#endif
-     GetParent()->MouseButtonDown( aTransformedEvent );
- }
- 
-@@ -132,8 +149,12 @@ void MediaChildWindow::MouseButtonUp( const MouseEvent& rMEvt )
- {
-     const MouseEvent aTransformedEvent( GetParent()->ScreenToOutputPixel( OutputToScreenPixel( rMEvt.GetPosPixel() ) ),
-                                           rMEvt.GetClicks(), rMEvt.GetMode(), rMEvt.GetButtons(), rMEvt.GetModifier() );
--    
-+
-+#ifdef GSTREAMER
-+    SystemChildWindow::MouseButtonUp( rMEvt );
-+#else
-     JavaChildWindow::MouseButtonUp( rMEvt );
-+#endif
-     GetParent()->MouseButtonUp( aTransformedEvent );
- }
- 
-@@ -141,7 +162,11 @@ void MediaChildWindow::MouseButtonUp( const MouseEvent& rMEvt )
- 
- void MediaChildWindow::KeyInput( const KeyEvent& rKEvt )
- {
-+#ifdef GSTREAMER
-+    SystemChildWindow::KeyInput( rKEvt );
-+#else
-     JavaChildWindow::KeyInput( rKEvt );
-+#endif
-     GetParent()->KeyInput( rKEvt );
- }
- 
-@@ -149,7 +174,11 @@ void MediaChildWindow::KeyInput( const KeyEvent& rKEvt )
- 
- void MediaChildWindow::KeyUp( const KeyEvent& rKEvt )
- {
-+#ifdef GSTREAMER
-+    SystemChildWindow::KeyUp( rKEvt );
-+#else
-     JavaChildWindow::KeyUp( rKEvt );
-+#endif
-     GetParent()->KeyUp( rKEvt );
- }
- 
-@@ -160,7 +189,11 @@ void MediaChildWindow::Command( const CommandEvent& rCEvt )
-     const CommandEvent aTransformedEvent( GetParent()->ScreenToOutputPixel( OutputToScreenPixel( rCEvt.GetMousePosPixel() ) ),
-                                             rCEvt.GetCommand(), rCEvt.IsMouseEvent(), rCEvt.GetData() );
-     
-+#ifdef GSTREAMER
-+    SystemChildWindow::Command( rCEvt );
-+#else
-     JavaChildWindow::Command( rCEvt );
-+#endif
-     GetParent()->Command( aTransformedEvent );
- }
- 
-@@ -229,18 +262,31 @@ void MediaWindowImpl::onURLChanged()
- {
-     if( getPlayer().is() )
-     {
--        uno::Sequence< uno::Any >              aArgs( 2 );
-+        uno::Sequence< uno::Any >              aArgs( 3 );
-         uno::Reference< media::XPlayerWindow > xPlayerWindow;
-         const Point                            aPoint;
-         const Size					           aSize( maChildWindow.GetSizePixel() );
-+#ifndef GSTREAMER
-         const sal_IntPtr                       nWndHandle = static_cast< sal_IntPtr >( maChildWindow.getParentWindowHandleForJava() );
-+#else
-+        const sal_Int32                        nWndHandle = 0;
-+#endif
-        
-         aArgs[ 0 ] = uno::makeAny( nWndHandle );
-         aArgs[ 1 ] = uno::makeAny( awt::Rectangle( aPoint.X(), aPoint.Y(), aSize.Width(), aSize.Height() ) );
-+#ifdef GSTREAMER
-+                const SystemEnvData *pSystemData = maChildWindow.GetSystemData();
-+                OSL_TRACE( "MediaWindowImpl::onURLChanged xwindow id: %ld", pSystemData->aWindow );
-+                aArgs[ 2 ] = uno::makeAny( pSystemData->aWindow );
-+#endif
-         
-         try
-         {
-+#ifdef GSTREAMER
-+            if( pSystemData->aWindow != 0 )
-+#else
-             if( nWndHandle != 0 )
-+#endif

... etc. - the rest is truncated


More information about the ooo-build-commit mailing list