module From_audio_video_plus: sig
.. end
Same as From_audio_video but with two extra features useful for streaming
decoders: it is thread safe and supports overfull buffer management.
type
t
type
mode = [ `Audio | `Both | `Undefined | `Video ]
Same as From_audio_video
.
type
overfull = [ `Drop_old of int ]
How to handle overfull buffers:
drop old data, keeping at most len
ticks.
val create : ?lock:Mutex.t ->
?overfull:overfull ->
kind:Frame.content_kind ->
log:(string -> unit) ->
mode -> t
val mode : t -> Generator.From_audio_video.mode
val set_mode : t -> Generator.From_audio_video.mode -> unit
val audio_length : t -> int
val video_length : t -> int
val length : t -> int
val remaining : t -> int
val set_rewrite_metadata : t ->
(Frame.metadata -> Frame.metadata) -> unit
val add_metadata : t -> Frame.metadata -> unit
val add_break : ?sync:[ `Drop | `Ignore | `Strict ] ->
t -> unit
val put_audio : t ->
Frame.audio_t array -> int -> int -> unit
val put_video : t ->
Frame.video_t array -> int -> int -> unit
val fill : t -> Frame.t -> unit
val remove : t -> int -> unit
val clear : t -> unit