sig
  exception Not_implemented
  module Pixel :
    sig
      type rgb_format = RGB24 | BGR24 | RGB32 | BGR32 | RGBA32
      type yuv_format =
          YUV422
        | YUV444
        | YUV411
        | YUV410
        | YUVJ420
        | YUVJ422
        | YUVJ444
      type format =
          RGB of Image.Generic.Pixel.rgb_format
        | YUV of Image.Generic.Pixel.yuv_format
      val string_of_format : Image.Generic.Pixel.format -> string
    end
  type data =
      (int, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
  type t
  val width : Image.Generic.t -> int
  val height : Image.Generic.t -> int
  val pixel_format : Image.Generic.t -> Image.Generic.Pixel.format
  val make_rgb :
    Image.Generic.Pixel.rgb_format ->
    ?stride:int -> int -> int -> Image.Generic.data -> Image.Generic.t
  val rgb_data : Image.Generic.t -> Image.Generic.data * int
  val yuv_data :
    Image.Generic.t ->
    (Image.Generic.data * int) *
    (Image.Generic.data * Image.Generic.data * int)
  val of_RGBA32 : Image.RGBA32.t -> Image.Generic.t
  val of_YUV420 : Image.YUV420.t -> Image.Generic.t
  val convert :
    ?copy:bool ->
    ?proportional:bool ->
    ?scale_kind:Image.RGBA32.Scale.kind ->
    Image.Generic.t -> Image.Generic.t -> unit
end