class virtual queued : kind:Frame.content_kind -> name:string -> ?length:float -> ?default_duration:float -> ?conservative:bool -> ?timeout:float -> unit ->
object
.. end
Same thing, with a queue in which we prefetch files,
which requests are given by get_next_request
.
Heuristical settings determining how the source feeds its queue:
- the source tries to have more than
length
seconds in queue
- if the duration of a file is unknown we use
default_duration
seconds
- downloading a file is required to take less than
timeout
seconds
Inherits
method copy_queue : Request.t list
method stype : Source.source_t
method virtual get_next_request : Request.t option
You should only define this.
method private notify_new_request : unit
This method should be called whenever the feeding task gets
a new opportunity to add more data into the queue.
method private get_next_file : Request.t option
Everything you need is defined. Dont touch.
method private expire : (Request.t -> bool) -> unit
#expire f
marks queued requests r
such that f r
as expired,
which will trigger their removal from the queue as soon as possible .