On Wed, 2012-11-07 at 16:52 +0200, Tanu Kaskinen wrote:
[...]
> -            if (buffer) {
> +            /* If there is a hole in the stream, we generate silence, except
> +             * if it's a passthrough stream in which case we skip the hole. 
> */
> +            if (data || !(flags & PA_STREAM_PASSTHROUGH)) {
>                  buffer = pa_xrealloc(buffer, buffer_length + length);
> -                memcpy((uint8_t*) buffer + buffer_length, data, length);
> +                if (data)
> +                    memcpy((uint8_t *) buffer + buffer_length, data, length);
> +                else
> +                    pa_silence_memory((uint8_t *) buffer + buffer_length, 
> length, &sample_spec);
> +

I'm wondering if we should generate zero'ed blocks for passthrough as
well - otherwise there is no way to know that there was a discontinuity.
That sucks, but it's a sucky situation anyway, and it's probably better
to know that things have broken explicitly.

-- Arun

_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to