Merge branch 'master' into 0.11
authorWim Taymans <wim.taymans@collabora.co.uk>
Fri, 19 Aug 2011 14:12:01 +0000 (16:12 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Fri, 19 Aug 2011 14:12:01 +0000 (16:12 +0200)
1  2 
ext/pulse/pulsesink.c

index b95b948d05acabdabe58f55d67420d802f3008b8,b90ebe380da6e6c776ee516d24decbfc225d999f..a7fca180e4ae7570d0a3bbd8619895f4287c2141
@@@ -1427,11 -1428,9 +1427,9 @@@ gst_pulseringbuffer_commit (GstRingBuff
        GST_LOG_OBJECT (psink, "discontinuity, offset is %" G_GINT64_FORMAT ", "
            "last offset was %" G_GINT64_FORMAT, offset, pbuf->m_lastoffset);
  
 -    towrite = out_samples * bps;
 +    towrite = out_samples * bpf;
  
-     /* Only ever write segsize bytes at once. This will
-      * also limit the PA shm buffer to segsize
-      */
+     /* Wait for at least segsize bytes to become available */
      if (towrite > buf->spec.segsize)
        towrite = buf->spec.segsize;
  
        GST_LOG_OBJECT (psink, "got %" G_GSIZE_FORMAT " bytes of shared memory",
            pbuf->m_writable);
  
-       /* Just to make sure that we didn't get more than requested */
-       if (pbuf->m_writable > buf->spec.segsize) {
-         /* limit buffering to latency-time value */
-         pbuf->m_writable = buf->spec.segsize;
-       }
      }
  
-     if (pbuf->m_writable < towrite)
+     if (towrite > pbuf->m_writable)
        towrite = pbuf->m_writable;
 -    avail = towrite / bps;
 +    avail = towrite / bpf;
  
      GST_LOG_OBJECT (psink, "writing %u samples at offset %" G_GUINT64_FORMAT,
          (guint) avail, offset);