tsparser

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BufferPes

func BufferPes(reader io.Reader, pos *int64, pcrPid uint16, programInfos []ProgramInfo, options options.Options, packetSize int, endOffset int64) error

BufferPes buffer PES data from TS payload

func BufferPsi

func BufferPsi(reader io.Reader, pos *int64, pid uint16, mpegPacket MpegPacket, options options.Options, packetSize int, endOffset int64) error

BufferPsi buffer PSI data from TS payload

func ParseTsFile

func ParseTsFile(filename string, options options.Options) error

Types

type AdaptationField

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

AdaptationField adaptation_field data.

func NewAdaptationField

func NewAdaptationField() *AdaptationField

NewAdaptationField create new adaptation_field instance.

func (*AdaptationField) Append

func (af *AdaptationField) Append(buf []byte)

Append append adaptation_field data for buffer.

func (*AdaptationField) Dump

func (af *AdaptationField) Dump()

Dump adaptation_field detail.

func (*AdaptationField) DumpPcr

func (af *AdaptationField) DumpPcr(prevPcr uint64)

DumpPcr prints PCR. If prevPcr is non-zero, the interval is also shown.

func (*AdaptationField) Initialize

func (af *AdaptationField) Initialize(pos int64, options options.Options)

Initialize Set Params for TsPacket

func (*AdaptationField) Parse

func (af *AdaptationField) Parse() (uint8, error)

Parse parse adaptation_field data.

func (*AdaptationField) Pcr

func (af *AdaptationField) Pcr() uint64

Pcr return this adaptation_field PCR.

func (*AdaptationField) PcrFlag

func (af *AdaptationField) PcrFlag() bool

PcrFlag return this adaptation_field PCR_flag.

type MpegPacket

type MpegPacket interface {
	ContinuityCounter() uint8
	SetContinuityCounter(continuityCounter uint8)
	Append(buf []byte)
	Parse() error
	Dump()
}

MpegPacket PSI or PES

type Pat

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

Pat Program Association Table.

func NewPat

func NewPat() *Pat

NewPat create new PAT instance

func (*Pat) Append

func (p *Pat) Append(buf []byte)

Append append ts payload data for buffer.

func (*Pat) ContinuityCounter

func (p *Pat) ContinuityCounter() uint8

ContinuityCounter return current continuity_counter of TsPacket.

func (*Pat) Dump

func (p *Pat) Dump()

Dump PAT detail.

func (*Pat) Parse

func (p *Pat) Parse() error

Parse PAT data.

func (*Pat) PmtPid

func (p *Pat) PmtPid() uint16

PmtPid return PMT pid.

func (*Pat) SetContinuityCounter

func (p *Pat) SetContinuityCounter(continuityCounter uint8)

SetContinuityCounter set current continuity_counter of TsPacket.

type PatProgramInfo

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

PatProgramInfo Program Info of mpeg.

type Pes

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

Pes Packetized Elementary Stream.

func NewPes

func NewPes() *Pes

NewPes create new PES instance

func (*Pes) Append

func (p *Pes) Append(buf []byte)

Append append ts payload data for buffer.

func (*Pes) ContinuityCounter

func (p *Pes) ContinuityCounter() uint8

ContinuityCounter return current continuity_counter of TsPacket.

func (*Pes) DumpHeader

func (p *Pes) DumpHeader()

Dump PES header detail.

func (*Pes) DumpTimestamp

func (p *Pes) DumpTimestamp() float64

DumpTimestamp dump PTS and DTS

func (*Pes) Initialize

func (p *Pes) Initialize(pid uint16, pos int64, prevPcr uint64, prevPcrPos int64)

Initialize Set Params for PES

func (*Pes) Parse

func (p *Pes) Parse() error

Parse PES header.

func (*Pes) SetContinuityCounter

func (p *Pes) SetContinuityCounter(continuityCounter uint8)

SetContinuityCounter set current continuity_counter of TsPacket.

type Pmt

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

Pmt Progran Map Table

func NewPmt

func NewPmt() *Pmt

NewPmt create new PMT instance

func (*Pmt) Append

func (p *Pmt) Append(buf []byte)

Append append ts payload data for buffer.

func (*Pmt) ContinuityCounter

func (p *Pmt) ContinuityCounter() uint8

ContinuityCounter return current continuity_counter of TsPacket.

func (*Pmt) Dump

func (p *Pmt) Dump()

Dump PMT detail.

func (*Pmt) DumpProgramInfos

func (p *Pmt) DumpProgramInfos()

DumpProgramInfos Dump Program info

func (*Pmt) Parse

func (p *Pmt) Parse() error

Parse PMT data.

func (*Pmt) PcrPid

func (p *Pmt) PcrPid() uint16

PcrPid return PCR_PID.

func (*Pmt) ProgramInfos

func (p *Pmt) ProgramInfos() []ProgramInfo

ProgramInfos return ProgramInfos.

func (*Pmt) SetContinuityCounter

func (p *Pmt) SetContinuityCounter(continuityCounter uint8)

SetContinuityCounter set current continuity_counter of TsPacket.

type ProgramInfo

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

ProgramInfo Program info

type TsPacket

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

TsPacket is mpeg2-ts packet. It has fixed size(188byte).

func NewTsPacket

func NewTsPacket() *TsPacket

NewTsPacket create new TsPacket instance.

func (*TsPacket) Append

func (tp *TsPacket) Append(buf []byte)

Append append ts payload data for buffer.

func (*TsPacket) ContinuityCounter

func (tp *TsPacket) ContinuityCounter() uint8

ContinuityCounter return this TsPacket payload_unit_start_indicator.

func (*TsPacket) DumpHeader

func (tp *TsPacket) DumpHeader()

DumpHeader print this TsPacket header detail.

func (*TsPacket) DumpPayload

func (tp *TsPacket) DumpPayload()

DumpData print this TsPacket payload binary.

func (*TsPacket) HasAf

func (tp *TsPacket) HasAf() bool

HasAf return whether this TsPacket has adaptation_field.

func (*TsPacket) Initialize

func (tp *TsPacket) Initialize(pos int64, options options.Options)

Initialize Set Params for TsPacket

func (*TsPacket) Parse

func (tp *TsPacket) Parse() error

Parse parse TsPacket header.

func (*TsPacket) Payload

func (tp *TsPacket) Payload() []byte

Payload return this TsPacket payload data.

func (*TsPacket) PayloadUnitStartIndicator

func (tp *TsPacket) PayloadUnitStartIndicator() bool

PayloadUnitStartIndicator return this TsPacket payload_unit_start_indicator.

func (*TsPacket) Pcr

func (tp *TsPacket) Pcr() uint64

Pcr return this TsPacket PCR.

func (*TsPacket) Pid

func (tp *TsPacket) Pid() uint16

Pid return this TsPacket pid.

Jump to

Keyboard shortcuts

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