module Sync:sig
..end
type
t
val create : (int -> string * int) -> t
This function is used to initialize a Sync.t
to a known initial value
in preparation for manipulation of an Ogg bitstream.
The function passed is used to fill the stream with new data. It receives a number of bytes to read and returns a string read and its size.
val create_from_file : string -> t * Unix.file_descr
Wrapper around create
to open a file as the ogg stream.
val read : t -> Ogg.Page.t
Read a page from Sync.t
Raises End_of_stream
if the reading function returned an empty string.
Raises Out_of_sync
if data is not synced and some byte where skiped.
val reset : ?read_func:(int -> string * int) -> t -> unit
This function is used to reset the internal counters of the
Sync.t
to initial values.
read_func
is optional and is a new function to read new data.
val seek : t -> Ogg.Page.t
This function synchronizes the ogg_sync_state struct to the next ogg_page.
This is useful when seeking within a bitstream. page_seek will synchronize to the next page in the bitstream and return information about how many bytes we advanced or skipped in order to do so.