mp4ff

package module
v1.1.2 Latest Latest
Warning

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

Go to latest
Published: Jun 1, 2022 License: OSL-3.0 Imports: 4 Imported by: 0

README

mp4ff

https://godocs.io/github.com/89z/mp4ff

Here are the types we need:

File
Fragment
InitializationVector
MediaSegment
MoofBox
SencBox
SubSamplePattern
TrafBox

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNotReedSeeker = errors.New("reader does not support Seek")

ESBPReader errors

View Source
var ErrSliceRead = fmt.Errorf("Read too far in SliceReader")

SliceReader errors

View Source
var ErrSliceWriter = errors.New("overflow in SliceWriter")

Functions

This section is empty.

Types

type AccErrEBSPReader

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

AccErrEBSPReader - Reader that drops start code emulation 0x03 after two bytes of 0x00

func NewAccErrEBSPReader

func NewAccErrEBSPReader(rd io.Reader) *AccErrEBSPReader

NewAccErrEBSPReader - return a new reader accumulating errors.

func (*AccErrEBSPReader) AccError

func (r *AccErrEBSPReader) AccError() error

AccError - accumulated error

func (*AccErrEBSPReader) Read

func (r *AccErrEBSPReader) Read(n int) uint

Read - read n bits and return 0 if (previous) error

func (*AccErrEBSPReader) SetError

func (r *AccErrEBSPReader) SetError(err error)

SetError - set an error if not already set.

type FixedSliceReader

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

FixedSliceReader - read integers and other data from a fixed slice. Accumulates error, and the first error can be retrieved. If err != nil, 0 or empty string is returned

func NewFixedSliceReader

func NewFixedSliceReader(data []byte) *FixedSliceReader

bits.NewFixedSliceReader - create a new slice reader reading from data

func NewFixedSliceReaderWithSize

func NewFixedSliceReaderWithSize(size int) *FixedSliceReader

bits.NewFixedSliceReader - create a new slice reader reading from data

func (*FixedSliceReader) AccError

func (s *FixedSliceReader) AccError() error

AccError - get accumulated error after read operations

func (*FixedSliceReader) GetPos

func (s *FixedSliceReader) GetPos() int

GetPos - get read position is slice

func (*FixedSliceReader) Length

func (s *FixedSliceReader) Length() int

Length - get length of slice

func (*FixedSliceReader) NrRemainingBytes

func (s *FixedSliceReader) NrRemainingBytes() int

NrRemainingBytes - return number of bytes remaining

func (*FixedSliceReader) ReadBytes

func (s *FixedSliceReader) ReadBytes(n int) []byte

ReadBytes - read a slice of n bytes Return empty slice if n bytes not available

func (*FixedSliceReader) ReadFixedLengthString

func (s *FixedSliceReader) ReadFixedLengthString(n int) string

ReadFixedLengthString - read string of specified length n. Sets err and returns empty string if full length not available

func (*FixedSliceReader) ReadInt16

func (s *FixedSliceReader) ReadInt16() int16

ReadInt16 - read int16 from slice

func (*FixedSliceReader) ReadInt32

func (s *FixedSliceReader) ReadInt32() int32

ReadInt32 - read int32 from slice

func (*FixedSliceReader) ReadInt64

func (s *FixedSliceReader) ReadInt64() int64

ReadInt64 - read int64 from slice

func (*FixedSliceReader) ReadUint16

func (s *FixedSliceReader) ReadUint16() uint16

ReadUint16 - read uint16 from slice

func (*FixedSliceReader) ReadUint24

func (s *FixedSliceReader) ReadUint24() uint32

ReadUint24 - read uint24 from slice

func (*FixedSliceReader) ReadUint32

func (s *FixedSliceReader) ReadUint32() uint32

ReadUint32 - read uint32 from slice

func (*FixedSliceReader) ReadUint64

func (s *FixedSliceReader) ReadUint64() uint64

ReadUint64 - read uint64 from slice

func (*FixedSliceReader) ReadUint8

func (s *FixedSliceReader) ReadUint8() byte

ReadUint8 - read uint8 from slice

func (*FixedSliceReader) ReadZeroTerminatedString

func (s *FixedSliceReader) ReadZeroTerminatedString(maxLen int) string

ReadZeroTerminatedString - read string until zero byte but at most maxLen Set err and return empty string if no zero byte found

func (*FixedSliceReader) RemainingBytes

func (s *FixedSliceReader) RemainingBytes() []byte

RemainingBytes - return remaining bytes of this slice

func (*FixedSliceReader) SetPos

func (s *FixedSliceReader) SetPos(pos int)

SetPos - set read position is slice

func (*FixedSliceReader) SkipBytes

func (s *FixedSliceReader) SkipBytes(n int)

SkipBytes - skip passed n bytes

type FixedSliceWriter

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

FixedSliceWriter - write numbers to a fixed []byte slice

func NewFixedSliceWriter

func NewFixedSliceWriter(size int) *FixedSliceWriter

NewSliceWriter - create slice writer with fixed size.

func NewFixedSliceWriterFromSlice

func NewFixedSliceWriterFromSlice(data []byte) *FixedSliceWriter

NewFixedSliceWriter - create writer around slice. The slice will not grow, but stay the same size. If too much data is written, there will be an accumuluated error. Can be retrieved with AccError()

func (*FixedSliceWriter) AccError

func (sw *FixedSliceWriter) AccError() error

AccError - return accumulated erro

func (*FixedSliceWriter) Bytes

func (sw *FixedSliceWriter) Bytes() []byte

Bytes - return buf up to what's written

func (*FixedSliceWriter) Offset

func (sw *FixedSliceWriter) Offset() int

Offset - offset for writing in FixedSliceWriter buffer

func (*FixedSliceWriter) WriteBits

func (sw *FixedSliceWriter) WriteBits(bits uint, n int)

func (*FixedSliceWriter) WriteBytes

func (sw *FixedSliceWriter) WriteBytes(byteSlice []byte)

WriteBytes - write []byte

func (*FixedSliceWriter) WriteInt16

func (sw *FixedSliceWriter) WriteInt16(n int16)

WriteInt16 - write int16 to slice

func (*FixedSliceWriter) WriteInt32

func (sw *FixedSliceWriter) WriteInt32(n int32)

WriteInt32 - write int32 to slice

func (*FixedSliceWriter) WriteInt64

func (sw *FixedSliceWriter) WriteInt64(n int64)

WriteInt64 - write int64 to slice

func (*FixedSliceWriter) WriteString

func (sw *FixedSliceWriter) WriteString(s string, addZeroEnd bool)

WriteString - write string to slice with or without zero end

func (*FixedSliceWriter) WriteUint16

func (sw *FixedSliceWriter) WriteUint16(n uint16)

WriteUint16 - write uint16 to slice

func (*FixedSliceWriter) WriteUint32

func (sw *FixedSliceWriter) WriteUint32(n uint32)

WriteUint32 - write uint32 to slice

func (*FixedSliceWriter) WriteUint64

func (sw *FixedSliceWriter) WriteUint64(n uint64)

WriteUint64 - write uint64 to slice

func (*FixedSliceWriter) WriteUint8

func (sw *FixedSliceWriter) WriteUint8(n byte)

WriteUint8 - write byte to slice

func (*FixedSliceWriter) WriteZeroBytes

func (sw *FixedSliceWriter) WriteZeroBytes(n int)

WriteZeroBytes - write n byte of zeroes

type SliceReader

type SliceReader interface {
	AccError() error
	GetPos() int
	NrRemainingBytes() int
	ReadBytes(n int) []byte
	ReadFixedLengthString(n int) string
	ReadInt32() int32
	ReadInt64() int64
	ReadUint16() uint16
	ReadUint32() uint32
	ReadUint64() uint64
	ReadUint8() byte
	ReadZeroTerminatedString(maxLen int) string
	SkipBytes(n int)
}

type SliceWriter

type SliceWriter interface {
	AccError() error
	WriteBits(bits uint, n int)
	WriteBytes(byteSlice []byte)
	WriteInt16(n int16)
	WriteInt32(n int32)
	WriteInt64(n int64)
	WriteString(s string, addZeroEnd bool)
	WriteUint16(n uint16)
	WriteUint32(n uint32)
	WriteUint64(n uint64)
	WriteUint8(n byte)
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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