diff --git a/multimedia/gecko-mediaplayer/README b/multimedia/gecko-mediaplayer/README index b0bcc7ac1c..05b4abd714 100644 --- a/multimedia/gecko-mediaplayer/README +++ b/multimedia/gecko-mediaplayer/README @@ -2,18 +2,12 @@ Gecko Mediaplayer is the modern replacement for the mplayerplug-in application. It is a browser plugin that uses GNOME MPlayer to play media in a browser. -It should work with all browsers (including Chrome) on Unix-ish systems +It should work with most browsers (not Chrome) on Unix-ish systems (Linux, BSD, Solaris) and uses the NS4 API (Mozilla, Firefox, Opera, etc.). -Either dconf or gconf is required for the program to save settings. They -are no longer stored in a .conf file. If you plan to use gconf pass - GCONF=YES -to the script. +If you plan on using this plugin for Apple QuickTime Trailers and you do not +want the plugin to wait until the cache is full before playing, then run this +script with: + FULLCACHE=NO -xulrunner (at SBo) or seamonkey (included in Slackware) is required to -build it. - -If you choose to build against seamonkey, note: Due to some missing -seamonkey headers in the current seamonkey package, seamonkey 2.0x from -Slackware 13.1 must be installed for gecko-mediaplayer to build and run -properly. +Waiting for the cache to fill is thought to be more reliable; YMMV. diff --git a/multimedia/gecko-mediaplayer/gecko-mediaplayer-fixes.diff b/multimedia/gecko-mediaplayer/gecko-mediaplayer-fixes.diff deleted file mode 100644 index 2fa8a0ca8a..0000000000 --- a/multimedia/gecko-mediaplayer/gecko-mediaplayer-fixes.diff +++ /dev/null @@ -1,122 +0,0 @@ -diff -ru gecko-mediaplayer-1.0.4-orig/ChangeLog gecko-mediaplayer-1.0.4/ChangeLog ---- gecko-mediaplayer-1.0.4-orig/ChangeLog 2011-07-01 12:40:50.000000000 -0400 -+++ gecko-mediaplayer-1.0.4/ChangeLog 2011-07-09 20:58:47.000000000 -0400 -@@ -1,3 +1,6 @@ -+Development -+ Improvements to the apple.com/trailers fix, caching now works properly -+ Fix regression at apple.com/trailers, side effect of fully caching the file for now - 1.0.4 - Fix problem where file is downloaded before gnome-mplayer is started (locally cached) - Added Portuguese translation -diff -ru gecko-mediaplayer-1.0.4-orig/src/memmem_compat.cpp gecko-mediaplayer-1.0.4/src/memmem_compat.cpp ---- gecko-mediaplayer-1.0.4-orig/src/memmem_compat.cpp 2011-06-06 17:47:44.000000000 -0400 -+++ gecko-mediaplayer-1.0.4/src/memmem_compat.cpp 2011-07-09 20:58:24.000000000 -0400 -@@ -14,7 +14,7 @@ - - You should have received a copy of the GNU General Public License - along with this file; if not, write to the Free Software -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, -+ Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, - USA. */ - - -diff -ru gecko-mediaplayer-1.0.4-orig/src/plugin.cpp gecko-mediaplayer-1.0.4/src/plugin.cpp ---- gecko-mediaplayer-1.0.4-orig/src/plugin.cpp 2011-06-20 11:00:33.000000000 -0400 -+++ gecko-mediaplayer-1.0.4/src/plugin.cpp 2011-07-09 20:57:50.000000000 -0400 -@@ -1320,7 +1320,7 @@ - ListItem *item = (ListItem *) clientp; - gdouble percent, rate; - gchar *text; -- gboolean ok_to_play; -+ gboolean ok_to_play = FALSE; - gint id; - gboolean ready; - gboolean newwindow; -@@ -1364,8 +1364,11 @@ - rate); - } - send_signal_with_string(plugin, item, "SetProgressText", text); -- if (!item->opened) -- send_signal_with_string(plugin, item, "SetURL", item->src); -+ if (!item->opened) { -+ //open_location (plugin, item, TRUE); -+ //item->opened = TRUE; -+ //send_signal_with_string(plugin, item, "SetURL", item->src); -+ } - if (plugin->post_dom_events && plugin->id != NULL) { - postDOMEvent(plugin->mInstance, plugin->id, "qt_progress"); - postDOMEvent(plugin->mInstance, plugin->id, "qt_durationchange"); -@@ -1376,6 +1379,7 @@ - item->lastsize = item->localsize; - } - } -+ - if (!item->opened) { - if ((item->localsize >= (plugin->cache_size * 1024)) && (percent >= 0.2)) { - printf("Setting to play because %i > %i\n", item->localsize, -@@ -1391,7 +1395,7 @@ - if (ok_to_play == FALSE) { - if (item->bitrate == 0 && item->bitrate_requests < 5 - && ((gint) (percent * 100) > item->bitrate_requests)) { -- item->bitrate = request_bitrate(plugin, item, item->local); -+ //item->bitrate = request_bitrate(plugin, item, item->local); - item->bitrate_requests++; - } - if (item->bitrate > 0) { -@@ -1407,6 +1411,7 @@ - } - - } -+ - // if not opened, over cache level and not an href target then try and open it - if ((!item->opened) && ok_to_play == TRUE) { - id = item->controlid; -@@ -1418,6 +1423,7 @@ - if (!item->streaming) { - printf("in progress_callback\n"); - plugin->playlist = list_parse_qt(plugin->playlist, item); -+ plugin->playlist = list_parse_qt2(plugin->playlist, item); - plugin->playlist = list_parse_asx(plugin->playlist, item); - plugin->playlist = list_parse_qml(plugin->playlist, item); - plugin->playlist = list_parse_ram(plugin->playlist, item); -@@ -1456,6 +1462,7 @@ - } - g_free(path); - } -+ - - } - -@@ -1493,13 +1500,14 @@ - - } - fclose(local); -- printf("fetched %s to %s\n", item->src, item->local); -+ printf("fetched %s to %s opened = %i\n", item->src, item->local, item->opened); -+ send_signal_with_double(plugin, item, "SetCachePercent", 1.0); - send_signal_with_double(plugin, item, "SetCachePercent", 0.0); - item->retrieved = TRUE; - } - - -- if ((!item->opened)) { -+ if (!item->opened) { - id = item->controlid; - path = g_strdup(item->path); - ready = item->playerready; -@@ -1509,13 +1517,14 @@ - if (!item->streaming) { - printf("in CURLGetURLNotify\n"); - plugin->playlist = list_parse_qt(plugin->playlist, item); -+ plugin->playlist = list_parse_qt2(plugin->playlist, item); - plugin->playlist = list_parse_asx(plugin->playlist, item); - plugin->playlist = list_parse_qml(plugin->playlist, item); - plugin->playlist = list_parse_ram(plugin->playlist, item); - } - // printf("item->play = %i\n", item->play); - // printf("item->src = %i\n", item->src); -- // printf("calling open_location from Write\n"); -+ // printf("calling open_location from CURLGetURLNotify\n"); - if (item->play) { - send_signal_with_integer(plugin, item, "SetGUIState", PLAYING); - open_location(plugin, item, TRUE); diff --git a/multimedia/gecko-mediaplayer/gecko-mediaplayer.SlackBuild b/multimedia/gecko-mediaplayer/gecko-mediaplayer.SlackBuild index f73ad7ce44..39e19839cd 100644 --- a/multimedia/gecko-mediaplayer/gecko-mediaplayer.SlackBuild +++ b/multimedia/gecko-mediaplayer/gecko-mediaplayer.SlackBuild @@ -4,8 +4,8 @@ # Written by Phillip Warner PRGNAM=gecko-mediaplayer -VERSION=${VERSION:-1.0.4} -BUILD=${BUILD:-2} +VERSION=${VERSION:-1.0.6} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -21,8 +21,11 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -# Assume we're using dconf unless otherwise specified -GCONF=${GCONF:-NO} +# By default wait for a full cache before playing an Apple QuickTime Trailer. +# Setting NO here will patch the plugin to revert to the old behavior of +# playing an Apple Trailer after it is partially cached +# YMMV - Potentially could cause the plugin to halt/crash +FULLCACHE=${FULLCACHE:-YES} if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" @@ -53,14 +56,8 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 \ -o -perm 400 \) -exec chmod 644 {} \; -# Misc fixes that did not make it into 1.0.4 -patch -p1 < $CWD/gecko-mediaplayer-fixes.diff - -# If GCONF=YES above, then enable gconf; otherwise, disable it. -if [ "$GCONF" = "YES" ]; then - do_gconf="with" - else - do_gconf="without" +if [ "$FULLCACHE" = "NO" ]; then + patch -p1 < $CWD/plugin.cpp.patch fi CFLAGS="$SLKCFLAGS" \ @@ -70,7 +67,6 @@ CXXFLAGS="$SLKCFLAGS" \ --libdir=/usr/lib${LIBDIRSUFFIX} \ --docdir=/usr/doc/$PRGNAM-$VERSION \ --disable-schemas-install \ - --${do_gconf}-gconf \ --build=$ARCH-slackware-linux make libdir=/usr/lib${LIBDIRSUFFIX} force_arch="$ARCH" diff --git a/multimedia/gecko-mediaplayer/gecko-mediaplayer.info b/multimedia/gecko-mediaplayer/gecko-mediaplayer.info index bed463df69..8a90ca1006 100644 --- a/multimedia/gecko-mediaplayer/gecko-mediaplayer.info +++ b/multimedia/gecko-mediaplayer/gecko-mediaplayer.info @@ -1,8 +1,8 @@ PRGNAM="gecko-mediaplayer" -VERSION="1.0.4" +VERSION="1.0.6" HOMEPAGE="http://sites.google.com/site/kdekorte2/gecko-mediaplayer" -DOWNLOAD="http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-1.0.4.tar.gz" -MD5SUM="7bb7665f8a1e6832907d052863e8f7aa" +DOWNLOAD="http://gecko-mediaplayer.googlecode.com/files/gecko-mediaplayer-1.0.6.tar.gz" +MD5SUM="7675c8622c47ff8ccd22b685c48635f8" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="gnome-mplayer" diff --git a/multimedia/gecko-mediaplayer/plugin.cpp.patch b/multimedia/gecko-mediaplayer/plugin.cpp.patch new file mode 100644 index 0000000000..f01a1d9f38 --- /dev/null +++ b/multimedia/gecko-mediaplayer/plugin.cpp.patch @@ -0,0 +1,24 @@ +diff -Naur gecko-mediaplayer-1.0.6-orig/src/plugin.cpp gecko-mediaplayer-1.0.6/src/plugin.cpp +--- gecko-mediaplayer-1.0.6-orig/src/plugin.cpp 2012-03-21 12:23:46.000000000 -0400 ++++ gecko-mediaplayer-1.0.6/src/plugin.cpp 2012-08-11 22:54:14.000000000 -0400 +@@ -1391,7 +1391,8 @@ + } + } + // Disable playing of partially cached apple.com files, mplayer seems to crash on these files +- /* ++ // Bring this Back in ++ + if (!item->opened) { + if ((item->localsize >= (plugin->cache_size * 1024)) && (percent >= 0.2)) { + //printf("Setting to play because %i > %i\n", item->localsize, +@@ -1423,10 +1424,6 @@ + } + + } +- */ +- +- // try downloading entire file +- ok_to_play = FALSE; + + // if not opened, over cache level and not an href target then try and open it + if ((!item->opened) && ok_to_play == TRUE) { diff --git a/multimedia/gecko-mediaplayer/slack-desc b/multimedia/gecko-mediaplayer/slack-desc index c2ea3c7b82..ea92040fcf 100644 --- a/multimedia/gecko-mediaplayer/slack-desc +++ b/multimedia/gecko-mediaplayer/slack-desc @@ -7,9 +7,9 @@ |-----handy-ruler------------------------------------------------------| gecko-mediaplayer: gecko-mediaplayer (Browser media plugin) -gecko-mediaplayer: +gecko-mediaplayer: gecko-mediaplayer: Gecko Mediaplayer is the modern replacement for mplayerplug-in. -gecko-mediaplayer: It is a browser plugin that uses GNOME MPlayer to play media in a +gecko-mediaplayer: It is a browser plugin that uses GNOME MPlayer to play media in a gecko-mediaplayer: browser. gecko-mediaplayer: gecko-mediaplayer: Homepage: http://sites.google.com/site/kdekorte2/gecko-mediaplayer