---
 gst/rtp/gstrtpmp4vpay.c |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

Index: gst-plugins-good0.10-0.10.23/gst/rtp/gstrtpmp4vpay.c
===================================================================
--- gst-plugins-good0.10-0.10.23.orig/gst/rtp/gstrtpmp4vpay.c
+++ gst-plugins-good0.10-0.10.23/gst/rtp/gstrtpmp4vpay.c
@@ -112,7 +112,8 @@
 
   g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_SEND_CONFIG,
       g_param_spec_boolean ("send-config", "Send Config",
-          "Send the config parameters in RTP packets as well",
+          "Send the config parameters in RTP packets as well (deprecated "
+	  "see config-interval)",
           DEFAULT_SEND_CONFIG, G_PARAM_READWRITE));
 
   g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_BUFFER_LIST,
@@ -497,7 +498,7 @@
   flush = gst_rtp_mp4v_pay_depay_data (rtpmp4vpay, data, size, &strip, &vopi);
   if (strip) {
     /* strip off config if requested */
-    if (!rtpmp4vpay->send_config) {
+    if (!(rtpmp4vpay->config_interval>0)) {
       GstBuffer *subbuf;
 
       GST_LOG_OBJECT (rtpmp4vpay, "stripping config at %d, size %d", strip,
@@ -517,7 +518,7 @@
   }
 
   /* there is a config request, see if we need to insert it */
-  if (rtpmp4vpay->send_config && vopi && (rtpmp4vpay->config_interval > 0) &&
+  if (vopi && (rtpmp4vpay->config_interval > 0) &&
       rtpmp4vpay->config) {
     if (rtpmp4vpay->last_config != -1) {
       guint64 diff;
@@ -637,6 +638,10 @@
   switch (prop_id) {
     case ARG_SEND_CONFIG:
       rtpmp4vpay->send_config = g_value_get_boolean (value);
+      /* send the configuration once every minute */
+      if(rtpmp4vpay->send_config && !(rtpmp4vpay->config_interval > 0)){
+        rtpmp4vpay->config_interval = 60;
+      }
       break;
     case ARG_BUFFER_LIST:
       rtpmp4vpay->buffer_list = g_value_get_boolean (value);
