Dear list, I ask you for some assistance with null-sink and skipping/stutter. On client connect/disconnect and volume changes and many more things, pulseaudio does a buffer rewind to let the changes take effect immediately. So far,s o good, on all my soundcards this works like a charm. Now I have some audio stream setup where I play audio to a null-sink and record it from null.monitor. This works really great, until some action like pause/play, volume change, or connecting another audio client is causing a rewind. Then the recorded audio hangs for approx 200ms or even more. On soft volume changes, there are many many rewinds done, and so I have many of these skips. The skipping audio is actually hanging, it does not drop any data. There is just a silent break of about 200ms inserted into the stream. Of course it would be great to make rewinding on null sink just work as it does on alsa sinks, but in case this is inevitable, I would be fine with some possibility to disable rewinding. I know that all action then are delayed, but that would be okay for me as the stream is delayed about 8 seconds anyway, until it reaches the receiver. Here is some log excerpt: ( 81.716| 0.039) D: [pulseaudio] protocol-native.c: Client spotify changes volume of sink input Spotify. ( 81.716| 0.000) D: [null-sink] module-null-sink.c: Requested to rewind 376320 bytes. ( 81.716| 0.000) D: [null-sink] sink.c: Processing rewind... ( 81.716| 0.000) D: [null-sink] sink-input.c: Have to rewind 376320 bytes on render memblockq. ( 81.716| 0.000) D: [null-sink] sink-input.c: Have to rewind 172872 bytes on implementor. ( 81.716| 0.000) D: [null-sink] source.c: Processing rewind... ( 81.716| 0.000) D: [null-sink] module-null-sink.c: Rewound 376320 bytes. ( 81.717| 0.000) I: [pulseaudio] module-stream-restore.c: Storing volume/mute/device for stream sink-input-by-media-role:music. ( 81.739| 0.022) D: [pulseaudio] protocol-native.c: Client spotify changes volume of sink input Spotify. ( 81.767| 0.027) D: [null-sink] module-null-sink.c: Requested to rewind 376320 bytes. ( 81.767| 0.000) D: [null-sink] sink.c: Processing rewind... ( 81.767| 0.000) I: [pulseaudio] module-stream-restore.c: Storing volume/mute/device for stream sink-input-by-media-role:music. ( 81.767| 0.000) D: [null-sink] sink-input.c: Have to rewind 364404 bytes on render memblockq. ( 81.767| 0.000) D: [null-sink] sink-input.c: Have to rewind 167400 bytes on implementor. ( 81.767| 0.000) D: [null-sink] source.c: Processing rewind... ( 81.767| 0.000) D: [null-sink] module-null-sink.c: Rewound 364404 bytes. ( 81.843| 0.075) D: [pulseaudio] protocol-native.c: Client spotify changes volume of sink input Spotify. ( 81.843| 0.000) D: [null-sink] module-null-sink.c: Requested to rewind 376320 bytes. ( 81.843| 0.000) D: [null-sink] sink.c: Processing rewind... ( 81.843| 0.000) D: [null-sink] sink-input.c: Have to rewind 367448 bytes on render memblockq. ( 81.843| 0.000) D: [null-sink] sink-input.c: Have to rewind 168800 bytes on implementor. ( 81.843| 0.000) D: [null-sink] source.c: Processing rewind... ( 81.843| 0.000) D: [null-sink] module-null-sink.c: Rewound 367448 bytes. ( 81.844| 0.000) I: [pulseaudio] module-stream-restore.c: Storing volume/mute/device for stream sink-input-by-media-role:music. ( 81.990| 0.146) D: [pulseaudio] protocol-native.c: Client spotify changes volume of sink input Spotify. ( 81.990| 0.000) I: [pulseaudio] module-stream-restore.c: Storing volume/mute/device for stream sink-input-by-media-role:music. ( 81.990| 0.000) D: [null-sink] module-null-sink.c: Requested to rewind 376320 bytes. ( 81.990| 0.000) D: [null-sink] sink.c: Processing rewind... ( 81.990| 0.000) D: [null-sink] sink-input.c: Have to rewind 350372 bytes on render memblockq. ( 81.990| 0.000) D: [null-sink] sink-input.c: Have to rewind 160956 bytes on implementor. ( 81.991| 0.000) D: [null-sink] source.c: Processing rewind... ( 81.991| 0.000) D: [null-sink] module-null-sink.c: Rewound 350372 bytes. ( 82.228| 0.237) D: [pulseaudio] protocol-native.c: Client spotify changes volume of sink input Spotify. ( 82.228| 0.000) D: [null-sink] module-null-sink.c: Requested to rewind 376320 bytes. ( 82.228| 0.000) D: [null-sink] sink.c: Processing rewind... ( 82.228| 0.000) I: [pulseaudio] module-stream-restore.c: Storing volume/mute/device for stream sink-input-by-media-role:music. ( 82.228| 0.000) D: [null-sink] sink-input.c: Have to rewind 291320 bytes on render memblockq. ( 82.228| 0.000) D: [null-sink] sink-input.c: Have to rewind 133828 bytes on implementor. ( 82.228| 0.000) D: [null-sink] source.c: Processing rewind... ( 82.228| 0.000) D: [null-sink] module-null-sink.c: Rewound 291320 bytes. ( 82.262| 0.033) D: [pulseaudio] protocol-native.c: Client spotify changes volume of sink input Spotify. ( 82.262| 0.000) I: [pulseaudio] module-stream-restore.c: Storing volume/mute/device for stream sink-input-by-media-role:music. ( 82.262| 0.000) D: [null-sink] module-null-sink.c: Requested to rewind 376320 bytes. ( 82.262| 0.000) D: [null-sink] sink.c: Processing rewind... ( 82.262| 0.000) D: [null-sink] sink-input.c: Have to rewind 376320 bytes on render memblockq. ( 82.262| 0.000) D: [null-sink] sink-input.c: Have to rewind 172872 bytes on implementor. ( 82.262| 0.000) D: [null-sink] source.c: Processing rewind... ( 82.262| 0.000) D: [null-sink] module-null-sink.c: Rewound 376320 bytes. Thank you for any help! Best regards, Daniel -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20131122/892372fe/attachment.html>