googg

package module
v0.0.0-...-def2bc5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 4, 2024 License: MIT Imports: 10 Imported by: 1

README

GoOGG

These are golang bindings and a wrapper around libOGG.

Usage

Use go get -u to download and install the prebuilt package.

go get -u github.com/ilya2ik/googg
Example for usage
package main

import (
    "io"
    "os"

    OGG "github.com/ilya2ik/googg"
)

func check(e error) {
    if e != nil {
        panic(e)
    }
}

const READ_CHUNK = 1024
const BUF_SIZE = 4096
const OGG_CHUNK = 256

func main() {
    // open file main.go to encode it in ogg format
    f, err := os.Open("main.go")
    check(err)

    // create new file main.go.ogg to save encoded data
    sf, err := os.Create("main.go.ogg")
    check(err)

    // generate ogg encoder (writing encoded data in fragments of data no larger than OGG_CHUNK)
    enc, err := OGG.NewEncoder(OGG_CHUNK, sf)
    check(err)

    // write header to the output file
    enc.SetWriteHeaderFunc(func(id int) ([]byte, error) {
        seq := [...]byte{0xff, 0x00, 0xff, 0xaa}
        return seq[0:], nil
    })
    check(enc.WriteHeader(0))

    // read data from file, encode and save to the output file
    buf := make([]byte, 0, READ_CHUNK)
    for true {
        n, err := f.Read(buf[0:READ_CHUNK])
        if err == io.EOF {
            break
        }
        check(err)

        _, err = enc.Write(buf[0:n])
        check(err)
    }
    enc.Close()
    sf.Close()
    f.Close()

    // open file main.go.ogg to read encoded data from
    f, err = os.Open("main.go.ogg")
    check(err)
    defer f.Close()

    // create new file main.out to save decoded data to
    sf, err = os.Create("main.out")
    check(err)
    defer sf.Close()

    // generate ogg decoder
    dec, err := OGG.NewDecoder(BUF_SIZE, f)
    check(err)
    defer dec.Close()

    // read header from the encoded file
    check(dec.ReadHeaders(1))

    // read data from file, decode and save to the output file
    for true {
        n, err := dec.Read(buf[0:READ_CHUNK])
        if err == io.EOF {
            break
        }
        check(err)

        _, err = sf.Write(buf[0:n])
        check(err)
    }
}

Documentation

Index

Constants

This section is empty.

Variables

View Source
var EOGGException = errOGGException{}
View Source
var EOGGOutOfMemory = errOGGOutOfMemory{nil}

Functions

func Ptr

func Ptr(data interface{}) unsafe.Pointer

Types

type ByteGranuleConvertFunc

type ByteGranuleConvertFunc = func(pos int64) int64

type Decoder

type Decoder struct {
	// contains filtered or unexported fields
}

func NewDecoder

func NewDecoder(aBufferSize int64, aReader io.Reader) (*Decoder, error)

func (*Decoder) ByteSeek

func (v *Decoder) ByteSeek(pos int64) error

func (*Decoder) BytesFromGranule

func (v *Decoder) BytesFromGranule(pos int64) int64

func (*Decoder) Close

func (v *Decoder) Close() error

func (*Decoder) GranuleFromBytes

func (v *Decoder) GranuleFromBytes(pos int64) int64

func (*Decoder) GranuleSeek

func (v *Decoder) GranuleSeek(pos int64) error

func (*Decoder) OggPosition

func (v *Decoder) OggPosition() int64

func (*Decoder) Read

func (v *Decoder) Read(buf []byte) (int, error)

func (*Decoder) ReadHeaders

func (v *Decoder) ReadHeaders(maxheaders int) error

func (*Decoder) ResetToStart

func (v *Decoder) ResetToStart() error

func (*Decoder) SetBytesFromGranuleConvertFunc

func (v *Decoder) SetBytesFromGranuleConvertFunc(f ByteGranuleConvertFunc)

func (*Decoder) SetGranuleFromBytesConvertFunc

func (v *Decoder) SetGranuleFromBytesConvertFunc(f ByteGranuleConvertFunc)

func (*Decoder) SetOnReadHeader

func (v *Decoder) SetOnReadHeader(f ReadHeaderFunc)

type Encoder

type Encoder struct {
	// contains filtered or unexported fields
}

func NewEncoder

func NewEncoder(aChunkSize int, aWriter io.Writer) (*Encoder, error)

func (*Encoder) Close

func (v *Encoder) Close() error

func (*Encoder) Done

func (v *Encoder) Done()

func (*Encoder) Flush

func (v *Encoder) Flush() error

func (*Encoder) GranuleFromBytes

func (v *Encoder) GranuleFromBytes(pos int64) int64

func (*Encoder) Reset

func (v *Encoder) Reset() error

func (*Encoder) SetGranuleFromBytesConvertFunc

func (v *Encoder) SetGranuleFromBytesConvertFunc(f ByteGranuleConvertFunc)

func (*Encoder) SetWriteHeaderFunc

func (v *Encoder) SetWriteHeaderFunc(f WriteHeaderFunc)

func (*Encoder) Write

func (v *Encoder) Write(buffer []byte) (int, error)

func (*Encoder) WriteEOS

func (v *Encoder) WriteEOS() error

func (*Encoder) WriteHeader

func (v *Encoder) WriteHeader(id int) error

func (*Encoder) WriteOggStream

func (v *Encoder) WriteOggStream(aFlush bool) error

type IDecoder

type IDecoder interface {
	ResetToStart() error
	ReadHeaders(maxheaders int) error
	GranuleSeek(pos int64) error
	ByteSeek(pos int64) error
	GranuleFromBytes(pos int64) int64
	BytesFromGranule(pos int64) int64
}

type IEncoder

type IEncoder interface {
	WriteHeader(id int) error
	WriteEOS() error
	Flush() error
	Reset() error
	Done()
	GranuleFromBytes(pos int64) int64
}

type IOGGIOVec

type IOGGIOVec interface {
	Ref() *C.ogg_iovec_t

	AddBuffer(iov_base unsafe.Pointer, iov_len uint64)
	GetBufferAt(pos int) *C.ogg_iovec_t
	Count() int
}

func NewIOVecListed

func NewIOVecListed() IOGGIOVec

func NewIOVecStream

func NewIOVecStream(aRef []byte) IOGGIOVec

type IOGGPackBuffer

type IOGGPackBuffer interface {
	Ref() *C.oggpack_buffer

	SetEndianMode(e binary.ByteOrder)
	GetEndianMode() binary.ByteOrder

	WriteInit()
	WriteCheck() int
	WriteTrunc(bits int64)
	WriteAlign()
	WriteCopy(source unsafe.Pointer, bits int64)
	Reset()
	WriteClear()
	ReadInit(buf *byte, bytes int)
	Write(value uint32, bits int)
	Look(bits int) int64
	Look1bit() int64
	Adv(bits int)
	Adv1bit()
	Read(bits int) int64
	Read1() int64
	Bytes() int64
	Bits() int64
	GetBuffer() *byte
}

func NewPackBuffer

func NewPackBuffer(aEndian binary.ByteOrder) (IOGGPackBuffer, error)

func RefPackBuffer

func RefPackBuffer(aRef *C.oggpack_buffer, aEndian binary.ByteOrder) IOGGPackBuffer

type IOGGPacket

type IOGGPacket interface {
	Ref() *C.ogg_packet

	GetBOS() bool
	GetData() unsafe.Pointer
	GetEOS() bool
	GetGranulePos() int64
	GetPacketNum() int64
	GetSize() int64

	SetBOS(AValue bool)
	SetData(AValue unsafe.Pointer)
	SetEOS(AValue bool)
	SetGranulePos(AValue int64)
	SetPacketNum(AValue int64)
	SetSize(AValue int64)

	Clear()
}

func NewBOSPacket

func NewBOSPacket(data unsafe.Pointer, sz, num, granule int64) (IOGGPacket, error)

func NewEOSPacket

func NewEOSPacket(data unsafe.Pointer, sz, num, granule int64) (IOGGPacket, error)

func NewPacket

func NewPacket() (IOGGPacket, error)

func NewPacketExt

func NewPacketExt(data unsafe.Pointer, sz, num, granule int64, isEOS, isBOS bool) (IOGGPacket, error)

func NewSizedPacket

func NewSizedPacket(data unsafe.Pointer, sz, num, granule int64) (IOGGPacket, error)

func RefPacket

func RefPacket(st *C.ogg_packet) IOGGPacket

type IOGGPage

type IOGGPage interface {
	Ref() *C.ogg_page

	ChecksumSet()
	Version() int
	Continued() bool
	BoS() bool
	EoS() bool
	GranulePos() int64
	SerialNo() int32
	PageNo() int64
	Packets() int
}

func NewPage

func NewPage() (IOGGPage, error)

func RefPage

func RefPage(st *C.ogg_page) IOGGPage

type IOGGStreamState

type IOGGStreamState interface {
	Ref() *C.ogg_stream_state

	Init(serialno int32) error
	Done()

	Clear()
	Reset() error
	ResetSerialNo(serialno int32) int
	Check() bool
	EoS() bool

	PacketIn(op IOGGPacket) error
	IOVecIn(iov IOGGIOVec, e_o_s bool, granulepos int64) error
	PageOutNew() (IOGGPage, error)
	PageFlushNew() (IOGGPage, error)
	PageOut(og IOGGPage) bool
	PageOutFill(og IOGGPage, nfill int) bool
	PageOutToStream(aStr io.Writer) error
	PageFlushToStream(aStr io.Writer) error
	PagesOutToStream(aStr io.Writer) error
	PagesFlushToStream(aStr io.Writer) error
	SavePacketToStream(aStr io.Writer, op IOGGPacket) error
	Flush(og IOGGPage) bool
	FlushFill(og IOGGPage, nfill int) bool

	PageIn(og IOGGPage) error
	PageInIgnoreErrors(og IOGGPage) int
	PacketOut(op IOGGPacket) (bool, error)
	PacketOutIgnoreErrors(op IOGGPacket) int
	PacketPeek(op IOGGPacket) (bool, error)
}

func NewStream

func NewStream(serialno int32) (IOGGStreamState, error)

func RefStream

func RefStream(st *C.ogg_stream_state) IOGGStreamState

type IOGGSyncState

type IOGGSyncState interface {
	Ref() *C.ogg_sync_state

	Init() int
	Done() int

	Clear() int
	Reset() int
	Check() int
	Buffer(size int64) unsafe.Pointer
	Wrote(bytes int64) int
	PageSeek(og IOGGPage) int64
	PageOut(og IOGGPage) int
}

func NewSyncState

func NewSyncState() (IOGGSyncState, error)

func RefSyncState

func RefSyncState(st *C.ogg_sync_state) IOGGSyncState

type OGGIOVecListed

type OGGIOVecListed struct {
	// contains filtered or unexported fields
}

func NewOGGIOVecListed

func NewOGGIOVecListed() *OGGIOVecListed

func (*OGGIOVecListed) AddBuffer

func (v *OGGIOVecListed) AddBuffer(iov_base unsafe.Pointer, iov_len uint64)

func (*OGGIOVecListed) Count

func (v *OGGIOVecListed) Count() int

func (*OGGIOVecListed) GetBufferAt

func (v *OGGIOVecListed) GetBufferAt(pos int) *C.ogg_iovec_t

func (*OGGIOVecListed) Ref

func (v *OGGIOVecListed) Ref() *C.ogg_iovec_t

type OGGIOVecStatic

type OGGIOVecStatic struct {
	// contains filtered or unexported fields
}

func NewOGGIOVecStatic

func NewOGGIOVecStatic(aRef *C.ogg_iovec_t, aCount int, aOwned bool) *OGGIOVecStatic

func (*OGGIOVecStatic) AddBuffer

func (v *OGGIOVecStatic) AddBuffer(iov_base unsafe.Pointer, iov_len uint64)

func (*OGGIOVecStatic) Count

func (v *OGGIOVecStatic) Count() int

func (*OGGIOVecStatic) Done

func (v *OGGIOVecStatic) Done()

func (*OGGIOVecStatic) GetBufferAt

func (v *OGGIOVecStatic) GetBufferAt(pos int) *C.ogg_iovec_t

func (*OGGIOVecStatic) Ref

func (v *OGGIOVecStatic) Ref() *C.ogg_iovec_t

type OGGIOVecStream

type OGGIOVecStream struct {
	// contains filtered or unexported fields
}

func NewOGGIOVecStream

func NewOGGIOVecStream(abuf []byte) *OGGIOVecStream

func (*OGGIOVecStream) AddBuffer

func (v *OGGIOVecStream) AddBuffer(iov_base unsafe.Pointer, iov_len uint64)

func (*OGGIOVecStream) Count

func (v *OGGIOVecStream) Count() int

func (*OGGIOVecStream) GetBufferAt

func (v *OGGIOVecStream) GetBufferAt(pos int) *C.ogg_iovec_t

func (*OGGIOVecStream) Ref

func (v *OGGIOVecStream) Ref() *C.ogg_iovec_t

type OGGRefPackBuffer

type OGGRefPackBuffer struct {
	// contains filtered or unexported fields
}

func NewOGGRefPackBuffer

func NewOGGRefPackBuffer(aRef *C.oggpack_buffer, aEndian binary.ByteOrder) *OGGRefPackBuffer

func (*OGGRefPackBuffer) Adv

func (v *OGGRefPackBuffer) Adv(bits int)

func (*OGGRefPackBuffer) Adv1bit

func (v *OGGRefPackBuffer) Adv1bit()

func (*OGGRefPackBuffer) Bits

func (v *OGGRefPackBuffer) Bits() int64

func (*OGGRefPackBuffer) Bytes

func (v *OGGRefPackBuffer) Bytes() int64

func (*OGGRefPackBuffer) GetBuffer

func (v *OGGRefPackBuffer) GetBuffer() *byte

func (*OGGRefPackBuffer) GetEndianMode

func (v *OGGRefPackBuffer) GetEndianMode() binary.ByteOrder

func (*OGGRefPackBuffer) Look

func (v *OGGRefPackBuffer) Look(bits int) int64

func (*OGGRefPackBuffer) Look1bit

func (v *OGGRefPackBuffer) Look1bit() int64

func (*OGGRefPackBuffer) Read

func (v *OGGRefPackBuffer) Read(bits int) int64

func (*OGGRefPackBuffer) Read1

func (v *OGGRefPackBuffer) Read1() int64

func (*OGGRefPackBuffer) ReadInit

func (v *OGGRefPackBuffer) ReadInit(buf *byte, bytes int)

func (*OGGRefPackBuffer) Ref

func (v *OGGRefPackBuffer) Ref() *C.oggpack_buffer

func (*OGGRefPackBuffer) Reset

func (v *OGGRefPackBuffer) Reset()

func (*OGGRefPackBuffer) SetEndianMode

func (v *OGGRefPackBuffer) SetEndianMode(e binary.ByteOrder)

func (*OGGRefPackBuffer) Write

func (v *OGGRefPackBuffer) Write(value uint32, bits int)

func (*OGGRefPackBuffer) WriteAlign

func (v *OGGRefPackBuffer) WriteAlign()

func (*OGGRefPackBuffer) WriteCheck

func (v *OGGRefPackBuffer) WriteCheck() int

func (*OGGRefPackBuffer) WriteClear

func (v *OGGRefPackBuffer) WriteClear()

func (*OGGRefPackBuffer) WriteCopy

func (v *OGGRefPackBuffer) WriteCopy(source unsafe.Pointer, bits int64)

func (*OGGRefPackBuffer) WriteInit

func (v *OGGRefPackBuffer) WriteInit()

func (*OGGRefPackBuffer) WriteTrunc

func (v *OGGRefPackBuffer) WriteTrunc(bits int64)

type OGGRefPacket

type OGGRefPacket struct {
	// contains filtered or unexported fields
}

func NewOGGRefPacket

func NewOGGRefPacket(ref *C.ogg_packet) *OGGRefPacket

func (*OGGRefPacket) Clear

func (v *OGGRefPacket) Clear()

func (*OGGRefPacket) GetBOS

func (v *OGGRefPacket) GetBOS() bool

func (*OGGRefPacket) GetData

func (v *OGGRefPacket) GetData() unsafe.Pointer

func (*OGGRefPacket) GetEOS

func (v *OGGRefPacket) GetEOS() bool

func (*OGGRefPacket) GetGranulePos

func (v *OGGRefPacket) GetGranulePos() int64

func (*OGGRefPacket) GetPacketNum

func (v *OGGRefPacket) GetPacketNum() int64

func (*OGGRefPacket) GetSize

func (v *OGGRefPacket) GetSize() int64

func (*OGGRefPacket) Ref

func (v *OGGRefPacket) Ref() *C.ogg_packet

func (*OGGRefPacket) SetBOS

func (v *OGGRefPacket) SetBOS(AValue bool)

func (*OGGRefPacket) SetData

func (v *OGGRefPacket) SetData(AValue unsafe.Pointer)

func (*OGGRefPacket) SetEOS

func (v *OGGRefPacket) SetEOS(AValue bool)

func (*OGGRefPacket) SetGranulePos

func (v *OGGRefPacket) SetGranulePos(AValue int64)

func (*OGGRefPacket) SetPacketNum

func (v *OGGRefPacket) SetPacketNum(AValue int64)

func (*OGGRefPacket) SetSize

func (v *OGGRefPacket) SetSize(AValue int64)

type OGGRefPage

type OGGRefPage struct {
	// contains filtered or unexported fields
}

func NewOGGRefPage

func NewOGGRefPage(v *C.ogg_page) *OGGRefPage

func (*OGGRefPage) BoS

func (v *OGGRefPage) BoS() bool

func (*OGGRefPage) ChecksumSet

func (v *OGGRefPage) ChecksumSet()

func (*OGGRefPage) Continued

func (v *OGGRefPage) Continued() bool

func (*OGGRefPage) EoS

func (v *OGGRefPage) EoS() bool

func (*OGGRefPage) GranulePos

func (v *OGGRefPage) GranulePos() int64

func (*OGGRefPage) Packets

func (v *OGGRefPage) Packets() int

func (*OGGRefPage) PageNo

func (v *OGGRefPage) PageNo() int64

func (*OGGRefPage) Ref

func (v *OGGRefPage) Ref() *C.ogg_page

func (*OGGRefPage) SerialNo

func (v *OGGRefPage) SerialNo() int32

func (*OGGRefPage) Version

func (v *OGGRefPage) Version() int

type OGGRefStreamState

type OGGRefStreamState struct {
	// contains filtered or unexported fields
}

func NewOGGRefStreamState

func NewOGGRefStreamState(ref *C.ogg_stream_state) *OGGRefStreamState

func (*OGGRefStreamState) Check

func (v *OGGRefStreamState) Check() bool

func (*OGGRefStreamState) Clear

func (v *OGGRefStreamState) Clear()

func (*OGGRefStreamState) Done

func (v *OGGRefStreamState) Done()

func (*OGGRefStreamState) EoS

func (v *OGGRefStreamState) EoS() bool

func (*OGGRefStreamState) Flush

func (v *OGGRefStreamState) Flush(og IOGGPage) bool

func (*OGGRefStreamState) FlushFill

func (v *OGGRefStreamState) FlushFill(og IOGGPage, nfill int) bool

func (*OGGRefStreamState) IOVecIn

func (v *OGGRefStreamState) IOVecIn(iov IOGGIOVec, e_o_s bool, granulepos int64) error

func (*OGGRefStreamState) Init

func (v *OGGRefStreamState) Init(serialno int32) error

func (*OGGRefStreamState) PacketIn

func (v *OGGRefStreamState) PacketIn(op IOGGPacket) error

func (*OGGRefStreamState) PacketOut

func (v *OGGRefStreamState) PacketOut(op IOGGPacket) (bool, error)

func (*OGGRefStreamState) PacketOutIgnoreErrors

func (v *OGGRefStreamState) PacketOutIgnoreErrors(op IOGGPacket) int

func (*OGGRefStreamState) PacketPeek

func (v *OGGRefStreamState) PacketPeek(op IOGGPacket) (bool, error)

func (*OGGRefStreamState) PageFlushNew

func (v *OGGRefStreamState) PageFlushNew() (IOGGPage, error)

func (*OGGRefStreamState) PageFlushToStream

func (v *OGGRefStreamState) PageFlushToStream(aStr io.Writer) error

func (*OGGRefStreamState) PageIn

func (v *OGGRefStreamState) PageIn(og IOGGPage) error

func (*OGGRefStreamState) PageInIgnoreErrors

func (v *OGGRefStreamState) PageInIgnoreErrors(og IOGGPage) int

func (*OGGRefStreamState) PageOut

func (v *OGGRefStreamState) PageOut(og IOGGPage) bool

func (*OGGRefStreamState) PageOutFill

func (v *OGGRefStreamState) PageOutFill(og IOGGPage, nfill int) bool

func (*OGGRefStreamState) PageOutNew

func (v *OGGRefStreamState) PageOutNew() (IOGGPage, error)

func (*OGGRefStreamState) PageOutToStream

func (v *OGGRefStreamState) PageOutToStream(aStr io.Writer) error

func (*OGGRefStreamState) PagesFlushToStream

func (v *OGGRefStreamState) PagesFlushToStream(aStr io.Writer) error

func (*OGGRefStreamState) PagesOutToStream

func (v *OGGRefStreamState) PagesOutToStream(aStr io.Writer) error

func (*OGGRefStreamState) Ref

func (*OGGRefStreamState) Reset

func (v *OGGRefStreamState) Reset() error

func (*OGGRefStreamState) ResetSerialNo

func (v *OGGRefStreamState) ResetSerialNo(serialno int32) int

func (*OGGRefStreamState) SavePacketToStream

func (v *OGGRefStreamState) SavePacketToStream(aStr io.Writer, op IOGGPacket) error

type OGGRefSyncState

type OGGRefSyncState struct {
	// contains filtered or unexported fields
}

func NewOGGRefSyncState

func NewOGGRefSyncState(ref *C.ogg_sync_state) *OGGRefSyncState

func (*OGGRefSyncState) Buffer

func (v *OGGRefSyncState) Buffer(size int64) unsafe.Pointer

func (*OGGRefSyncState) Check

func (v *OGGRefSyncState) Check() int

func (*OGGRefSyncState) Clear

func (v *OGGRefSyncState) Clear() int

func (*OGGRefSyncState) Done

func (v *OGGRefSyncState) Done() int

func (*OGGRefSyncState) Init

func (v *OGGRefSyncState) Init() int

func (*OGGRefSyncState) PageOut

func (v *OGGRefSyncState) PageOut(og IOGGPage) int

func (*OGGRefSyncState) PageSeek

func (v *OGGRefSyncState) PageSeek(og IOGGPage) int64

func (*OGGRefSyncState) Ref

func (v *OGGRefSyncState) Ref() *C.ogg_sync_state

func (*OGGRefSyncState) Reset

func (v *OGGRefSyncState) Reset() int

func (*OGGRefSyncState) Wrote

func (v *OGGRefSyncState) Wrote(bytes int64) int

type OGGUniqPackBuffer

type OGGUniqPackBuffer struct {
	// contains filtered or unexported fields
}

func NewOGGUniqPackBuffer

func NewOGGUniqPackBuffer(bv binary.ByteOrder) (*OGGUniqPackBuffer, error)

func (*OGGUniqPackBuffer) Adv

func (v *OGGUniqPackBuffer) Adv(bits int)

func (*OGGUniqPackBuffer) Adv1bit

func (v *OGGUniqPackBuffer) Adv1bit()

func (*OGGUniqPackBuffer) Bits

func (v *OGGUniqPackBuffer) Bits() int64

func (*OGGUniqPackBuffer) Bytes

func (v *OGGUniqPackBuffer) Bytes() int64

func (*OGGUniqPackBuffer) GetBuffer

func (v *OGGUniqPackBuffer) GetBuffer() *byte

func (*OGGUniqPackBuffer) GetEndianMode

func (v *OGGUniqPackBuffer) GetEndianMode() binary.ByteOrder

func (*OGGUniqPackBuffer) Look

func (v *OGGUniqPackBuffer) Look(bits int) int64

func (*OGGUniqPackBuffer) Look1bit

func (v *OGGUniqPackBuffer) Look1bit() int64

func (*OGGUniqPackBuffer) Read

func (v *OGGUniqPackBuffer) Read(bits int) int64

func (*OGGUniqPackBuffer) Read1

func (v *OGGUniqPackBuffer) Read1() int64

func (*OGGUniqPackBuffer) ReadInit

func (v *OGGUniqPackBuffer) ReadInit(buf *byte, bytes int)

func (*OGGUniqPackBuffer) Ref

func (*OGGUniqPackBuffer) Reset

func (v *OGGUniqPackBuffer) Reset()

func (*OGGUniqPackBuffer) SetEndianMode

func (v *OGGUniqPackBuffer) SetEndianMode(e binary.ByteOrder)

func (*OGGUniqPackBuffer) Write

func (v *OGGUniqPackBuffer) Write(value uint32, bits int)

func (*OGGUniqPackBuffer) WriteAlign

func (v *OGGUniqPackBuffer) WriteAlign()

func (*OGGUniqPackBuffer) WriteCheck

func (v *OGGUniqPackBuffer) WriteCheck() int

func (*OGGUniqPackBuffer) WriteClear

func (v *OGGUniqPackBuffer) WriteClear()

func (*OGGUniqPackBuffer) WriteCopy

func (v *OGGUniqPackBuffer) WriteCopy(source unsafe.Pointer, bits int64)

func (*OGGUniqPackBuffer) WriteInit

func (v *OGGUniqPackBuffer) WriteInit()

func (*OGGUniqPackBuffer) WriteTrunc

func (v *OGGUniqPackBuffer) WriteTrunc(bits int64)

type OGGUniqPacket

type OGGUniqPacket struct {
	// contains filtered or unexported fields
}

func NewOGGUniqPacket

func NewOGGUniqPacket() (*OGGUniqPacket, error)

func (*OGGUniqPacket) Clear

func (v *OGGUniqPacket) Clear()

func (*OGGUniqPacket) GetBOS

func (v *OGGUniqPacket) GetBOS() bool

func (*OGGUniqPacket) GetData

func (v *OGGUniqPacket) GetData() unsafe.Pointer

func (*OGGUniqPacket) GetEOS

func (v *OGGUniqPacket) GetEOS() bool

func (*OGGUniqPacket) GetGranulePos

func (v *OGGUniqPacket) GetGranulePos() int64

func (*OGGUniqPacket) GetPacketNum

func (v *OGGUniqPacket) GetPacketNum() int64

func (*OGGUniqPacket) GetSize

func (v *OGGUniqPacket) GetSize() int64

func (*OGGUniqPacket) Ref

func (v *OGGUniqPacket) Ref() *C.ogg_packet

func (*OGGUniqPacket) SetBOS

func (v *OGGUniqPacket) SetBOS(AValue bool)

func (*OGGUniqPacket) SetData

func (v *OGGUniqPacket) SetData(AValue unsafe.Pointer)

func (*OGGUniqPacket) SetEOS

func (v *OGGUniqPacket) SetEOS(AValue bool)

func (*OGGUniqPacket) SetGranulePos

func (v *OGGUniqPacket) SetGranulePos(AValue int64)

func (*OGGUniqPacket) SetPacketNum

func (v *OGGUniqPacket) SetPacketNum(AValue int64)

func (*OGGUniqPacket) SetSize

func (v *OGGUniqPacket) SetSize(AValue int64)

type OGGUniqPage

type OGGUniqPage struct {
	// contains filtered or unexported fields
}

func NewOGGUniqPage

func NewOGGUniqPage() (*OGGUniqPage, error)

func (*OGGUniqPage) BoS

func (v *OGGUniqPage) BoS() bool

func (*OGGUniqPage) ChecksumSet

func (v *OGGUniqPage) ChecksumSet()

func (*OGGUniqPage) Continued

func (v *OGGUniqPage) Continued() bool

func (*OGGUniqPage) EoS

func (v *OGGUniqPage) EoS() bool

func (*OGGUniqPage) GranulePos

func (v *OGGUniqPage) GranulePos() int64

func (*OGGUniqPage) Packets

func (v *OGGUniqPage) Packets() int

func (*OGGUniqPage) PageNo

func (v *OGGUniqPage) PageNo() int64

func (*OGGUniqPage) Ref

func (v *OGGUniqPage) Ref() *C.ogg_page

func (*OGGUniqPage) SerialNo

func (v *OGGUniqPage) SerialNo() int32

func (*OGGUniqPage) Version

func (v *OGGUniqPage) Version() int

type OGGUniqStreamState

type OGGUniqStreamState struct {
	// contains filtered or unexported fields
}

func NewOGGUniqStreamState

func NewOGGUniqStreamState(serialno int32) (*OGGUniqStreamState, error)

func (*OGGUniqStreamState) Check

func (v *OGGUniqStreamState) Check() bool

func (*OGGUniqStreamState) Clear

func (v *OGGUniqStreamState) Clear()

func (*OGGUniqStreamState) Done

func (v *OGGUniqStreamState) Done()

func (*OGGUniqStreamState) EoS

func (v *OGGUniqStreamState) EoS() bool

func (*OGGUniqStreamState) Flush

func (v *OGGUniqStreamState) Flush(og IOGGPage) bool

func (*OGGUniqStreamState) FlushFill

func (v *OGGUniqStreamState) FlushFill(og IOGGPage, nfill int) bool

func (*OGGUniqStreamState) IOVecIn

func (v *OGGUniqStreamState) IOVecIn(iov IOGGIOVec, e_o_s bool, granulepos int64) error

func (*OGGUniqStreamState) Init

func (v *OGGUniqStreamState) Init(serialno int32) error

func (*OGGUniqStreamState) PacketIn

func (v *OGGUniqStreamState) PacketIn(op IOGGPacket) error

func (*OGGUniqStreamState) PacketOut

func (v *OGGUniqStreamState) PacketOut(op IOGGPacket) (bool, error)

func (*OGGUniqStreamState) PacketOutIgnoreErrors

func (v *OGGUniqStreamState) PacketOutIgnoreErrors(op IOGGPacket) int

func (*OGGUniqStreamState) PacketPeek

func (v *OGGUniqStreamState) PacketPeek(op IOGGPacket) (bool, error)

func (*OGGUniqStreamState) PageFlushNew

func (v *OGGUniqStreamState) PageFlushNew() (IOGGPage, error)

func (*OGGUniqStreamState) PageFlushToStream

func (v *OGGUniqStreamState) PageFlushToStream(aStr io.Writer) error

func (*OGGUniqStreamState) PageIn

func (v *OGGUniqStreamState) PageIn(og IOGGPage) error

func (*OGGUniqStreamState) PageInIgnoreErrors

func (v *OGGUniqStreamState) PageInIgnoreErrors(og IOGGPage) int

func (*OGGUniqStreamState) PageOut

func (v *OGGUniqStreamState) PageOut(og IOGGPage) bool

func (*OGGUniqStreamState) PageOutFill

func (v *OGGUniqStreamState) PageOutFill(og IOGGPage, nfill int) bool

func (*OGGUniqStreamState) PageOutNew

func (v *OGGUniqStreamState) PageOutNew() (IOGGPage, error)

func (*OGGUniqStreamState) PageOutToStream

func (v *OGGUniqStreamState) PageOutToStream(aStr io.Writer) error

func (*OGGUniqStreamState) PagesFlushToStream

func (v *OGGUniqStreamState) PagesFlushToStream(aStr io.Writer) error

func (*OGGUniqStreamState) PagesOutToStream

func (v *OGGUniqStreamState) PagesOutToStream(aStr io.Writer) error

func (*OGGUniqStreamState) Ref

func (*OGGUniqStreamState) Reset

func (v *OGGUniqStreamState) Reset() error

func (*OGGUniqStreamState) ResetSerialNo

func (v *OGGUniqStreamState) ResetSerialNo(serialno int32) int

func (*OGGUniqStreamState) SavePacketToStream

func (v *OGGUniqStreamState) SavePacketToStream(aStr io.Writer, op IOGGPacket) error

type OGGUniqSyncState

type OGGUniqSyncState struct {
	// contains filtered or unexported fields
}

func NewOGGUniqSyncState

func NewOGGUniqSyncState() (*OGGUniqSyncState, error)

func (*OGGUniqSyncState) Buffer

func (v *OGGUniqSyncState) Buffer(size int64) unsafe.Pointer

func (*OGGUniqSyncState) Check

func (v *OGGUniqSyncState) Check() int

func (*OGGUniqSyncState) Clear

func (v *OGGUniqSyncState) Clear() int

func (*OGGUniqSyncState) Done

func (v *OGGUniqSyncState) Done() int

func (*OGGUniqSyncState) Init

func (v *OGGUniqSyncState) Init() int

func (*OGGUniqSyncState) PageOut

func (v *OGGUniqSyncState) PageOut(og IOGGPage) int

func (*OGGUniqSyncState) PageSeek

func (v *OGGUniqSyncState) PageSeek(og IOGGPage) int64

func (*OGGUniqSyncState) Ref

func (v *OGGUniqSyncState) Ref() *C.ogg_sync_state

func (*OGGUniqSyncState) Reset

func (v *OGGUniqSyncState) Reset() int

func (*OGGUniqSyncState) Wrote

func (v *OGGUniqSyncState) Wrote(bytes int64) int

type ReadHeaderFunc

type ReadHeaderFunc = func(id int, data []byte) (bool, error)

type WriteHeaderFunc

type WriteHeaderFunc = func(id int) ([]byte, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL