gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] /srv/bzr/gnash/trunk r12368: Add MediaHandler rc directiv


From: Sandro Santilli
Subject: [Gnash-commit] /srv/bzr/gnash/trunk r12368: Add MediaHandler rc directive, thanks to John Gilmore. Add test for MediaHandler and Renderer rc directives and drop obsoleted XVideo from testcase
Date: Thu, 12 Aug 2010 23:06:17 +0200
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 12368
committer: Sandro Santilli <address@hidden>
branch nick: trunk
timestamp: Thu 2010-08-12 23:06:17 +0200
message:
  Add MediaHandler rc directive, thanks to John Gilmore. Add test for 
MediaHandler and Renderer rc directives and drop obsoleted XVideo from testcase
modified:
  libbase/rc.cpp
  libbase/rc.h
  libmedia/MediaHandler.h
  testsuite/gnashrc.in
  testsuite/libbase.all/TCXXRc.cpp
  testsuite/libbase.all/gnashrc-local.in
  testsuite/libbase.all/gnashrc.in
  utilities/processor.cpp
=== modified file 'libbase/rc.cpp'
--- a/libbase/rc.cpp    2010-07-06 10:59:44 +0000
+++ b/libbase/rc.cpp    2010-08-12 21:06:17 +0000
@@ -500,6 +500,11 @@
                 continue;
             }
             
+            if(noCaseCompare(variable, "MediaHandler")) {
+                _mediahandler = value;
+                continue;
+            }
+            
             if (noCaseCompare(variable, "CertDir") ) {
                 expandPath(value);
                 _certdir = value;

=== modified file 'libbase/rc.h'
--- a/libbase/rc.h      2010-05-04 20:58:55 +0000
+++ b/libbase/rc.h      2010-08-12 21:06:17 +0000
@@ -1,3 +1,4 @@
+// rc.h:  "Run Command" configuration file declarations, for Gnash.
 // 
 //   Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Free Software
 //   Foundation, Inc
@@ -246,12 +247,18 @@
     // Set the name of the hardware acclerator to use for video
     void setHWAccel(const std::string &x) { _hwaccel = x; }
 
-    // Get the name of the hardware acclerator to use for video
+    // Get the name of the renderer to draw the display
     const std::string& getRenderer() const { return _renderer; }
 
-    // Set the name of the hardware acclerator to use for video
+    // Set the name of the renderer to draw the display
     void setRenderer(const std::string& x) { _renderer = x; }
 
+    // Get the name of the media handler to use for video/audio
+    const std::string& getMediaHandler() const { return _mediahandler; }
+
+    // Set the name of the media handler to use for video/audio
+    void setMediaHandler(const std::string& x) { _mediahandler = x; }
+
     // Get the location of the sandbox for .sol files
     const std::string &getSOLSafeDir() const { return _solsandbox; }
 
@@ -580,15 +587,19 @@
     /// default value is true
     bool _ignoreShowMenu;
 
-    /// Whether to ue HW video decoding support, no value means disabled.
-    /// The only currently supported values are: none, vaapi,  or xv (omap)
-    /// support coming. 
+    /// Whether to use HW video decoding support, no value means disabled.
+    /// The only currently supported values are: none, vaapi, or xv.  omap
+    /// support is coming. 
     std::string _hwaccel;
 
     /// Which renderer backend to use, no value means use the default.
     /// The currently supported values are agg, opengl, or cairo. AGG
     /// being the default.
     std::string _renderer;
+
+    /// Which media player backend to use, no value means use the default.
+    /// The default is set in the MediaFactory initialization table.
+    std::string _mediahandler;
 };
 
 // End of gnash namespace 

=== modified file 'libmedia/MediaHandler.h'
--- a/libmedia/MediaHandler.h   2010-07-20 06:51:24 +0000
+++ b/libmedia/MediaHandler.h   2010-08-12 21:06:17 +0000
@@ -90,7 +90,7 @@
     /// Create a VideoDecoder for decoding what's specified in the VideoInfo
     //
     /// @param info VideoInfo class with all the info needed to decode
-    ///             the sound correctly.
+    ///             the image stream correctly.
     /// @return     Will always return a valid VideoDecoder or throw a
     ///             gnash::MediaException if a fatal error occurs.
     virtual std::auto_ptr<VideoDecoder>

=== modified file 'testsuite/gnashrc.in'
--- a/testsuite/gnashrc.in      2010-02-11 08:53:19 +0000
+++ b/testsuite/gnashrc.in      2010-08-12 21:06:17 +0000
@@ -47,4 +47,10 @@
 # LocalConnection must be enabled for testing.
 set localconnection false
 
+# Use the default Renderer
+set Renderer
+
+# Use the default MediaHandler
+set MediaHandler
+
 # TODO: enable extensions ?

=== modified file 'testsuite/libbase.all/TCXXRc.cpp'
--- a/testsuite/libbase.all/TCXXRc.cpp  2010-03-14 23:13:09 +0000
+++ b/testsuite/libbase.all/TCXXRc.cpp  2010-08-12 21:06:17 +0000
@@ -264,6 +264,42 @@
         }
     }
 
+    if (rc.getURLOpenerFormat() == "lynx %u") {
+        runtest.pass ("getURLOpenerFormat");
+    } else {
+        runtest.fail ("getURLOpenerFormat");
+    }
+
+    if (rc.getSOLSafeDir() == "/tmp/SharedObjects") {
+        runtest.pass ("getSOLSafeDir");
+    } else {
+        runtest.fail ("getSOLSafeDir");
+    }
+
+    if (rc.getSOLReadOnly() == true) {
+        runtest.pass ("getSOLReadOnly");
+    } else {
+        runtest.fail ("getSOLReadOnly");
+    }
+    
+    if (rc.ignoreShowMenu() == false) {
+        runtest.pass ("ignoreShowMenu");
+    } else {
+        runtest.fail ("ignoreShowMenu");
+    }
+
+    if ( rc.getRenderer().empty() ) {
+        runtest.pass ("getRenderer gives empty string");
+    } else {
+        runtest.fail ("getRenderer gives " + rc.getRenderer() );
+    }
+
+    if ( rc.getMediaHandler().empty() ) {
+        runtest.pass ("getMediaHandler gives empty string");
+    } else {
+        runtest.fail ("getMediaHandler gives " + rc.getMediaHandler() );
+    }
+
     // Parse a second file
     if (rc.parseFile("gnashrc-local")) {
 
@@ -304,30 +340,18 @@
             }
         }
 
-    }
-
-    if (rc.getURLOpenerFormat() == "lynx %u") {
-        runtest.pass ("getURLOpenerFormat");
-    } else {
-        runtest.fail ("getURLOpenerFormat");
-    }
-
-    if (rc.getSOLSafeDir() == "/tmp/SharedObjects") {
-        runtest.pass ("getSOLSafeDir");
-    } else {
-        runtest.fail ("getSOLSafeDir");
-    }
-
-    if (rc.getSOLReadOnly() == true) {
-        runtest.pass ("getSOLReadOnly");
-    } else {
-        runtest.fail ("getSOLReadOnly");
-    }
-    
-    if (rc.ignoreShowMenu() == false) {
-        runtest.pass ("ignoreShowMenu");
-    } else {
-        runtest.fail ("ignoreShowMenu");
+        if ( rc.getRenderer() == std::string("fakeRenderer") ) {
+            runtest.pass ("getRenderer gives " + rc.getRenderer() );
+        } else {
+            runtest.fail ("getRenderer gives " + rc.getRenderer() );
+        }
+
+        if ( rc.getMediaHandler() == std::string("fakeMediaHandler") ) {
+            runtest.pass ("getMediaHandler gives " + rc.getMediaHandler() );
+        } else {
+            runtest.fail ("getMediaHandler gives " + rc.getMediaHandler() );
+        }
+
     }
 }
 

=== modified file 'testsuite/libbase.all/gnashrc-local.in'
--- a/testsuite/libbase.all/gnashrc-local.in    2009-02-25 02:00:44 +0000
+++ b/testsuite/libbase.all/gnashrc-local.in    2010-08-12 21:06:17 +0000
@@ -7,5 +7,8 @@
 
 append localSandboxPath /tmp/gnash
 
-# Use XVideo
-set XVideo true
+# Use arbitrary renderer
+set Renderer fakeRenderer
+
+# Use arbitrary renderer
+set MediaHandler fakeMediaHandler

=== modified file 'testsuite/libbase.all/gnashrc.in'
--- a/testsuite/libbase.all/gnashrc.in  2010-02-11 08:33:14 +0000
+++ b/testsuite/libbase.all/gnashrc.in  2010-08-12 21:06:17 +0000
@@ -105,3 +105,9 @@
 
 # Stage.showMenu ignore behavior
 set ignoreShowMenu false
+
+# Use default renderer
+set Renderer
+
+# Use default media handler
+set MediaHandler

=== modified file 'utilities/processor.cpp'
--- a/utilities/processor.cpp   2010-07-14 13:43:06 +0000
+++ b/utilities/processor.cpp   2010-08-12 21:06:17 +0000
@@ -353,7 +353,8 @@
     boost::shared_ptr<gnash::media::MediaHandler> mediaHandler;
     boost::shared_ptr<sound::sound_handler> soundHandler;
 
-    mediaHandler.reset(media::MediaFactory::instance().get(""));
+    std::string mh = rcfile.getMediaHandler();
+    mediaHandler.reset(media::MediaFactory::instance().get(mh));
     soundHandler.reset(new sound::NullSoundHandler(mediaHandler.get()));
 
     boost::shared_ptr<StreamProvider> sp(new StreamProvider);


reply via email to

[Prev in Thread] Current Thread [Next in Thread]