Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: VDR developer version 1.1.6



Andreas Schultz wrote:
> 
> ...
> > This would mean that the player has to ensure that it always sends an
> > entire frame, which I wouldn't want to make a requirement.
> 
> Actually that has nothing to do with entire frames. Its just a mechanism to
> tell the Player wether it can send new data blocks or not.

You wrote:

> The semantics for PlayVideo I would prefer is:
> 
> class cDevice {
>    ...
> public:
>     void PlayVideo(uint8_t buf, int length);
>     int ProcessBuffer();
>    ...
> };
> 
> PlayVideo(...) will take the entire buffer and store a pointer to it internaly
> ProcessBuffer(...) will send as much data as possible to the device, return
> values:
>   > 0 mean there is still data in the buffer
>   < 0 mean there is still data left, but the device is busy at the moment -
>      try again
>    0 means all data has been written to the card,
> 
> values > 0 do not have to represent the actual amount of data beeing written

So, if I understand this correctly, the player would call PlayVideo() with a given
buffer and the device would then process parts of the data in that buffer with
every call to ProcessBuffer(). Only after ProcessBuffer() returns '0' would the
player offer the next chunk of data to the device.

Now let's assume the first chunk of data is, for reasons not known, only 10 bytes
in size. I pretty much assume that your device couldn't make much of this data, so
it probably can't return '0' because it didn't process the entire data. So the
player just sits there, calling ProcessBuffer() infinitely...

Klaus
-- 
_______________________________________________________________

Klaus Schmidinger                       Phone: +49-8635-6989-10
CadSoft Computer GmbH                   Fax:   +49-8635-6989-40
Hofmark 2                               Email:   kls@cadsoft.de
D-84568 Pleiskirchen, Germany           URL:     www.cadsoft.de
_______________________________________________________________




Home | Main Index | Thread Index