[pulseaudio-discuss] Your Pulse Audio "Client sent non-aligned memblock" change

Michael Schwendt mschwendt at gmail.com
Mon Nov 10 10:42:14 PST 2014


On Mon, 10 Nov 2014 13:47:47 +0100, David Henningsson wrote:

> In your call to pa_stream_write, you try to send 687 bytes, but with a 
> frame size of 8 (could be e g 32-bit float, stereo), 687 bytes is 85.875 
> frames, i e not an integer number of frames.

That would be unusual and, unfortunately, a reproducer is still lacking
because of a very poor bug report. I don't see any reason why an odd number
of bytes would be sent to PA. E.g. I wouldn't expect an audio file decoder to
return an incomplete frame (here 3 bytes instead of 8).

Also, with the given log messages:

  Nov 10 01:10:49 deer pulseaudio[1780]: [pulseaudio] protocol-native.c: Client
  sent non-aligned memblock: index 0, length 23, frame size: 8
  Nov 10 01:10:49 deer pulseaudio[1780]: [pulseaudio] protocol-native.c: Client
  sent non-aligned memblock: index 23, length 8169, frame size: 8

8169+23 = 8192 would match the maximum buffer size of what is sent to the
PA output driver (e.g. as filled by mpg123 input), but pa_stream_write is
not called with an "index" parameter. So, that one seems to be something
internal.

Somehow I have the feeling there's another component involved, e.g. 
something inbetween Audacious and Pulse Audio daemon.


More information about the pulseaudio-discuss mailing list