aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/llmedia/llmediaimplgstreamer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'linden/indra/llmedia/llmediaimplgstreamer.cpp')
-rw-r--r--linden/indra/llmedia/llmediaimplgstreamer.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/linden/indra/llmedia/llmediaimplgstreamer.cpp b/linden/indra/llmedia/llmediaimplgstreamer.cpp
index 82b1096..8cbfb60 100644
--- a/linden/indra/llmedia/llmediaimplgstreamer.cpp
+++ b/linden/indra/llmedia/llmediaimplgstreamer.cpp
@@ -255,6 +255,46 @@ void LLMediaImplGStreamer::set_gst_plugin_path()
255} 255}
256 256
257 257
258void LLMediaImplGStreamer::gstreamer_log(GstDebugCategory *category,
259 GstDebugLevel level,
260 const gchar *file,
261 const gchar *function,
262 gint line,
263 GObject *object,
264 GstDebugMessage *message,
265 gpointer data)
266{
267 std::stringstream log(std::stringstream::out);
268
269 // Log format example:
270 //
271 // GST_ELEMENT_PADS: removing pad 'sink' (in gstelement.c:757:gst_element_remove_pad)
272 //
273 log << gst_debug_category_get_name( category ) << ": "
274 << gst_debug_message_get(message) << " "
275 << "(in " << file << ":" << line << ":" << function << ")";
276
277 switch( level )
278 {
279 case GST_LEVEL_ERROR:
280 LL_ERRS("MediaImpl") << log.str() << LL_ENDL;
281 break;
282 case GST_LEVEL_WARNING:
283 LL_WARNS("MediaImpl") << log.str() << LL_ENDL;
284 break;
285 case GST_LEVEL_DEBUG:
286 LL_DEBUGS("MediaImpl") << log.str() << LL_ENDL;
287 break;
288 case GST_LEVEL_INFO:
289 LL_INFOS("MediaImpl") << log.str() << LL_ENDL;
290 break;
291 default:
292 // Do nothing.
293 break;
294 }
295}
296
297
258bool LLMediaImplGStreamer::closedown() 298bool LLMediaImplGStreamer::closedown()
259{ 299{
260 return true; 300 return true;