GValue * value, GParamSpec * pspec);
static void gst_vorbis_enc_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec);
+static void gst_vorbis_enc_flush (GstAudioEncoder * vorbisenc);
#define gst_vorbis_enc_parent_class parent_class
G_DEFINE_TYPE_WITH_CODE (GstVorbisEnc, gst_vorbis_enc,
base_class->handle_frame = GST_DEBUG_FUNCPTR (gst_vorbis_enc_handle_frame);
base_class->getcaps = GST_DEBUG_FUNCPTR (gst_vorbis_enc_getcaps);
base_class->sink_event = GST_DEBUG_FUNCPTR (gst_vorbis_enc_sink_event);
+ base_class->flush = GST_DEBUG_FUNCPTR (gst_vorbis_enc_flush);
}
static void
return ret;
}
+static void
+gst_vorbis_enc_flush (GstAudioEncoder * enc)
+{
+ GstVorbisEnc *vorbisenc = GST_VORBISENC (enc);
+
+ gst_vorbis_enc_clear (vorbisenc);
+ vorbisenc->samples_in = 0;
+ vorbisenc->header_sent = FALSE;
+}
+
static GstBuffer *
gst_vorbis_enc_buffer_from_header_packet (GstVorbisEnc * vorbisenc,
ogg_packet * packet)