summaryrefslogtreecommitdiff
path: root/libgupnp-dlna/metadata-backends/gstreamer-legacy/gupnp-dlna-gst-metadata-extractor.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgupnp-dlna/metadata-backends/gstreamer-legacy/gupnp-dlna-gst-metadata-extractor.c')
-rw-r--r--libgupnp-dlna/metadata-backends/gstreamer-legacy/gupnp-dlna-gst-metadata-extractor.c163
1 files changed, 0 insertions, 163 deletions
diff --git a/libgupnp-dlna/metadata-backends/gstreamer-legacy/gupnp-dlna-gst-metadata-extractor.c b/libgupnp-dlna/metadata-backends/gstreamer-legacy/gupnp-dlna-gst-metadata-extractor.c
deleted file mode 100644
index 436e608..0000000
--- a/libgupnp-dlna/metadata-backends/gstreamer-legacy/gupnp-dlna-gst-metadata-extractor.c
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Copyright (C) 2010 Nokia Corporation.
- * Copyright (C) 2012, 2013 Intel Corporation.
- *
- * Authors: Arun Raghavan <arun.raghavan@collabora.co.uk>
- * Krzesimir Nowak <krnowak@openismus.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include <gst/pbutils/pbutils.h>
-#include "gupnp-dlna-gst-metadata-extractor.h"
-#include "gupnp-dlna-gst-information.h"
-#include "gupnp-dlna-gst-legacy-utils.h"
-
-G_DEFINE_TYPE (GUPnPDLNAGstMetadataExtractor,
- gupnp_dlna_gst_metadata_extractor,
- GUPNP_TYPE_DLNA_METADATA_EXTRACTOR)
-
-struct _GUPnPDLNAGstMetadataExtractorPrivate {
- gpointer placeholder;
-};
-
-static gboolean
-unref_discoverer_in_idle (GstDiscoverer *discoverer)
-{
- if (discoverer)
- g_object_unref (discoverer);
-
- return FALSE;
-}
-
-static void
-gupnp_dlna_discovered_cb (GUPnPDLNAMetadataExtractor *self,
- GstDiscovererInfo *info,
- GError *error,
- gpointer user_data)
-{
- GstDiscoverer *discoverer = GST_DISCOVERER (user_data);
- GUPnPDLNAInformation *gupnp_info = NULL;
-
- if (error)
- gupnp_info = GUPNP_DLNA_INFORMATION
- (gupnp_dlna_gst_information_new_empty_with_uri
- (gst_discoverer_info_get_uri (info)));
- else
- gupnp_info = gupnp_dlna_gst_utils_information_from_discoverer_info
- (info);
- gupnp_dlna_metadata_extractor_emit_done (self,
- gupnp_info,
- error);
- g_object_unref (gupnp_info);
- g_idle_add ((GSourceFunc) unref_discoverer_in_idle, discoverer);
-}
-
-static gboolean
-backend_extract_async (GUPnPDLNAMetadataExtractor *extractor,
- const gchar *uri,
- guint timeout,
- GError **error)
-{
- GError *gst_error = NULL;
- GstClockTime clock_time = GST_MSECOND * timeout;
- GstDiscoverer *discoverer = gst_discoverer_new (clock_time, &gst_error);
-
- if (gst_error) {
- g_propagate_error (error, gst_error);
-
- return FALSE;
- }
-
- g_signal_connect_swapped (discoverer,
- "discovered",
- G_CALLBACK (gupnp_dlna_discovered_cb),
- extractor);
- gst_discoverer_start (discoverer);
-
- return gst_discoverer_discover_uri_async (discoverer,
- uri);
-}
-
-static GUPnPDLNAInformation *
-backend_extract_sync (GUPnPDLNAMetadataExtractor *extractor G_GNUC_UNUSED,
- const gchar *uri,
- guint timeout_in_ms,
- GError **error)
-{
- GError *gst_error = NULL;
- GstClockTime clock_time = GST_MSECOND * timeout_in_ms;
- GstDiscoverer *discoverer = gst_discoverer_new (clock_time, &gst_error);
- GstDiscovererInfo* info;
- GUPnPDLNAInformation *gupnp_info;
-
- if (gst_error) {
- g_propagate_error (error, gst_error);
-
- return NULL;
- }
-
- info = gst_discoverer_discover_uri (discoverer,
- uri,
- &gst_error);
-
- g_object_unref (discoverer);
- if (gst_error) {
- g_propagate_error (error, gst_error);
-
- return NULL;
- }
-
- gupnp_info = GUPNP_DLNA_INFORMATION
- (gupnp_dlna_gst_information_new_from_discoverer_info (uri, info));
- gst_discoverer_info_unref (info);
-
- return gupnp_info;
-}
-
-static void
-gupnp_dlna_gst_metadata_extractor_class_init
- (GUPnPDLNAGstMetadataExtractorClass *gst_extractor_class)
-{
- GUPnPDLNAMetadataExtractorClass *extractor_class =
- GUPNP_DLNA_METADATA_EXTRACTOR_CLASS (gst_extractor_class);
-
- extractor_class->extract_async = backend_extract_async;
- extractor_class->extract_sync = backend_extract_sync;
-
- g_type_class_add_private
- (gst_extractor_class,
- sizeof (GUPnPDLNAGstMetadataExtractorPrivate));
-}
-
-static void
-gupnp_dlna_gst_metadata_extractor_init (GUPnPDLNAGstMetadataExtractor *self)
-{
- GUPnPDLNAGstMetadataExtractorPrivate *priv =
- G_TYPE_INSTANCE_GET_PRIVATE (self,
- GUPNP_TYPE_DLNA_GST_METADATA_EXTRACTOR,
- GUPnPDLNAGstMetadataExtractorPrivate);
-
- self->priv = priv;
-}
-
-GUPnPDLNAGstMetadataExtractor *
-gupnp_dlna_gst_metadata_extractor_new (void)
-{
- return GUPNP_DLNA_GST_METADATA_EXTRACTOR
- (g_object_new (GUPNP_TYPE_DLNA_GST_METADATA_EXTRACTOR,
- NULL));
-}