[totem] backend: Remove visualisation support



commit c0eb01697968c670cb8393c8a481219f01c18f9a
Author: Bastien Nocera <hadess hadess net>
Date:   Mon Apr 7 17:20:31 2014 +0200

    backend: Remove visualisation support
    
    As it's not supported by the front-end.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=727761

 docs/reference/totem-sections.txt |    7 -
 src/backend/bacon-video-widget.c  |  409 +------------------------------------
 src/backend/bacon-video-widget.h  |   26 ---
 src/backend/bvw-test.c            |    1 -
 4 files changed, 4 insertions(+), 439 deletions(-)
---
diff --git a/docs/reference/totem-sections.txt b/docs/reference/totem-sections.txt
index 091f3c6..a33a484 100644
--- a/docs/reference/totem-sections.txt
+++ b/docs/reference/totem-sections.txt
@@ -137,7 +137,6 @@ BvwAudioOutputType
 BvwDVDEvent
 BvwMetadataType
 BvwRotation
-BvwVisualizationQuality
 BvwVideoProperty
 BvwZoomMode
 BvwError
@@ -176,7 +175,6 @@ bacon_video_widget_get_rotation
 bacon_video_widget_set_rotation
 bacon_video_widget_get_show_cursor
 bacon_video_widget_set_show_cursor
-bacon_video_widget_set_show_visualizations
 bacon_video_widget_get_stream_length
 bacon_video_widget_get_subtitles
 bacon_video_widget_get_subtitle
@@ -187,9 +185,6 @@ bacon_video_widget_set_subtitle_font
 bacon_video_widget_set_user_agent
 bacon_video_widget_get_video_property
 bacon_video_widget_set_video_property
-bacon_video_widget_get_visualization_list
-bacon_video_widget_set_visualization
-bacon_video_widget_set_visualization_quality
 bacon_video_widget_get_volume
 bacon_video_widget_set_volume
 bacon_video_widget_get_zoom
@@ -211,7 +206,6 @@ BVW_TYPE_ERROR
 BVW_TYPE_METADATA_TYPE
 BVW_TYPE_ROTATION
 BVW_TYPE_VIDEO_PROPERTY
-BVW_TYPE_VISUALIZATION_QUALITY
 BVW_TYPE_ZOOM_MODE
 bvw_aspect_ratio_get_type
 bvw_audio_output_type_get_type
@@ -220,7 +214,6 @@ bvw_error_get_type
 bvw_metadata_type_get_type
 bvw_rotation_get_type
 bvw_video_property_get_type
-bvw_visualization_quality_get_type
 bvw_zoom_mode_get_type
 bacon_video_widget_error_quark
 bacon_video_widget_get_type
diff --git a/src/backend/bacon-video-widget.c b/src/backend/bacon-video-widget.c
index 7f10d69..5b7421b 100644
--- a/src/backend/bacon-video-widget.c
+++ b/src/backend/bacon-video-widget.c
@@ -150,13 +150,11 @@ enum
   PROP_PLAYING,
   PROP_REFERRER,
   PROP_SEEKABLE,
-  PROP_SHOW_VISUALIZATIONS,
   PROP_USER_AGENT,
   PROP_VOLUME,
   PROP_DOWNLOAD_FILENAME,
   PROP_AUTO_RESIZE,
   PROP_DEINTERLACING,
-  PROP_VISUALIZATION_QUALITY,
   PROP_BRIGHTNESS,
   PROP_CONTRAST,
   PROP_SATURATION,
@@ -226,11 +224,6 @@ struct BaconVideoWidgetPrivate
   GHashTable                  *busy_popup_ht; /* key=reason string, value=gboolean */
 
   /* Visual effects */
-  GList                       *vis_plugins_list;
-  GHashTable                  *vis_plugins_ht;
-  gboolean                     show_vfx;
-  BvwVisualizationQuality      visq;
-  gchar                       *vis_element_name;
   GstElement                  *audio_capsfilter;
   GstElement                  *audio_pitchcontrol;
 
@@ -308,8 +301,6 @@ static void bacon_video_widget_get_property (GObject * object,
 
 static void bacon_video_widget_finalize (GObject * object);
 
-static void setup_vis (BaconVideoWidget * bvw);
-static GList * get_visualization_features (void);
 static void size_changed_cb (GdkScreen *screen, BaconVideoWidget *bvw);
 static void bvw_stop_play_pipeline (BaconVideoWidget * bvw);
 static GError* bvw_error_from_gst_error (BaconVideoWidget *bvw, GstMessage *m);
@@ -667,7 +658,7 @@ bacon_video_widget_realize (GtkWidget * widget)
 static void
 size_changed_cb (GdkScreen *screen, BaconVideoWidget *bvw)
 {
-  setup_vis (bvw);
+  bvw_check_for_cover_pixbuf (bvw);
 }
 
 static void
@@ -682,7 +673,7 @@ set_current_actor (BaconVideoWidget *bvw)
    * If we have a cover image to display, we display it regardless of whether we're
    * doing visualisations. */
   draw_logo = bvw->priv->media_has_audio &&
-      !bvw->priv->media_has_video && (!bvw->priv->show_vfx || bvw->priv->cover_pixbuf);
+      !bvw->priv->media_has_video && bvw->priv->cover_pixbuf;
 
   if (bvw->priv->logo_mode || draw_logo) {
     const GdkPixbuf *pixbuf;
@@ -1113,17 +1104,6 @@ bacon_video_widget_class_init (BaconVideoWidgetClass * klass)
                                                         G_PARAM_STATIC_STRINGS));
 
   /**
-   * BaconVideoWidget:show-visualizations:
-   *
-   * Whether visualisations should be shown for audio-only streams.
-   **/
-  g_object_class_install_property (object_class, PROP_SHOW_VISUALIZATIONS,
-                                   g_param_spec_boolean ("show-visualizations", "Show visualizations?",
-                                                         "Whether visualisations should be shown for 
audio-only streams.", FALSE,
-                                                         G_PARAM_WRITABLE |
-                                                         G_PARAM_STATIC_STRINGS));
-
-  /**
    * BaconVideoWidget:referrer:
    *
    * The HTTP referrer URI.
@@ -1168,18 +1148,6 @@ bacon_video_widget_class_init (BaconVideoWidgetClass * klass)
                                                          G_PARAM_STATIC_STRINGS));
 
   /**
-   * BaconVideoWidget:visualization-quality:
-   *
-   * The size of the visualizations to display when playing audio.
-   **/
-  g_object_class_install_property (object_class, PROP_VISUALIZATION_QUALITY,
-                                   g_param_spec_enum ("visualization-quality", "Visualization quality",
-                                                      "The size of the visualizations to display when 
playing audio.", BVW_TYPE_VISUALIZATION_QUALITY,
-                                                      BVW_VISUALIZATION_SMALL,
-                                                      G_PARAM_READWRITE |
-                                                      G_PARAM_STATIC_STRINGS));
-
-  /**
    * BaconVideoWidget:brightness:
    *
    * The brightness of the video display.
@@ -2840,9 +2808,6 @@ caps_set (GObject * obj,
   gst_caps_unref (caps);
 }
 
-static void get_visualization_size (BaconVideoWidget *bvw,
-                                    int *w, int *h, gint *fps_n, gint *fps_d);
-
 static void
 parse_stream_info (BaconVideoWidget *bvw)
 {
@@ -2864,20 +2829,7 @@ parse_stream_info (BaconVideoWidget *bvw)
       g_signal_emit_by_name (bvw->priv->play, "get-video-pad", i, &videopad);
   }
 
-  bvw->priv->media_has_audio = FALSE;
-  if (n_audio > 0) {
-    bvw->priv->media_has_audio = TRUE;
-    if (!bvw->priv->media_has_video) {
-      gint flags;
-
-      g_object_get (bvw->priv->play, "flags", &flags, NULL);
-      if (bvw->priv->show_vfx && !bvw->priv->cover_pixbuf)
-       flags |= GST_PLAY_FLAG_VIS;
-      else
-       flags &= ~GST_PLAY_FLAG_VIS;
-      g_object_set (bvw->priv->play, "flags", flags, NULL);
-    }
-  }
+  bvw->priv->media_has_audio = (n_audio > 0);
 
   if (videopad) {
     GstCaps *caps;
@@ -2889,9 +2841,6 @@ parse_stream_info (BaconVideoWidget *bvw)
     g_signal_connect (videopad, "notify::caps",
         G_CALLBACK (caps_set), bvw);
     gst_object_unref (videopad);
-  } else if (bvw->priv->show_vfx) {
-    get_visualization_size (bvw, &bvw->priv->video_width,
-        &bvw->priv->video_height, NULL, NULL);
   }
 
   set_current_actor (bvw);
@@ -2938,14 +2887,10 @@ bacon_video_widget_finalize (GObject * object)
   g_clear_pointer (&bvw->priv->referrer, g_free);
   g_clear_pointer (&bvw->priv->mrl, g_free);
   g_clear_pointer (&bvw->priv->subtitle_uri, g_free);
-  g_clear_pointer (&bvw->priv->vis_element_name, g_free);
   g_clear_pointer (&bvw->priv->busy_popup_ht, g_hash_table_destroy);
 
   g_clear_object (&bvw->priv->clock);
 
-  g_clear_pointer (&bvw->priv->vis_plugins_list, g_list_free);
-  g_clear_pointer (&bvw->priv->vis_plugins_ht, g_hash_table_destroy);
-
   if (bvw->priv->play != NULL)
     gst_element_set_state (bvw->priv->play, GST_STATE_NULL);
 
@@ -3000,9 +2945,6 @@ bacon_video_widget_set_property (GObject * object, guint property_id,
     case PROP_REFERRER:
       bacon_video_widget_set_referrer (bvw, g_value_get_string (value));
       break;
-    case PROP_SHOW_VISUALIZATIONS:
-      bacon_video_widget_set_show_visualizations (bvw, g_value_get_boolean (value));
-      break;
     case PROP_USER_AGENT:
       bacon_video_widget_set_user_agent (bvw, g_value_get_string (value));
       break;
@@ -3012,9 +2954,6 @@ bacon_video_widget_set_property (GObject * object, guint property_id,
     case PROP_DEINTERLACING:
       bacon_video_widget_set_deinterlacing (bvw, g_value_get_boolean (value));
       break;
-    case PROP_VISUALIZATION_QUALITY:
-      bacon_video_widget_set_visualization_quality (bvw, g_value_get_enum (value));
-      break;
     case PROP_BRIGHTNESS:
       bacon_video_widget_set_video_property (bvw, BVW_VIDEO_BRIGHTNESS, g_value_get_int (value));
       break;
@@ -3081,9 +3020,6 @@ bacon_video_widget_get_property (GObject * object, guint property_id,
     case PROP_DEINTERLACING:
       g_value_set_boolean (value, bacon_video_widget_get_deinterlacing (bvw));
       break;
-    case PROP_VISUALIZATION_QUALITY:
-      g_value_set_enum (value, bvw->priv->visq);
-      break;
     case PROP_BRIGHTNESS:
       g_value_set_int (value, bacon_video_widget_get_video_property (bvw, BVW_VIDEO_BRIGHTNESS));
       break;
@@ -4609,9 +4545,6 @@ bvw_check_for_cover_pixbuf (BaconVideoWidget * bvw)
     g_value_unset (&value);
   }
 
-  if (bvw->priv->cover_pixbuf)
-    setup_vis (bvw);
-
   return (bvw->priv->cover_pixbuf != NULL);
 }
 
@@ -4855,336 +4788,6 @@ bacon_video_widget_set_show_cursor (BaconVideoWidget * bvw,
   }
 }
 
-static struct {
-       int height;
-       int fps;
-} const vis_qualities[] = {
-       { 240, 15 }, /* BVW_VISUALIZATION_SMALL */
-       { 320, 25 }, /* BVW_VISUALIZATION_NORMAL */
-       { 480, 25 }, /* BVW_VISUALIZATION_LARGE */
-       { 600, 30 }  /* BVW_VISUALIZATION_EXTRA_LARGE */
-};
-
-static void
-get_visualization_size (BaconVideoWidget *bvw,
-                        int *w, int *h, gint *fps_n, gint *fps_d)
-{
-  GdkScreen *screen;
-  int new_fps_n;
-
-  g_return_if_fail (h != NULL);
-  g_return_if_fail (bvw->priv->visq < G_N_ELEMENTS (vis_qualities));
-
-  if (gtk_widget_get_realized (GTK_WIDGET (bvw)) == FALSE) {
-    if (fps_n)
-      *fps_n = 1;
-    if (fps_d)
-      *fps_d = 1;
-    return;
-  }
-
-  *h = vis_qualities[bvw->priv->visq].height;
-  new_fps_n = vis_qualities[bvw->priv->visq].fps;
-
-  screen = gtk_widget_get_screen (GTK_WIDGET (bvw));
-  *w = *h * gdk_screen_get_width (screen) / gdk_screen_get_height (screen);
-
-  if (fps_n)
-    *fps_n = new_fps_n;
-  if (fps_d)
-    *fps_d = 1;
-}
-
-static void
-add_longname (GstElementFactory *f, GHashTable *ht)
-{
-  g_hash_table_insert (ht,
-                      (gpointer) gst_element_factory_get_metadata (f, GST_ELEMENT_METADATA_LONGNAME),
-                      (gpointer) gst_plugin_feature_get_name (GST_PLUGIN_FEATURE (f)));
-}
-
-static void
-ensure_vis_plugins_list (BaconVideoWidget *bvw)
-{
-  GHashTable *ht;
-  GList *features;
-
-  if (bvw->priv->vis_plugins_ht)
-    return;
-
-  features = get_visualization_features ();
-  ht = g_hash_table_new (g_str_hash, g_str_equal);
-  g_list_foreach (features, (GFunc) add_longname, ht);
-  g_list_free (features);
-
-  bvw->priv->vis_plugins_ht = ht;
-}
-
-static GstElementFactory *
-setup_vis_find_factory (BaconVideoWidget * bvw, const gchar * vis_name)
-{
-  const char *factory_name;
-
-  ensure_vis_plugins_list (bvw);
-
-  factory_name = g_hash_table_lookup (bvw->priv->vis_plugins_ht, vis_name);
-  if (factory_name == NULL)
-    return NULL;
-
-  return gst_element_factory_find (factory_name);
-}
-
-static void
-setup_vis (BaconVideoWidget * bvw)
-{
-  GstElement *vis_bin = NULL;
-
-  GST_DEBUG ("setup_vis called, show_vfx %d, vis element %s",
-      bvw->priv->show_vfx, bvw->priv->vis_element_name);
-
-  /* Check to see if we have an embedded cover image. If we do, don't show visualisations.
-   * FIXME probably wrong now, hide that and use an OSD instead */
-  bvw_check_for_cover_pixbuf (bvw);
-
-  if (bvw->priv->show_vfx && !bvw->priv->cover_pixbuf && bvw->priv->vis_element_name) {
-    GstElement *vis_element = NULL, *vis_capsfilter = NULL;
-    GstPad *pad = NULL;
-    GstCaps *caps = NULL;
-    GstElementFactory *fac = NULL;
-    
-    fac = setup_vis_find_factory (bvw, bvw->priv->vis_element_name);
-    if (!fac) {
-      GST_DEBUG ("Could not find element factory for visualisation '%s'",
-          GST_STR_NULL (bvw->priv->vis_element_name));
-      /* use goom as fallback, better than nothing */
-      fac = setup_vis_find_factory (bvw, "goom");
-      if (fac == NULL) {
-        goto beach;
-      } else {
-        GST_DEBUG ("Falling back on 'goom' for visualisation");
-      }     
-    }
-    
-    vis_element = gst_element_factory_create (fac, "vis_element");
-    if (!GST_IS_ELEMENT (vis_element)) {
-      GST_DEBUG ("failed creating visualisation element");
-      goto beach;
-    }
-    
-    vis_capsfilter = gst_element_factory_make ("capsfilter",
-        "vis_capsfilter");
-    if (!GST_IS_ELEMENT (vis_capsfilter)) {
-      GST_DEBUG ("failed creating visualisation capsfilter element");
-      gst_object_unref (vis_element);
-      goto beach;
-    }
-    
-    vis_bin = gst_bin_new ("vis_bin");
-    if (!GST_IS_ELEMENT (vis_bin)) {
-      GST_DEBUG ("failed creating visualisation bin");
-      gst_object_unref (vis_element);
-      gst_object_unref (vis_capsfilter);
-      goto beach;
-    }
-    /* We created the bin, now ref and sink to make sure we own it */
-    gst_object_ref (vis_bin);
-    gst_object_ref_sink (vis_bin);
-    
-    gst_bin_add_many (GST_BIN (vis_bin), vis_element, vis_capsfilter, NULL);
-    
-    /* Sink ghostpad */
-    pad = gst_element_get_static_pad (vis_element, "sink");
-    gst_element_add_pad (vis_bin, gst_ghost_pad_new ("sink", pad));
-    gst_object_unref (pad);
-
-    /* Source ghostpad, link with vis_element */
-    pad = gst_element_get_static_pad (vis_capsfilter, "src");
-    gst_element_add_pad (vis_bin, gst_ghost_pad_new ("src", pad));
-    gst_element_link_pads (vis_element, "src", vis_capsfilter, "sink");
-    gst_object_unref (pad);
-
-    /* Get allowed output caps from visualisation element */
-    pad = gst_element_get_static_pad (vis_element, "src");
-    caps = gst_pad_get_allowed_caps (pad);
-    gst_object_unref (pad);
-    
-    GST_DEBUG ("allowed caps: %" GST_PTR_FORMAT, caps);
-    
-    /* Can we fixate ? */
-    if (caps && !gst_caps_is_fixed (caps)) {
-      guint i;
-      gint w, h, fps_n, fps_d;
-
-      caps = gst_caps_make_writable (caps);
-
-      /* Get visualization size */
-      get_visualization_size (bvw, &w, &h, &fps_n, &fps_d);
-
-      for (i = 0; i < gst_caps_get_size (caps); ++i) {
-        GstStructure *s = gst_caps_get_structure (caps, i);
-      
-        /* Fixate */
-        gst_structure_fixate_field_nearest_int (s, "width", w);
-        gst_structure_fixate_field_nearest_int (s, "height", h);
-        gst_structure_fixate_field_nearest_fraction (s, "framerate", fps_n,
-            fps_d);
-      }
-
-      /* set this */
-      g_object_set (vis_capsfilter, "caps", caps, NULL);
-    }
-
-    GST_DEBUG ("visualisation caps: %" GST_PTR_FORMAT, caps);
-    
-    if (GST_IS_CAPS (caps)) {
-      gst_caps_unref (caps);
-    }
-  }
-
-  if (bvw->priv->media_has_audio &&
-      !bvw->priv->media_has_video) {
-    gint flags;
-
-    g_object_get (bvw->priv->play, "flags", &flags, NULL);
-    if (bvw->priv->show_vfx && !bvw->priv->cover_pixbuf) {
-      flags |= GST_PLAY_FLAG_VIS;
-    } else {
-      flags &= ~GST_PLAY_FLAG_VIS;
-    }
-    g_object_set (bvw->priv->play, "flags", flags, NULL);
-  }
-
-beach:
-  g_object_set (bvw->priv->play, "vis-plugin", vis_bin, NULL);
-  if (vis_bin)
-    gst_object_unref (vis_bin);
-  
-  return;
-}
-
-/**
- * bacon_video_widget_set_show_visualizations:
- * @bvw: a #BaconVideoWidget
- * @show_visualizations: %TRUE to show visualisations, %FALSE otherwise
- *
- * Sets whether to show visualisations when playing audio-only streams.
- **/
-void
-bacon_video_widget_set_show_visualizations (BaconVideoWidget * bvw,
-                                     gboolean show_visualizations)
-{
-  g_return_if_fail (BACON_IS_VIDEO_WIDGET (bvw));
-  g_return_if_fail (GST_IS_ELEMENT (bvw->priv->play));
-
-  if (show_visualizations == bvw->priv->show_vfx)
-    return;
-
-  bvw->priv->show_vfx = show_visualizations;
-  setup_vis (bvw);
-  set_current_actor (bvw);
-}
-
-static gboolean
-filter_features (GstPluginFeature * feature, gpointer data)
-{
-  const gchar *element_type;
-
-  if (!GST_IS_ELEMENT_FACTORY (feature))
-    return FALSE;
-  element_type = gst_element_factory_get_metadata (GST_ELEMENT_FACTORY (feature),
-                                                   GST_ELEMENT_METADATA_KLASS);
-  if (!g_strrstr (element_type, "Visualization"))
-    return FALSE;
-
-  return TRUE;
-}
-
-static GList *
-get_visualization_features (void)
-{
-  return gst_registry_feature_filter (gst_registry_get (),
-      filter_features, FALSE, NULL);
-}
-
-/**
- * bacon_video_widget_get_visualization_list:
- * @bvw: a #BaconVideoWidget
- *
- * Returns a list of the visualisations available when playing audio-only streams.
- *
- * Return value: a #GList of visualisation names; owned by @bvw
- **/
-GList *
-bacon_video_widget_get_visualization_list (BaconVideoWidget * bvw)
-{
-  g_return_val_if_fail (BACON_IS_VIDEO_WIDGET (bvw), NULL);
-  g_return_val_if_fail (GST_IS_ELEMENT (bvw->priv->play), NULL);
-
-  if (bvw->priv->vis_plugins_list)
-    return bvw->priv->vis_plugins_list;
-
-  ensure_vis_plugins_list (bvw);
-  bvw->priv->vis_plugins_list = g_hash_table_get_keys (bvw->priv->vis_plugins_ht);
-
-  return bvw->priv->vis_plugins_list;
-}
-
-/**
- * bacon_video_widget_set_visualization:
- * @bvw: a #BaconVideoWidget
- * @name: the visualisation's name, or %NULL
- *
- * Sets the visualisation to display when playing audio-only streams.
- *
- * If @name is %NULL, visualisations will be disabled. Otherwise, @name
- * should be from the list returned by bacon_video_widget_get_visualization_list().
- **/
-void
-bacon_video_widget_set_visualization (BaconVideoWidget * bvw, const char *name)
-{
-  g_return_if_fail (BACON_IS_VIDEO_WIDGET (bvw));
-  g_return_if_fail (GST_IS_ELEMENT (bvw->priv->play));
-
-  if (bvw->priv->vis_element_name) {
-    if (strcmp (bvw->priv->vis_element_name, name) == 0) {
-      return;
-    }
-    else {
-      g_free (bvw->priv->vis_element_name);
-    }
-  }
-
-  bvw->priv->vis_element_name = g_strdup (name);
-
-  GST_DEBUG ("new visualisation element name = '%s'", GST_STR_NULL (name));
-
-  setup_vis (bvw);
-}
-
-/**
- * bacon_video_widget_set_visualization_quality:
- * @bvw: a #BaconVideoWidget
- * @quality: the visualisation quality
- *
- * Sets the quality/size of displayed visualisations.
- **/
-void
-bacon_video_widget_set_visualization_quality (BaconVideoWidget * bvw,
-                                        BvwVisualizationQuality quality)
-{
-  g_return_if_fail (BACON_IS_VIDEO_WIDGET (bvw));
-  g_return_if_fail (GST_IS_ELEMENT (bvw->priv->play));
-
-  if (bvw->priv->visq == quality)
-    return;
-
-  bvw->priv->visq = quality;
-  
-  setup_vis (bvw);
-
-  g_object_notify (G_OBJECT (bvw), "visualization-quality");
-}
-
 /**
  * bacon_video_widget_set_aspect_ratio:
  * @bvw: a #BaconVideoWidget
@@ -6166,7 +5769,7 @@ bacon_video_widget_can_get_frames (BaconVideoWidget * bvw, GError ** error)
   g_return_val_if_fail (GST_IS_ELEMENT (bvw->priv->play), FALSE);
 
   /* check for video */
-  if (!bvw->priv->media_has_video && !bvw->priv->show_vfx) {
+  if (!bvw->priv->media_has_video) {
     g_set_error_literal (error, BVW_ERROR, BVW_ERROR_CANNOT_CAPTURE,
         _("Media contains no supported video streams."));
     return FALSE;
@@ -6353,10 +5956,6 @@ bacon_video_widget_initable_init (GInitable     *initable,
                         bvw);
 
   bvw->priv->speakersetup = BVW_AUDIO_SOUND_STEREO;
-  bvw->priv->visq = BVW_VISUALIZATION_SMALL;
-  bvw->priv->show_vfx = FALSE;
-  bvw->priv->vis_plugins_list = NULL;
-  bvw->priv->vis_element_name = g_strdup ("goom");
   bvw->priv->ratio_type = BVW_RATIO_AUTO;
 
   bvw->priv->cursor_shown = TRUE;
diff --git a/src/backend/bacon-video-widget.h b/src/backend/bacon-video-widget.h
index e33e604..3feaed1 100644
--- a/src/backend/bacon-video-widget.h
+++ b/src/backend/bacon-video-widget.h
@@ -245,32 +245,6 @@ void bacon_video_widget_get_metadata                (BaconVideoWidget *bvw,
                                                  BvwMetadataType type,
                                                  GValue *value);
 
-/* Visualisation functions */
-/**
- * BvwVisualizationQuality:
- * @BVW_VISUALIZATION_SMALL: small size (240×15)
- * @BVW_VISUALIZATION_NORMAL: normal size (320×25)
- * @BVW_VISUALIZATION_LARGE: large size (480×25)
- * @BVW_VISUALIZATION_EXTRA_LARGE: extra large size (600×30)
- *
- * The different visualisation sizes or qualities available for use
- * with bacon_video_widget_set_visualization_quality().
- **/
-typedef enum {
-       BVW_VISUALIZATION_SMALL = 0,
-       BVW_VISUALIZATION_NORMAL,
-       BVW_VISUALIZATION_LARGE,
-       BVW_VISUALIZATION_EXTRA_LARGE
-} BvwVisualizationQuality;
-
-void bacon_video_widget_set_show_visualizations          (BaconVideoWidget *bvw,
-                                                  gboolean show_visualizations);
-GList *bacon_video_widget_get_visualization_list  (BaconVideoWidget *bvw);
-void bacon_video_widget_set_visualization        (BaconVideoWidget *bvw,
-                                                  const char *name);
-void bacon_video_widget_set_visualization_quality (BaconVideoWidget *bvw,
-                                                  BvwVisualizationQuality quality);
-
 /* Picture settings */
 /**
  * BvwVideoProperty:
diff --git a/src/backend/bvw-test.c b/src/backend/bvw-test.c
index d853ea6..2345395 100644
--- a/src/backend/bvw-test.c
+++ b/src/backend/bvw-test.c
@@ -118,7 +118,6 @@ int main
 
        bvw = bacon_video_widget_new (NULL);
        bacon_video_widget_set_logo (BACON_VIDEO_WIDGET (bvw), "totem");
-       bacon_video_widget_set_show_visualizations (BACON_VIDEO_WIDGET (bvw), TRUE);
 
        g_signal_connect (G_OBJECT (bvw), "eos", G_CALLBACK (on_eos_event), NULL);
        g_signal_connect (G_OBJECT (bvw), "got-metadata", G_CALLBACK (on_got_metadata), NULL);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]