docs: review the buffering docs

This commit is contained in:
Wim Taymans 2012-06-15 15:48:42 +02:00
parent 7fb522718e
commit 3c16844f4d

View file

@ -18,7 +18,6 @@ We want to be able to implement the following features:
- caching of semi-live streams to a local, on disk, ringbuffer with seeking in - caching of semi-live streams to a local, on disk, ringbuffer with seeking in
the cached area. This is similar to tivo-like timeshifting. the cached area. This is similar to tivo-like timeshifting.
- progress report about the buffering operations - progress report about the buffering operations
- easy (backward compatible) application notification of buffering
- the possibility for the application to do more complex buffering - the possibility for the application to do more complex buffering
Some use cases: Some use cases:
@ -211,6 +210,17 @@ range in a specific format and the estimated time to complete:
this information to estimate the amount of remaining time to download the this information to estimate the amount of remaining time to download the
complete file. complete file.
"buffering-ranges", G_TYPE_ARRAY of GstQueryBufferingRange
- contains optionally the downloaded areas in the format given above. One
of the ranges contains the same start/stop position as above.
typedef struct
{
gint64 start;
gint64 stop;
} GstQueryBufferingRange;
For the "download" and "timeshift" buffering-modes, the start and stop positions For the "download" and "timeshift" buffering-modes, the start and stop positions
specify the ranges where efficient seeking in the downloaded media is possible. specify the ranges where efficient seeking in the downloaded media is possible.
Seeking outside of these ranges might be slow or not at all possible. Seeking outside of these ranges might be slow or not at all possible.
@ -235,6 +245,7 @@ A GstBaseSrc with random access replies to the BUFFERING query with:
"start" = 0 "start" = 0
"stop" = the total filesize "stop" = the total filesize
"estimated-total" = 0 "estimated-total" = 0
"buffering-ranges" = NULL
A GstBaseSrc in push mode replies to the BUFFERING query with: A GstBaseSrc in push mode replies to the BUFFERING query with:
@ -247,6 +258,7 @@ A GstBaseSrc in push mode replies to the BUFFERING query with:
"start" = current position "start" = current position
"stop" = current position "stop" = current position
"estimated-total" = -1 "estimated-total" = -1
"buffering-ranges" = NULL
Buffering strategies Buffering strategies