2006-04-06 Andy Wingo <wingo@pobox.com>
+ * gst/videorate/gstvideorate.c (gst_video_rate_reset)
+ (gst_video_rate_init): Caps-related parameters should not be reset
+ by a flush -- move their inits to the instance init function.
+ (gst_video_rate_flush_prev): Don't complain if gst_pad_push
+ is not OK, just return the result.
+
+ * gst/audiotestsrc/gstaudiotestsrc.c
+ (gst_audio_test_src_class_init)
+ (gst_audio_test_src_get_times): Re-enable is-live=true, as was
+ broken by Stefan's commit on 24 March.
+
* ext/ogg/gstoggmux.c (gst_ogg_mux_push_buffer): Set caps on
buffers being pushed out. Fixes oggmux ! multifdsink.
static void gst_audio_test_src_change_wave (GstAudioTestSrc * src);
-/*
static void gst_audio_test_src_get_times (GstBaseSrc * basesrc,
GstBuffer * buffer, GstClockTime * start, GstClockTime * end);
-*/
static GstFlowReturn gst_audio_test_src_create (GstBaseSrc * basesrc,
guint64 offset, guint length, GstBuffer ** buffer);
GST_DEBUG_FUNCPTR (gst_audio_test_src_is_seekable);
gstbasesrc_class->do_seek = GST_DEBUG_FUNCPTR (gst_audio_test_src_do_seek);
gstbasesrc_class->query = GST_DEBUG_FUNCPTR (gst_audio_test_src_query);
- /*
- gstbasesrc_class->get_times =
- GST_DEBUG_FUNCPTR (gst_audio_test_src_get_times);
- */
+ gstbasesrc_class->get_times =
+ GST_DEBUG_FUNCPTR (gst_audio_test_src_get_times);
gstbasesrc_class->create = GST_DEBUG_FUNCPTR (gst_audio_test_src_create);
}
}
}
-#ifdef __DISABLE_NO_LIVE__
static void
gst_audio_test_src_get_times (GstBaseSrc * basesrc, GstBuffer * buffer,
GstClockTime * start, GstClockTime * end)
*end = -1;
}
}
-#endif
static gboolean
gst_audio_test_src_do_seek (GstBaseSrc * basesrc, GstSegment * segment)
{
GST_DEBUG ("resetting data");
- videorate->from_rate_numerator = 0;
- videorate->from_rate_denominator = 0;
- videorate->to_rate_numerator = 0;
- videorate->to_rate_denominator = 0;
videorate->in = 0;
videorate->out = 0;
videorate->drop = 0;
gst_video_rate_reset (videorate);
videorate->silent = DEFAULT_SILENT;
videorate->new_pref = DEFAULT_NEW_PREF;
+
+ videorate->from_rate_numerator = 0;
+ videorate->from_rate_denominator = 0;
+ videorate->to_rate_numerator = 0;
+ videorate->to_rate_denominator = 0;
}
/* flush the oldest buffer */
"old is best, dup, pushing buffer outgoing ts %" GST_TIME_FORMAT,
GST_TIME_ARGS (push_ts));
- if ((res = gst_pad_push (videorate->srcpad, outbuf)) != GST_FLOW_OK)
- goto push_error;
+ res = gst_pad_push (videorate->srcpad, outbuf);
return res;
GST_INFO_OBJECT (videorate, "got EOS before any buffer was received");
return GST_FLOW_OK;
}
- /* ERRORS */
-push_error:
- {
- GST_WARNING_OBJECT (videorate, "couldn't push buffer on srcpad, reason %s",
- gst_flow_get_name (res));
- return res;
- }
}
static void