Module Speex.Header

module Header: sig .. end

type t = {
   id :string;
   version :string;
   version_id :int;
   header_size :int;
   rate :int;
   mode :Speex.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:Speex.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.t -> 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.