On Fri, May 13, 2016 at 07:21:52PM -0400, Andre Smagin wrote:
> 
> I experimented with low bit rate mp3s, and with low bit depth and
> downsampled wav and flac files, but it did not make much difference -
> the CPU does not appear to be the limiting factor.

IMO, it's a design problem in the zaudio driver.  Audio DMA needs
at least two blocks: while the device is playing the first block,
the software is preparing the second one; then DMA continues on the
second one, and software can start preparing the first one.  And so
on; this ensures continuous playback.  AFAICS, zaudio uses a single
block, so it stutters at each block boundary.

It used work by accident, because the hardware buffers few bytes,
so playback was roughly continuous.  But now something is slowing
down interrupts and this is not enough to keep playback continuous.

It's worth fixing this as this would enable to implement recording
as well.

> > > On a related note, while browsing src/sys/arch/arm/xscale I noticed that
> > > some error printf's have '\n', [...]
> > 
> > you're right; messages are supposed to be terminated with '\n'.
> 
> I will try to find some time in the next few days to come up with a
> diff.

Perfect, thanks.

Reply via email to