sig
  type t = Image.RGBA32.t
  val create : int -> int -> Video.Image.t
  val of_RGB24_string : string -> int -> Video.Image.t
  val to_int_image : Video.Image.t -> int array array
  val copy : Video.Image.t -> Video.Image.t
  val width : Video.Image.t -> int
  val height : Video.Image.t -> int
  val dimensions : Video.Image.t -> int * int
  val size : Video.Image.t -> int
  val blank : Video.Image.t -> unit
  val fill_alpha : Video.Image.t -> int -> unit
  val scale : ?proportional:bool -> Video.Image.t -> Video.Image.t -> unit
  val randomize : Video.Image.t -> unit
  val blit :
    Video.Image.t -> ?blank:bool -> ?x:int -> ?y:int -> Video.Image.t -> unit
  val get_pixel_rgba : Video.Image.t -> int -> int -> int * int * int * int
  val set_pixel_rgba :
    Video.Image.t -> int -> int -> int * int * int * int -> unit
  val add : Video.Image.t -> ?x:int -> ?y:int -> Video.Image.t -> unit
  module Effect :
    sig
      val greyscale : Video.Image.t -> unit
      val sepia : Video.Image.t -> unit
      val invert : Video.Image.t -> unit
      val lomo : Video.Image.t -> unit
    end
end