package ffmpeg

  1. Overview
  2. Docs
module Format : sig ... end
val open_input : string -> Avutil.input Avutil.container
val open_input_format : (Avutil.input, 'a) Avutil.format -> Avutil.input Avutil.container
type read = bytes -> int -> int -> int
type write = bytes -> int -> int -> int
type seek = int -> Unix.seek_command -> int
val open_input_stream : ?seek:seek -> read -> Avutil.input Avutil.container
val get_input_duration : ?format:Avutil.Time_format.t -> Avutil.input Avutil.container -> Int64.t
val get_input_metadata : Avutil.input Avutil.container -> (string * string) list
type ('line, 'media) stream
val get_index : ('a, 'b) stream -> int
val get_codec_params : ('a, 'media) stream -> 'media Avcodec.params
val get_time_base : ('a, 'b) stream -> Avutil.rational
val set_time_base : ('a, 'b) stream -> Avutil.rational -> unit
val get_duration : ?format:Avutil.Time_format.t -> (Avutil.input, 'a) stream -> Int64.t
val get_metadata : (Avutil.input, 'a) stream -> (string * string) list
val select : (Avutil.input, 'a) stream -> unit
val read_packet : (Avutil.input, 'media) stream -> 'media Avcodec.Packet.t
val iter_packet : ('media Avcodec.Packet.t -> unit) -> (Avutil.input, 'media) stream -> unit
val read_frame : (Avutil.input, 'media) stream -> 'media Avutil.frame
val iter_frame : ('media Avutil.frame -> unit) -> (Avutil.input, 'media) stream -> unit
type input_packet_result = [
  1. | `Audio of int * Avutil.audio Avcodec.Packet.t
  2. | `Subtitle of int * Avutil.subtitle Avcodec.Packet.t
  3. | `Video of int * Avutil.video Avcodec.Packet.t
]
val iter_input_packet : ?audio:(int -> Avutil.audio Avcodec.Packet.t -> unit) -> ?video:(int -> Avutil.video Avcodec.Packet.t -> unit) -> ?subtitle:(int -> Avutil.subtitle Avcodec.Packet.t -> unit) -> Avutil.input Avutil.container -> unit
type input_frame_result = [
  1. | `Audio of int * Avutil.audio Avutil.frame
  2. | `Subtitle of int * Avutil.subtitle Avutil.frame
  3. | `Video of int * Avutil.video Avutil.frame
]
val iter_input_frame : ?audio:(int -> Avutil.audio Avutil.frame -> unit) -> ?video:(int -> Avutil.video Avutil.frame -> unit) -> ?subtitle:(int -> Avutil.subtitle Avutil.frame -> unit) -> Avutil.input Avutil.container -> unit
type seek_flag =
  1. | Seek_flag_backward
  2. | Seek_flag_byte
  3. | Seek_flag_any
  4. | Seek_flag_frame
val seek : (Avutil.input, 'a) stream -> Avutil.Time_format.t -> Int64.t -> seek_flag array -> unit
val reuse_output : Avutil.input Avutil.container -> bool -> unit
val open_output : ?opts:Avutil.opts -> string -> Avutil.output Avutil.container
val open_output_stream : ?opts:Avutil.opts -> ?seek:seek -> write -> (Avutil.output, 'a) Avutil.format -> Avutil.output Avutil.container
val set_output_metadata : Avutil.output Avutil.container -> (string * string) list -> unit
val set_metadata : (Avutil.output, 'a) stream -> (string * string) list -> unit
val mk_audio_opts : ?channels:int -> ?channel_layout:Avutil.Channel_layout.t -> ?bit_rate:int -> ?sample_rate:int -> ?sample_format:Avutil.Sample_format.t -> ?time_base:Avutil.rational -> ?params:Avutil.audio Avcodec.params -> ?stream:('a, Avutil.audio) stream -> unit -> Avutil.opts
val new_audio_stream : ?opts:Avutil.opts -> codec:[ `Encoder ] Avcodec.Audio.t -> Avutil.output Avutil.container -> (Avutil.output, Avutil.audio) stream
val mk_video_opts : ?pixel_format:Avutil.Pixel_format.t -> ?size:(int * int) -> ?bit_rate:int -> ?frame_rate:int -> ?time_base:Avutil.rational -> ?params:Avutil.video Avcodec.params -> ?stream:('a, Avutil.video) stream -> unit -> Avutil.opts
val new_video_stream : ?opts:Avutil.opts -> codec:[ `Encoder ] Avcodec.Video.t -> Avutil.output Avutil.container -> (Avutil.output, Avutil.video) stream
val mk_subtitle_opts : ?time_base:Avutil.rational -> unit -> Avutil.opts
val new_subtitle_stream : ?opts:Avutil.opts -> codec:[ `Encoder ] Avcodec.Subtitle.t -> Avutil.output Avutil.container -> (Avutil.output, Avutil.subtitle) stream
val write_packet : (Avutil.output, 'media) stream -> 'media Avcodec.Packet.t -> unit
val write_frame : (Avutil.output, 'media) stream -> 'media Avutil.frame -> unit
val write_audio_frame : Avutil.output Avutil.container -> Avutil.audio Avutil.frame -> unit
val write_video_frame : Avutil.output Avutil.container -> Avutil.video Avutil.frame -> unit
val close : 'a Avutil.container -> unit