sig
  type t
  val set_property_string : Gstreamer.Element.t -> string -> string -> unit
  val set_property_int : Gstreamer.Element.t -> string -> string -> unit
  val set_property_bool : Gstreamer.Element.t -> string -> string -> unit
  type state =
      State_void_pending
    | State_null
    | State_ready
    | State_paused
    | State_playing
  val string_of_state : Gstreamer.Element.state -> string
  type state_change =
      State_change_success
    | State_change_async
    | State_change_no_preroll
  val set_state :
    Gstreamer.Element.t ->
    Gstreamer.Element.state -> Gstreamer.Element.state_change
  val get_state :
    Gstreamer.Element.t ->
    Gstreamer.Element.state_change * Gstreamer.Element.state *
    Gstreamer.Element.state
  val link : Gstreamer.Element.t -> Gstreamer.Element.t -> unit
  val link_many : Gstreamer.Element.t list -> unit
  val position : Gstreamer.Element.t -> Gstreamer.Format.t -> Stdlib.Int64.t
  val duration : Gstreamer.Element.t -> Gstreamer.Format.t -> Stdlib.Int64.t
  val seek_simple :
    Gstreamer.Element.t ->
    Gstreamer.Format.t ->
    Gstreamer.Event.seek_flag list -> Stdlib.Int64.t -> unit
end