[vlc-devel] [PATCH] 3-of-3: vlc-1.1.0 decoder buffer state

Frank Enderle frank.enderle at anamica.de
Thu Jun 24 20:31:57 CEST 2010


yes - all i'm really interest in is how much data is in the buffer. the
background is that i get meta information through the icecast stream
tags. the problem is that the information is signaled as soon as it is
received, so i need to now how much data is in the buffer at this point
of time (i need to now it in time units such as ms).

what you write sounds exactly like what i searched for. so i would be
really happy if you could implement this and give a short example on how
to acquire the data.



Am 24.06.2010 20:25, schrieb Laurent Aimar:
> Hi,
> On Thu, 2010-06-24 at 11:49 +0200, Frank Enderle wrote:
>> sorry - I forgot to fix the 'int i' thing. Please ignore my last Mail.
>> Find the corrected patch attached.
> void libvlc_media_player_get_buffer_state( libvlc_media_player_t *p_mi, int *pi_count, size_t *pi_size, libvlc_time_t *pi_length )
> I am unsure of what information you really need. Because in the current
> state I don't think it is really usable:
>  - count: it's not really useful as the number of blocks is not related
> to the number of access unit (it depends on the demuxer).
>  - size: you don't have anything to compare it with (like bitrate)
>  - for all: you don't know on which ES it applies to, and it doesn't
> take into account how much is already decoded by the decoders (up to
> 500ms in advanced).
>  So with low input caching, the normal state would be that they all are
> empty...
>  If you simply want to have an information on the level of 'current
> buffering' a better way would be to extract the value computed in
> input_clock_Update  used to detect 'late' data. It is the amount of data
> expressed in time (in microsecond) already acquired and buffered (ie it
> takes into account the data before and after the decoders not yet
> rendered).
>  If this information is enough/better for what you need, I could do the
> input code part.
> Regards,

Dipl.-Ing. (FH) Frank Enderle

anamica UG (haftungsbeschränkt)
Beinsteinerstr. 6
71334 Waiblingen

Telefon:  +49 151 14981091
Telefax:  +49 7151 1335770
E-Mail:   frank.enderle at anamica.de
Internet: www.anamica.de

Handelsregister: AG Stuttgart HRB 732357
Geschäftsführer: Yvonne Holzwarth, Frank Enderle

More information about the vlc-devel mailing list