diff options
Diffstat (limited to 'linden/indra/llmedia/llmediaimplgstreamer.h')
-rw-r--r-- | linden/indra/llmedia/llmediaimplgstreamer.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/linden/indra/llmedia/llmediaimplgstreamer.h b/linden/indra/llmedia/llmediaimplgstreamer.h index 2918416..32e6bd1 100644 --- a/linden/indra/llmedia/llmediaimplgstreamer.h +++ b/linden/indra/llmedia/llmediaimplgstreamer.h | |||
@@ -48,6 +48,7 @@ extern "C" { | |||
48 | } | 48 | } |
49 | 49 | ||
50 | #include "llmediaimplgstreamervidplug.h" | 50 | #include "llmediaimplgstreamervidplug.h" |
51 | #include "llgstplaythread.h" | ||
51 | 52 | ||
52 | class LLMediaManagerData; | 53 | class LLMediaManagerData; |
53 | class LLMediaImplMaker; | 54 | class LLMediaImplMaker; |
@@ -69,6 +70,23 @@ class LLMediaImplGStreamer: | |||
69 | // Sets GST_PLUGIN_PATH env var for GStreamer. | 70 | // Sets GST_PLUGIN_PATH env var for GStreamer. |
70 | static void set_gst_plugin_path(); | 71 | static void set_gst_plugin_path(); |
71 | 72 | ||
73 | /* virtual */ bool setDebugLevel( LLMediaBase::EDebugLevel level ); | ||
74 | |||
75 | // Function given to GStreamer for handling debug messages | ||
76 | static void gstreamer_log(GstDebugCategory *category, | ||
77 | GstDebugLevel level, | ||
78 | const gchar *file, | ||
79 | const gchar *function, | ||
80 | gint line, | ||
81 | GObject *object, | ||
82 | GstDebugMessage *message, | ||
83 | gpointer data) | ||
84 | #if __GNUC__ | ||
85 | // recommended by the gstreamer docs | ||
86 | G_GNUC_NO_INSTRUMENT | ||
87 | #endif | ||
88 | ; | ||
89 | |||
72 | /* virtual */ std::string getVersion(); | 90 | /* virtual */ std::string getVersion(); |
73 | /* virtual */ bool navigateTo( const std::string url ); | 91 | /* virtual */ bool navigateTo( const std::string url ); |
74 | /* virtual */ bool updateMedia(); | 92 | /* virtual */ bool updateMedia(); |
@@ -79,6 +97,9 @@ class LLMediaImplGStreamer: | |||
79 | /* virtual */ bool seek( double time ); | 97 | /* virtual */ bool seek( double time ); |
80 | /* virtual */ bool setVolume( float volume ); | 98 | /* virtual */ bool setVolume( float volume ); |
81 | 99 | ||
100 | void startPlay(); | ||
101 | |||
102 | |||
82 | LLMediaEmitter< LLMediaObserver > getEventEmitter() const {return mEventEmitter;}; | 103 | LLMediaEmitter< LLMediaObserver > getEventEmitter() const {return mEventEmitter;}; |
83 | 104 | ||
84 | private: | 105 | private: |
@@ -104,6 +125,8 @@ class LLMediaImplGStreamer: | |||
104 | GstSLVideo *mVideoSink; | 125 | GstSLVideo *mVideoSink; |
105 | GstState mState; | 126 | GstState mState; |
106 | GstState getState() const { return mState; } | 127 | GstState getState() const { return mState; } |
128 | |||
129 | LLGstPlayThread *mPlayThread; | ||
107 | }; | 130 | }; |
108 | 131 | ||
109 | class LLMediaImplGStreamerMaker : public LLMediaImplMaker | 132 | class LLMediaImplGStreamerMaker : public LLMediaImplMaker |