From 818e970b3efe65f6e471d071ae5f01603f61da79 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Sun, 13 Jun 2010 12:36:02 +0100 Subject: SNOW-541 PARTIAL GSTREAMER fail to load (slplugin?) Robustify the plugin a bunch more, and turn off a dodgy-and-unused visualization feature. (transplanted from 43273f751dac21d53dba83a90d7f9e057865f789) --- .../gstreamer010/media_plugin_gstreamer010.cpp | 28 ++++++++++++++++------ 1 file changed, 21 insertions(+), 7 deletions(-) (limited to 'indra/media_plugins') diff --git a/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp b/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp index 033c4ba2f3..e6d2ad3edc 100644 --- a/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp +++ b/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp @@ -544,8 +544,12 @@ MediaPluginGStreamer010::pause() { DEBUGMSG("pausing media..."); // todo: error-check this? - llgst_element_set_state(mPlaybin, GST_STATE_PAUSED); - return true; + if (mDoneInit && mPlaybin) + { + llgst_element_set_state(mPlaybin, GST_STATE_PAUSED); + return true; + } + return false; } bool @@ -553,8 +557,12 @@ MediaPluginGStreamer010::stop() { DEBUGMSG("stopping media..."); // todo: error-check this? - llgst_element_set_state(mPlaybin, GST_STATE_READY); - return true; + if (mDoneInit && mPlaybin) + { + llgst_element_set_state(mPlaybin, GST_STATE_READY); + return true; + } + return false; } bool @@ -564,8 +572,12 @@ MediaPluginGStreamer010::play(double rate) DEBUGMSG("playing media... rate=%f", rate); // todo: error-check this? - llgst_element_set_state(mPlaybin, GST_STATE_PLAYING); - return true; + if (mDoneInit && mPlaybin) + { + llgst_element_set_state(mPlaybin, GST_STATE_PLAYING); + return true; + } + return false; } bool @@ -608,7 +620,7 @@ bool MediaPluginGStreamer010::getTimePos(double &sec_out) { bool got_position = false; - if (mPlaybin) + if (mDoneInit && mPlaybin) { gint64 pos; GstFormat timefmt = GST_FORMAT_TIME; @@ -688,6 +700,7 @@ MediaPluginGStreamer010::load() this); llgst_object_unref (bus); +#if 0 // not quite stable/correct yet // get a visualizer element (bonus feature!) char* vis_name = getenv("LL_GST_VIS_NAME"); if (!vis_name || @@ -714,6 +727,7 @@ MediaPluginGStreamer010::load() } } } +#endif if (NULL == getenv("LL_GSTREAMER_EXTERNAL")) { // instantiate a custom video sink -- cgit v1.2.3 From 90e3d83a5cb35e98a02a3017dd79ebc272bbfe85 Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Tue, 21 Sep 2010 13:26:52 -0400 Subject: Fix for build failures - disabling tcmalloc for now --- indra/media_plugins/CMakeLists.txt | 0 indra/media_plugins/base/CMakeLists.txt | 0 indra/media_plugins/base/media_plugin_base.cpp | 0 indra/media_plugins/base/media_plugin_base.exp | 0 indra/media_plugins/base/media_plugin_base.h | 0 indra/media_plugins/example/CMakeLists.txt | 0 indra/media_plugins/example/media_plugin_example.cpp | 0 indra/media_plugins/gstreamer010/CMakeLists.txt | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamer.h | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_raw.inc | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_rawv.inc | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h | 0 indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp | 0 indra/media_plugins/quicktime/CMakeLists.txt | 0 indra/media_plugins/quicktime/media_plugin_quicktime.cpp | 0 indra/media_plugins/webkit/CMakeLists.txt | 0 indra/media_plugins/webkit/dummy_volume_catcher.cpp | 0 indra/media_plugins/webkit/linux_volume_catcher.cpp | 0 indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc | 0 indra/media_plugins/webkit/linux_volume_catcher_paglib_syms.inc | 0 indra/media_plugins/webkit/mac_volume_catcher.cpp | 0 indra/media_plugins/webkit/media_plugin_webkit.cpp | 0 indra/media_plugins/webkit/volume_catcher.h | 0 indra/media_plugins/webkit/windows_volume_catcher.cpp | 0 indra/media_plugins/winmmshim/CMakeLists.txt | 0 indra/media_plugins/winmmshim/forwarding_api.cpp | 0 indra/media_plugins/winmmshim/forwarding_api.h | 0 indra/media_plugins/winmmshim/winmm.def | 0 indra/media_plugins/winmmshim/winmm_shim.cpp | 0 33 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 indra/media_plugins/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/base/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/base/media_plugin_base.cpp mode change 100644 => 100755 indra/media_plugins/base/media_plugin_base.exp mode change 100644 => 100755 indra/media_plugins/base/media_plugin_base.h mode change 100644 => 100755 indra/media_plugins/example/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/example/media_plugin_example.cpp mode change 100644 => 100755 indra/media_plugins/gstreamer010/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_raw.inc mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_rawv.inc mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp mode change 100644 => 100755 indra/media_plugins/quicktime/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/quicktime/media_plugin_quicktime.cpp mode change 100644 => 100755 indra/media_plugins/webkit/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/webkit/dummy_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/webkit/linux_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc mode change 100644 => 100755 indra/media_plugins/webkit/linux_volume_catcher_paglib_syms.inc mode change 100644 => 100755 indra/media_plugins/webkit/mac_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/webkit/media_plugin_webkit.cpp mode change 100644 => 100755 indra/media_plugins/webkit/volume_catcher.h mode change 100644 => 100755 indra/media_plugins/webkit/windows_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/winmmshim/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/winmmshim/forwarding_api.cpp mode change 100644 => 100755 indra/media_plugins/winmmshim/forwarding_api.h mode change 100644 => 100755 indra/media_plugins/winmmshim/winmm.def mode change 100644 => 100755 indra/media_plugins/winmmshim/winmm_shim.cpp (limited to 'indra/media_plugins') diff --git a/indra/media_plugins/CMakeLists.txt b/indra/media_plugins/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/CMakeLists.txt b/indra/media_plugins/base/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/media_plugin_base.cpp b/indra/media_plugins/base/media_plugin_base.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/media_plugin_base.exp b/indra/media_plugins/base/media_plugin_base.exp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/media_plugin_base.h b/indra/media_plugins/base/media_plugin_base.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/example/CMakeLists.txt b/indra/media_plugins/example/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/example/media_plugin_example.cpp b/indra/media_plugins/example/media_plugin_example.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/CMakeLists.txt b/indra/media_plugins/gstreamer010/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamer.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_raw.inc b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_raw.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_rawv.inc b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_rawv.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp b/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp b/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/quicktime/CMakeLists.txt b/indra/media_plugins/quicktime/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/quicktime/media_plugin_quicktime.cpp b/indra/media_plugins/quicktime/media_plugin_quicktime.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/CMakeLists.txt b/indra/media_plugins/webkit/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/dummy_volume_catcher.cpp b/indra/media_plugins/webkit/dummy_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/linux_volume_catcher.cpp b/indra/media_plugins/webkit/linux_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc b/indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/linux_volume_catcher_paglib_syms.inc b/indra/media_plugins/webkit/linux_volume_catcher_paglib_syms.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/mac_volume_catcher.cpp b/indra/media_plugins/webkit/mac_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/media_plugin_webkit.cpp b/indra/media_plugins/webkit/media_plugin_webkit.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/volume_catcher.h b/indra/media_plugins/webkit/volume_catcher.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/windows_volume_catcher.cpp b/indra/media_plugins/webkit/windows_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/CMakeLists.txt b/indra/media_plugins/winmmshim/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/forwarding_api.cpp b/indra/media_plugins/winmmshim/forwarding_api.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/forwarding_api.h b/indra/media_plugins/winmmshim/forwarding_api.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/winmm.def b/indra/media_plugins/winmmshim/winmm.def old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/winmm_shim.cpp b/indra/media_plugins/winmmshim/winmm_shim.cpp old mode 100644 new mode 100755 -- cgit v1.2.3