This function is similar to _x_query_buffer_usage() but retrieves also
the total and available (= free) number of buffers besides the number
of buffers ready for processing. For example if one wants to create a
buffering algorithm based on the number of frames ready, it's not that
easy to determine the maximum number of ready frames possible. In case
one configures engine.buffers.video_num_frames:50 it may happen, that
only 30 frames can actually be provided by the video out driver. Next
a video codec like H.264 may hold several frames in its display picture
buffer so that you may end up with only 13 ready frames at maximum. At
the same time, the number of available (= free) frames will be 0 (or
almost zero in case of vo). So it may be even easier to base the buffer
algorithm on the number of free buffers.
The reported numbers may also reveal that too few input buffers have
been provided to compensate a large a/v offset at input stage.
include/xine/audio_out.h | 4 ++-
include/xine/video_out.h | 4 ++-
include/xine/xine_internal.h | 17 +++++++++++
src/xine-engine/audio_out.c | 20 +++++++++++--
src/xine-engine/video_out.c | 8 +++++
src/xine-engine/xine.c | 63 ++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 111 insertions(+), 5 deletions(-)
Get latest updates about Open Source Projects, Conferences and News.