mpegts

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2023 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PacketSize = 188
	SyncByte   = 0x47
)
View Source
const (
	StreamTypePrivate  = 0x06 // PCMU or PCMA or FLAC from FFmpeg
	StreamTypeAAC      = 0x0F
	StreamTypeH264     = 0x1B
	StreamTypePCMATapo = 0x90
)
View Source
const (
	ModeUnknown = iota
	ModeSize
	ModeStream
)

Variables

This section is empty.

Functions

func GetMedia

func GetMedia(pkt *rtp.Packet) *core.Media

func ParseTime

func ParseTime(b []byte) uint32

Types

type Client

type Client struct {
	core.Listener
	// contains filtered or unexported fields
}

func NewClient

func NewClient(res *http.Response) *Client

func (*Client) Close

func (c *Client) Close() error

func (*Client) GetMedias

func (c *Client) GetMedias() []*core.Media

func (*Client) GetTrack

func (c *Client) GetTrack(media *core.Media, codec *core.Codec) (*core.Receiver, error)

func (*Client) Handle

func (c *Client) Handle() error

func (*Client) MarshalJSON added in v1.3.0

func (c *Client) MarshalJSON() ([]byte, error)

func (*Client) Start

func (c *Client) Start() error

func (*Client) Stop

func (c *Client) Stop() error

type Consumer

type Consumer struct {
	core.Listener

	UserAgent  string
	RemoteAddr string
	// contains filtered or unexported fields
}

func (*Consumer) AddTrack

func (c *Consumer) AddTrack(media *core.Media, _ *core.Codec, track *core.Receiver) error

func (*Consumer) GetMedias

func (c *Consumer) GetMedias() []*core.Media

func (*Consumer) Init

func (c *Consumer) Init() ([]byte, error)

func (*Consumer) MarshalJSON added in v1.3.0

func (c *Consumer) MarshalJSON() ([]byte, error)

func (*Consumer) MimeCodecs

func (c *Consumer) MimeCodecs() string

func (*Consumer) Start

func (c *Consumer) Start()

func (*Consumer) Stop added in v1.3.0

func (c *Consumer) Stop() error

type PES

type PES struct {
	StreamType byte
	StreamID   byte
	Payload    []byte
	Mode       byte
	Size       int

	Sequence  uint16
	Timestamp uint32
}

PES - Packetized Elementary Stream

func (*PES) AppendBuffer

func (p *PES) AppendBuffer(b []byte)

func (*PES) GetPacket

func (p *PES) GetPacket() (pkt *rtp.Packet)

func (*PES) SetBuffer

func (p *PES) SetBuffer(size uint16, b []byte)

type Packet

type Packet struct {
	StreamType byte
	PTS        time.Duration
	DTS        time.Duration
	Payload    []byte
}

type Reader

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

func NewReader

func NewReader() *Reader

func (*Reader) AppendBuffer

func (r *Reader) AppendBuffer(b []byte)

func (*Reader) Bytes

func (r *Reader) Bytes() []byte

func (*Reader) GetPacket

func (r *Reader) GetPacket() *rtp.Packet

func (*Reader) Left

func (r *Reader) Left() byte

func (*Reader) ReadByte

func (r *Reader) ReadByte() byte

func (*Reader) ReadPSIHeader

func (r *Reader) ReadPSIHeader()

func (*Reader) ReadUint16

func (r *Reader) ReadUint16() uint16

func (*Reader) SetBuffer

func (r *Reader) SetBuffer(b []byte)

func (*Reader) SetSize

func (r *Reader) SetSize(size byte)

func (*Reader) Skip

func (r *Reader) Skip(i byte)

func (*Reader) Sync

func (r *Reader) Sync() bool

Sync - search sync byte

type Writer

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

func NewWriter

func NewWriter() *Writer

func (*Writer) AddPES

func (w *Writer) AddPES(pid uint16, streamType byte)

func (*Writer) Bytes

func (w *Writer) Bytes() []byte

func (*Writer) FinishPacket

func (w *Writer) FinishPacket()

func (*Writer) MarkChecksum

func (w *Writer) MarkChecksum()

func (*Writer) Reset

func (w *Writer) Reset()

func (*Writer) WriteByte

func (w *Writer) WriteByte(b byte)

func (*Writer) WriteBytes

func (w *Writer) WriteBytes(b []byte)

func (*Writer) WriteChecksum

func (w *Writer) WriteChecksum()

func (*Writer) WritePAT

func (w *Writer) WritePAT()

func (*Writer) WritePES

func (w *Writer) WritePES(pid uint16, streamID byte, payload []byte)

func (*Writer) WritePMT

func (w *Writer) WritePMT()

func (*Writer) WriteTime

func (w *Writer) WriteTime(t uint32)

func (*Writer) WriteUint16

func (w *Writer) WriteUint16(i uint16)

Jump to

Keyboard shortcuts

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