sig
module type Fdkaac_t =
sig
module Encoder :
sig
exception Invalid_handle
exception Unsupported_parameter
exception Invalid_config
exception Error of int
exception End_of_file
exception Unknown of int
val string_of_exception : exn -> string option
type t
type mpeg2_aac = [ `AAC_LC | `HE_AAC | `HE_AAC_v2 ]
type mpeg4_aac =
[ `AAC_ELD | `AAC_LC | `AAC_LD | `HE_AAC | `HE_AAC_v2 ]
type aot =
[ `Mpeg_2 of Fdkaac_dynlink.Fdkaac_t.Encoder.mpeg2_aac
| `Mpeg_4 of Fdkaac_dynlink.Fdkaac_t.Encoder.mpeg4_aac ]
type bitrate_mode =
[ `Constant | `Full_bitreservoir | `Variable of int ]
type transmux =
[ `Adif | `Adts | `Latm | `Latm_out_of_band | `Loas | `Raw ]
type param_name =
[ `Afterburner
| `Aot
| `Bandwidth
| `Bitrate
| `Bitrate_mode
| `Granule_length
| `Samplerate
| `Sbr_mode
| `Transmux ]
type param =
[ `Afterburner of bool
| `Aot of Fdkaac_dynlink.Fdkaac_t.Encoder.aot
| `Bandwidth of bool
| `Bitrate of int
| `Bitrate_mode of Fdkaac_dynlink.Fdkaac_t.Encoder.bitrate_mode
| `Granule_length of int
| `Samplerate of int
| `Sbr_mode of bool
| `Transmux of Fdkaac_dynlink.Fdkaac_t.Encoder.transmux ]
val create : int -> Fdkaac_dynlink.Fdkaac_t.Encoder.t
val set :
Fdkaac_dynlink.Fdkaac_t.Encoder.t ->
Fdkaac_dynlink.Fdkaac_t.Encoder.param -> unit
val get :
Fdkaac_dynlink.Fdkaac_t.Encoder.t ->
Fdkaac_dynlink.Fdkaac_t.Encoder.param_name ->
Fdkaac_dynlink.Fdkaac_t.Encoder.param
val encode :
Fdkaac_dynlink.Fdkaac_t.Encoder.t ->
string -> int -> int -> string
val flush : Fdkaac_dynlink.Fdkaac_t.Encoder.t -> string
end
end
type handler = {
mutable fdkaac_module : (module Fdkaac_dynlink.Fdkaac_t) option;
}
val handler : Fdkaac_dynlink.handler
end