package vendor:vorbisfile

⌘K
Ctrl+K
or
/

    Types

    OggVorbis_File ¶

    OggVorbis_File :: struct {
    	datasource:       rawptr,
    	// Pointer to a FILE *, etc.
    	seekable:         i32,
    	offset:           i64,
    	end:              i64,
    	oy:               ogg.ogg_sync_state,
    	// If the FILE handle isn't seekable (eg, a pipe), only the current stream appears
    	links:            i32,
    	offsets:          ^i64,
    	dataoffsets:      ^i64,
    	serialnos:        ^i64,
    	pcmlengths:       ^i64,
    	// overloaded to maintain binary compatibility; x2 size, stores both beginning and end values
    	vi:               ^vorbis.vorbis_info,
    	vc:               ^vorbis.vorbis_comment,
    	// Decoding working state local storage
    	pcm_offset:       i64,
    	ready_state:      i32,
    	current_serialno: i64,
    	current_link:     i32,
    	bittrack:         f64,
    	samptrack:        f64,
    	os:               ogg.ogg_stream_state,
    	// take physical pages, weld into a logical stream of packets
    	vd:               vorbis.vorbis_dsp_state,
    	// central working state for the packet->PCM decoder
    	vb:               vorbis.vorbis_block,
    	// local working space for packet->PCM decode
    	callbacks:        ov_callbacks,
    }
    Related Procedures With Parameters

    ov_callbacks ¶

    ov_callbacks :: struct {
    	read_func:  proc "c" (ptr: rawptr, size: uint, nmemb: uint, datasource: rawptr) -> uint,
    	seek_func:  proc "c" (datasource: rawptr, offset: i64, whence: i32) -> i32,
    	close_func: proc "c" (datasource: rawptr) -> i32,
    	tell_func:  proc "c" (datasource: rawptr) -> i64,
    }
    Related Procedures With Parameters

    Constants

    INITSET ¶

    INITSET: int : 4

    NOTOPEN ¶

    NOTOPEN: int : 0
     

    State values

    OPENED ¶

    OPENED: int : 2

    PARTOPEN ¶

    PARTOPEN: int : 1

    STREAMSET ¶

    STREAMSET: int : 3

    Variables

    OV_CALLBACKS_DEFAULT ¶

    OV_CALLBACKS_DEFAULT: ov_callbacks = …

    OV_CALLBACKS_NOCLOSE ¶

    OV_CALLBACKS_NOCLOSE: ov_callbacks = …

    OV_CALLBACKS_STREAMONLY ¶

    OV_CALLBACKS_STREAMONLY: ov_callbacks = …

    OV_CALLBACKS_STREAMONLY_NOCLOSE ¶

    OV_CALLBACKS_STREAMONLY_NOCLOSE: ov_callbacks = …

    Procedures

    ov_bitrate ¶

    ov_bitrate :: proc "c" (vf: ^OggVorbis_File, i: i32) -> i64 ---

    ov_bitrate_instant ¶

    ov_bitrate_instant :: proc "c" (vf: ^OggVorbis_File) -> i64 ---

    ov_clear ¶

    ov_clear :: proc "c" (vf: ^OggVorbis_File) -> i32 ---

    ov_comment ¶

    ov_comment :: proc "c" (vf: ^OggVorbis_File, link: i32) -> ^vorbis.vorbis_comment ---

    ov_crosslap ¶

    ov_crosslap :: proc "c" (vf1: ^OggVorbis_File, vf2: ^OggVorbis_File) -> i32 ---

    ov_fopen ¶

    ov_fopen :: proc "c" (path: cstring, vf: ^OggVorbis_File) -> i32 ---

    ov_halfrate ¶

    ov_halfrate :: proc "c" (vf: ^OggVorbis_File, flag: i32) -> i32 ---

    ov_halfrate_p ¶

    ov_halfrate_p :: proc "c" (vf: ^OggVorbis_File) -> i32 ---

    ov_info ¶

    ov_info :: proc "c" (vf: ^OggVorbis_File, link: i32) -> ^vorbis.vorbis_info ---

    ov_open ¶

    ov_open :: proc "c" (f: ^c.FILE, vf: ^OggVorbis_File, initial: [^]u8, ibytes: i64) -> i32 ---

    ov_open_callbacks ¶

    ov_open_callbacks :: proc "c" (datasource: rawptr, vf: ^OggVorbis_File, initial: [^]u8, ibytes: i64, callbacks: ov_callbacks) -> i32 ---

    ov_pcm_seek ¶

    ov_pcm_seek :: proc "c" (vf: ^OggVorbis_File, pos: i64) -> i32 ---

    ov_pcm_seek_lap ¶

    ov_pcm_seek_lap :: proc "c" (vf: ^OggVorbis_File, pos: i64) -> i32 ---

    ov_pcm_seek_page ¶

    ov_pcm_seek_page :: proc "c" (vf: ^OggVorbis_File, pos: i64) -> i32 ---

    ov_pcm_seek_page_lap ¶

    ov_pcm_seek_page_lap :: proc "c" (vf: ^OggVorbis_File, pos: i64) -> i32 ---

    ov_pcm_tell ¶

    ov_pcm_tell :: proc "c" (vf: ^OggVorbis_File) -> i64 ---

    ov_pcm_total ¶

    ov_pcm_total :: proc "c" (vf: ^OggVorbis_File, i: i32) -> i64 ---

    ov_raw_seek ¶

    ov_raw_seek :: proc "c" (vf: ^OggVorbis_File, pos: i64) -> i32 ---

    ov_raw_seek_lap ¶

    ov_raw_seek_lap :: proc "c" (vf: ^OggVorbis_File, pos: i64) -> i32 ---

    ov_raw_tell ¶

    ov_raw_tell :: proc "c" (vf: ^OggVorbis_File) -> i64 ---

    ov_raw_total ¶

    ov_raw_total :: proc "c" (vf: ^OggVorbis_File, i: i32) -> i64 ---

    ov_read ¶

    ov_read :: proc "c" (
    	vf:         ^OggVorbis_File, 
    	buffer:     [^]u8, 
    	length:     i32, 
    	bigendianp: i32, 
    	word:       i32, 
    	sgned:      i32, 
    	bitstream:  ^i32, 
    ) -> i64 ---

    ov_read_filter ¶

    ov_read_filter :: proc "c" (
    	vf:           ^OggVorbis_File, 
    	buffer:       [^]u8, 
    	length:       i32, 
    	bigendianp:   i32, 
    	word:         i32, 
    	sgned:        i32, 
    	bitstream:    ^i32, 
    	filter:       proc "c" (pcm: ^^f32, channels: i64, samples: i64, filter_param: rawptr), 
    	filter_param: rawptr, 
    ) -> i64 ---

    ov_read_float ¶

    ov_read_float :: proc "c" (vf: ^OggVorbis_File, pcm_channels: ^^^f32, samples: i32, bitstream: ^i32) -> i64 ---

    ov_seekable ¶

    ov_seekable :: proc "c" (vf: ^OggVorbis_File) -> i64 ---

    ov_serialnumber ¶

    ov_serialnumber :: proc "c" (vf: ^OggVorbis_File, i: i32) -> i64 ---

    ov_streams ¶

    ov_streams :: proc "c" (vf: ^OggVorbis_File) -> i64 ---

    ov_test ¶

    ov_test :: proc "c" (f: ^c.FILE, vf: ^OggVorbis_File, initial: [^]u8, ibytes: i64) -> i32 ---

    ov_test_callbacks ¶

    ov_test_callbacks :: proc "c" (datasource: rawptr, vf: ^OggVorbis_File, initial: [^]u8, ibytes: i64, callbacks: ov_callbacks) -> i32 ---

    ov_test_open ¶

    ov_test_open :: proc "c" (vf: ^OggVorbis_File) -> i32 ---

    ov_time_seek ¶

    ov_time_seek :: proc "c" (vf: ^OggVorbis_File, pos: f64) -> i32 ---

    ov_time_seek_lap ¶

    ov_time_seek_lap :: proc "c" (vf: ^OggVorbis_File, pos: f64) -> i32 ---

    ov_time_seek_page ¶

    ov_time_seek_page :: proc "c" (vf: ^OggVorbis_File, pos: f64) -> i32 ---

    ov_time_seek_page_lap ¶

    ov_time_seek_page_lap :: proc "c" (vf: ^OggVorbis_File, pos: f64) -> i32 ---

    ov_time_tell ¶

    ov_time_tell :: proc "c" (vf: ^OggVorbis_File) -> f64 ---

    ov_time_total ¶

    ov_time_total :: proc "c" (vf: ^OggVorbis_File, i: i32) -> f64 ---

    Procedure Groups

    This section is empty.

    Source Files

    Generation Information

    Generated with odin version dev-v0.0.1 (vendor "odin") Linux_amd64 @ 2026-01-30 10:23:18.392798216 +0000 UTC