rendered paste bodydiff -u -p -r1.17 rb-encoder-gst.c
--- backends/gstreamer/rb-encoder-gst.c 27 Jul 2006 07:45:07 -0000 1.17
+++ backends/gstreamer/rb-encoder-gst.c 11 Aug 2006 13:12:40 -0000
@@ -764,6 +764,17 @@ copy_track (RBEncoderGst *encoder,
return TRUE;
}
+static void
+transport_error_cb (GstElement *elem, gint sector, RBEncoderGst *encoder)
+{
+ rb_debug ("transport error on sector %d", sector);
+}
+static void
+uncorrected_error_cb (GstElement *elem, gint sector, RBEncoderGst *encoder)
+{
+ rb_debug ("uncorrected read error (skip) on sector %d", sector);
+}
+
static gboolean
extract_track (RBEncoderGst *encoder,
RhythmDBEntry *entry,
@@ -807,6 +818,18 @@ extract_track (RBEncoderGst *encoder,
paranoia_mode = 255; /* TODO: make configurable */
g_object_set (G_OBJECT (src), "paranoia-mode", paranoia_mode, NULL);
+ }
+ if (g_object_class_find_property (G_OBJECT_GET_CLASS (src), "search-overlap")) {
+ int search_overlap;
+
+ search_overlap = 75; /* TODO: make configurable */
+ g_object_set (G_OBJECT (src), "search-overlap", search_overlap, NULL);
+ }
+ if (g_signal_lookup ("transport-error", G_OBJECT_TYPE (src))) {
+ g_signal_connect_object (src, "transport-error", (GCallback)transport_error_cb, encoder, 0);
+ }
+ if (g_signal_lookup ("uncorrected-error", G_OBJECT_TYPE (src))) {
+ g_signal_connect_object (src, "uncorrected-error", (GCallback)uncorrected_error_cb, encoder, 0);
}
g_free (uri);