--- /dev/null
+diff --git a/gstdvbaudiosink.c b/gstdvbaudiosink.c
+index 2b87caa..afd5fb6 100644
+--- a/gstdvbaudiosink.c
++++ b/gstdvbaudiosink.c
+@@ -270,7 +270,9 @@ static void gst_dvbaudiosink_class_init(GstDVBAudioSinkClass *self)
+ gstbasesink_class->event = GST_DEBUG_FUNCPTR(gst_dvbaudiosink_event);
+ gstbasesink_class->unlock = GST_DEBUG_FUNCPTR(gst_dvbaudiosink_unlock);
+ gstbasesink_class->unlock_stop = GST_DEBUG_FUNCPTR(gst_dvbaudiosink_unlock_stop);
++#if GST_VERSION_MAJOR < 1
+ gstbasesink_class->set_caps = GST_DEBUG_FUNCPTR(gst_dvbaudiosink_set_caps);
++#endif
+ gstbasesink_class->get_caps = GST_DEBUG_FUNCPTR(gst_dvbaudiosink_get_caps);
+
+ element_class->change_state = GST_DEBUG_FUNCPTR(gst_dvbaudiosink_change_state);
+@@ -425,6 +427,11 @@ static gboolean gst_dvbaudiosink_set_caps(GstBaseSink *basesink, GstCaps *caps)
+ const char *type = gst_structure_get_name(structure);
+ t_audio_type bypass = AUDIOTYPE_UNKNOWN;
+
++ if (self->bypass != AUDIOTYPE_UNKNOWN) {
++ GST_INFO_OBJECT (self, "skip set_caps, should be done only once.");
++ return TRUE;
++ }
++
+ self->skip = 0;
+ self->aac_adts_header_valid = FALSE;
+
+diff --git a/gstdvbvideosink.c b/gstdvbvideosink.c
+index fbebd11..657006e 100644
+--- a/gstdvbvideosink.c
++++ b/gstdvbvideosink.c
+@@ -299,8 +299,9 @@ static void gst_dvbvideosink_class_init(GstDVBVideoSinkClass *self)
+ gstbasesink_class->event = GST_DEBUG_FUNCPTR (gst_dvbvideosink_event);
+ gstbasesink_class->unlock = GST_DEBUG_FUNCPTR (gst_dvbvideosink_unlock);
+ gstbasesink_class->unlock_stop = GST_DEBUG_FUNCPTR (gst_dvbvideosink_unlock_stop);
++#if GST_VERSION_MAJOR < 1
+ gstbasesink_class->set_caps = GST_DEBUG_FUNCPTR (gst_dvbvideosink_set_caps);
+-
++#endif
+ element_class->change_state = GST_DEBUG_FUNCPTR (gst_dvbvideosink_change_state);
+
+ gst_dvb_videosink_signals[SIGNAL_GET_DECODER_TIME] =
+@@ -1556,6 +1557,10 @@ static gboolean gst_dvbvideosink_set_caps(GstBaseSink *basesink, GstCaps *caps)
+ gst_buffer_ref (self->codec_data);
+ }
+ GST_INFO_OBJECT (self, "MIMETYPE video/x-divx vers. 4 -> STREAMTYPE_MPEG4_Part2");
++#if GST_VERSION_MAJOR >= 1
++ self->use_dts = TRUE;
++#endif
++
+ break;
+ case 6:
+ case 5: