speex

Bindings to libspeex
IN THIS PACKAGE
Module Speex . Header
type t = {
id : string;
version : string;
version_id : int;
header_size : int;
rate : int;
mode : mode;
mode_bitstream_version : int;
nb_channels : int;
bitrate : int;
frame_size : int;
vbr : bool;
frames_per_packet : int;
extra_headers : int;
}

Type for speex header.

val header_string_length : int
val header_version_length : int
val init : ?frames_per_packet:int -> ?mode:mode -> ?vbr:bool -> nb_channels:int -> rate:int -> unit -> t

Initiate a new speex header.

val encode_header_packetout : t -> (string * string) list -> Ogg.Stream.packet * Ogg.Stream.packet

encode_header_packetout header metadata: output ogg packets containing the header. * First packet contains speex audio codec settings, second the metadata.

val encode_header : t -> (string * string) list -> Ogg.Stream.stream -> unit

Output ogg packets containing the header and put them into the given stream.

val header_of_packet : Ogg.Stream.packet -> t

Decode the speex header contained in the given packet. * * Raises Invalid_argument if the packet does not contain speex audio codec data.

val comments_of_packet : Ogg.Stream.packet -> string * (string * string) list

Decode the metadata contained in the given packet. * * Raises Invalid_argument if the packet does not contain speex metadata.