[En-Nut-Discussion] Bug in NutSegReadCommit

Pavel Chromy chromy at asix.cz
Fri Nov 26 13:47:37 CET 2004



Pete Allinson wrote:

> Yes, I did.  I'm actually running my own server (which isn't sending any 
> metadata).  (Sorry, when I referred to hiccups I meant that the player 
> was stopping.)
> 
>> If NutSegBufReadRequest() reports, that no more bytes
>> are available, then the VS1001 driver _stops_ playing.
>>
>> Anyway the implementation looks wrong to me too.
>> The player stops when read and write pointers are at
>> the same address in different segments.

Actually there are more problems than just this one.
For example the version of the driver in which banked memory was introduced completely
broke my design of the decoder flushing in VsPlayerFeed()
and made vs_flush totally useless. 
The feeding function inserts zeros in the stream as soon as it sees the vs_flush set,
which is completely wrong.

The last driver which works correctly I consider to be reasonably bug free is revision 1.1.1.1
http://cvs.sourceforge.net/viewcvs.py/*checkout*/ethernut/nut/dev/vs1001k.c?rev=1.1.1.1
(without banked memory)

Pavel



More information about the En-Nut-Discussion mailing list