frame

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2023 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DefaultFrame

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

func NewDefaultFrame

func NewDefaultFrame(pool pool.Pool[*DefaultFrame]) *DefaultFrame

func (*DefaultFrame) AddRef

func (f *DefaultFrame) AddRef()

func (*DefaultFrame) AddRelation

func (f *DefaultFrame) AddRelation(relation pool.Reference)

func (*DefaultFrame) Append

func (f *DefaultFrame) Append(packet rtp.Packet) bool

func (*DefaultFrame) Clear

func (f *DefaultFrame) Clear()

func (*DefaultFrame) Len

func (f *DefaultFrame) Len() int

func (*DefaultFrame) Packet

func (f *DefaultFrame) Packet(i int) rtp.Packet

func (*DefaultFrame) PayloadType

func (f *DefaultFrame) PayloadType() uint8

func (*DefaultFrame) Range

func (f *DefaultFrame) Range(fn func(i int, packet rtp.Packet) bool) bool

func (*DefaultFrame) Release

func (f *DefaultFrame) Release() bool

func (*DefaultFrame) SetPayloadType

func (f *DefaultFrame) SetPayloadType(typ uint8)

func (*DefaultFrame) SetTimestamp

func (f *DefaultFrame) SetTimestamp(timestamp uint32)

func (*DefaultFrame) Timestamp

func (f *DefaultFrame) Timestamp() uint32

func (*DefaultFrame) Use

func (f *DefaultFrame) Use() *DefaultFrame

type Frame

type Frame interface {
	Len() int

	Range(f func(i int, packet rtp.Packet) bool) bool

	Packet(i int) rtp.Packet

	Timestamp() uint32

	SetTimestamp(timestamp uint32)

	PayloadType() uint8

	SetPayloadType(typ uint8)

	Append(packet rtp.Packet) bool

	AddRelation(relation pool.Reference)

	Clear()

	pool.Reference
}

func NewFrame

func NewFrame() Frame

func UseFrame

func UseFrame(frame Frame) Frame

type FrameHandler

type FrameHandler interface {
	HandleFrame(stream server.Stream, frame *IncomingFrame)

	OnParseRTPError(stream server.Stream, err error) (keep bool)

	OnStreamClosed(stream server.Stream)
}

type FrameHandlerFunc

type FrameHandlerFunc struct {
	HandleFrameFn     func(stream server.Stream, frame *IncomingFrame)
	OnParseRTPErrorFn func(stream server.Stream, err error) (keep bool)
	OnStreamClosedFn  func(stream server.Stream)
}

func (FrameHandlerFunc) HandleFrame

func (h FrameHandlerFunc) HandleFrame(stream server.Stream, frame *IncomingFrame)

func (FrameHandlerFunc) OnParseRTPError

func (h FrameHandlerFunc) OnParseRTPError(stream server.Stream, err error) (keep bool)

func (FrameHandlerFunc) OnStreamClosed

func (h FrameHandlerFunc) OnStreamClosed(stream server.Stream)

type FrameRTPHandler

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

func NewFrameRTPHandler

func NewFrameRTPHandler(frameHandler FrameHandler) *FrameRTPHandler

func (*FrameRTPHandler) HandlePacket

func (h *FrameRTPHandler) HandlePacket(stream server.Stream, packet *rtp.IncomingPacket) (dropped, keep bool)

func (*FrameRTPHandler) OnParseError

func (h *FrameRTPHandler) OnParseError(stream server.Stream, err error) (keep bool)

func (*FrameRTPHandler) OnStreamClosed

func (h *FrameRTPHandler) OnStreamClosed(stream server.Stream)

type FrameWriter

type FrameWriter interface {
	Frame() Frame

	SetFrame(frame Frame)

	Size() int

	WriteTo(w io.Writer) (n int64, err error)

	Read(p []byte) (n int, err error)
}

func NewPayloadFrameWriter

func NewPayloadFrameWriter(frame Frame) FrameWriter

type FullFrameWriter

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

func NewFullFrameWriter

func NewFullFrameWriter(frame Frame) *FullFrameWriter

func (*FullFrameWriter) DisablePayloadType

func (f *FullFrameWriter) DisablePayloadType()

func (*FullFrameWriter) DisableSSRC

func (f *FullFrameWriter) DisableSSRC()

func (*FullFrameWriter) DisableSequenceNumber

func (f *FullFrameWriter) DisableSequenceNumber()

func (*FullFrameWriter) DisableTimestamp

func (f *FullFrameWriter) DisableTimestamp()

func (*FullFrameWriter) Frame

func (f *FullFrameWriter) Frame() Frame

func (*FullFrameWriter) PayloadType

func (f *FullFrameWriter) PayloadType() (uint8, bool)

func (*FullFrameWriter) Read

func (f *FullFrameWriter) Read(p []byte) (n int, err error)

func (*FullFrameWriter) SSRC

func (f *FullFrameWriter) SSRC() (uint32, bool)

func (*FullFrameWriter) SequenceNumber

func (f *FullFrameWriter) SequenceNumber() (uint16, bool)

func (*FullFrameWriter) SetFrame

func (f *FullFrameWriter) SetFrame(frame Frame)

func (*FullFrameWriter) SetPayloadType

func (f *FullFrameWriter) SetPayloadType(payloadType uint8)

func (*FullFrameWriter) SetSSRC

func (f *FullFrameWriter) SetSSRC(ssrc uint32)

func (*FullFrameWriter) SetSequenceNumber

func (f *FullFrameWriter) SetSequenceNumber(sequenceNumber uint16)

func (*FullFrameWriter) SetTimestamp

func (f *FullFrameWriter) SetTimestamp(timestamp uint32)

func (*FullFrameWriter) Size

func (f *FullFrameWriter) Size() int

func (*FullFrameWriter) Timestamp

func (f *FullFrameWriter) Timestamp() (uint32, bool)

func (*FullFrameWriter) WriteTo

func (f *FullFrameWriter) WriteTo(w io.Writer) (n int64, err error)

func (*FullFrameWriter) WriteToUDP

func (f *FullFrameWriter) WriteToUDP(buffer *bytes.Buffer, udpConn *net.UDPConn) (err error)

type IncomingFrame

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

func (*IncomingFrame) AddRef

func (f *IncomingFrame) AddRef()

func (*IncomingFrame) AddRelation

func (f *IncomingFrame) AddRelation(relation pool.Reference)

func (*IncomingFrame) Append

func (f *IncomingFrame) Append(packet rtp.Packet) bool

func (*IncomingFrame) Clear

func (f *IncomingFrame) Clear()

func (*IncomingFrame) End

func (f *IncomingFrame) End() time.Time

func (*IncomingFrame) Len

func (f *IncomingFrame) Len() int

func (*IncomingFrame) Packet

func (f *IncomingFrame) Packet(i int) rtp.Packet

func (*IncomingFrame) PayloadType

func (f *IncomingFrame) PayloadType() uint8

func (*IncomingFrame) Range

func (f *IncomingFrame) Range(fn func(i int, packet rtp.Packet) bool) bool

func (*IncomingFrame) Release

func (f *IncomingFrame) Release() bool

func (*IncomingFrame) SetPayloadType

func (f *IncomingFrame) SetPayloadType(typ uint8)

func (*IncomingFrame) SetTimestamp

func (f *IncomingFrame) SetTimestamp(timestamp uint32)

func (*IncomingFrame) Start

func (f *IncomingFrame) Start() time.Time

func (*IncomingFrame) Timestamp

func (f *IncomingFrame) Timestamp() uint32

func (*IncomingFrame) Use

func (f *IncomingFrame) Use() *IncomingFrame

type PayloadFrameWriter

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

func (*PayloadFrameWriter) Frame

func (f *PayloadFrameWriter) Frame() Frame

func (*PayloadFrameWriter) Read

func (f *PayloadFrameWriter) Read(p []byte) (n int, err error)

func (*PayloadFrameWriter) SetFrame

func (f *PayloadFrameWriter) SetFrame(frame Frame)

func (*PayloadFrameWriter) Size

func (f *PayloadFrameWriter) Size() int

func (*PayloadFrameWriter) WriteTo

func (f *PayloadFrameWriter) WriteTo(w io.Writer) (n int64, err error)

Jump to

Keyboard shortcuts

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