formats

package
v3.11.0 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2023 License: MIT Imports: 22 Imported by: 7

Documentation

Overview

Package formats contains RTP format definitions, decoders and encoders.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AV1 added in v3.3.0

type AV1 struct {
	PayloadTyp uint8
	LevelIdx   *int
	Profile    *int
	Tier       *int
}

AV1 is a RTP format for the AV1 codec. Specification: https://aomediacodec.github.io/av1-rtp-spec/

func (*AV1) ClockRate added in v3.3.0

func (f *AV1) ClockRate() int

ClockRate implements Format.

func (*AV1) Codec added in v3.8.0

func (f *AV1) Codec() string

Codec implements Format.

func (*AV1) CreateDecoder deprecated added in v3.5.0

func (f *AV1) CreateDecoder() *rtpav1.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*AV1) CreateDecoder2 added in v3.7.0

func (f *AV1) CreateDecoder2() (*rtpav1.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*AV1) CreateEncoder deprecated added in v3.5.0

func (f *AV1) CreateEncoder() *rtpav1.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*AV1) CreateEncoder2 added in v3.7.0

func (f *AV1) CreateEncoder2() (*rtpav1.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*AV1) FMTP added in v3.3.0

func (f *AV1) FMTP() map[string]string

FMTP implements Format.

func (*AV1) PTSEqualsDTS added in v3.3.0

func (f *AV1) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*AV1) PayloadType added in v3.3.0

func (f *AV1) PayloadType() uint8

PayloadType implements Format.

func (*AV1) RTPMap added in v3.3.0

func (f *AV1) RTPMap() string

RTPMap implements Format.

func (*AV1) String deprecated added in v3.3.0

func (f *AV1) String() string

String implements Format.

Deprecated: replaced by Codec().

type Format

type Format interface {

	// Codec returns the codec name.
	Codec() string

	// Deprecated: replaced by Codec().
	String() string

	// ClockRate returns the clock rate.
	ClockRate() int

	// PayloadType returns the payload type.
	PayloadType() uint8

	// RTPMap returns the rtpmap attribute.
	RTPMap() string

	// FMTP returns the fmtp attribute.
	FMTP() map[string]string

	// PTSEqualsDTS checks whether PTS is equal to DTS in RTP packets.
	PTSEqualsDTS(*rtp.Packet) bool
	// contains filtered or unexported methods
}

Format is a media format. It defines the payload type of RTP packets and how to encode/decode them.

func Unmarshal

func Unmarshal(mediaType string, payloadType uint8, rtpMap string, fmtp map[string]string) (Format, error)

Unmarshal decodes a format from a media description.

type G711

type G711 struct {
	// whether to use mu-law. Otherwise, A-law is used.
	MULaw bool
}

G711 is a RTP format for the G711 codec, encoded with mu-law or A-law. Specification: https://datatracker.ietf.org/doc/html/rfc3551

func (*G711) ClockRate

func (f *G711) ClockRate() int

ClockRate implements Format.

func (*G711) Codec added in v3.8.0

func (f *G711) Codec() string

Codec implements Format.

func (*G711) CreateDecoder deprecated

func (f *G711) CreateDecoder() *rtpsimpleaudio.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*G711) CreateDecoder2 added in v3.7.0

func (f *G711) CreateDecoder2() (*rtpsimpleaudio.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*G711) CreateEncoder deprecated

func (f *G711) CreateEncoder() *rtpsimpleaudio.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*G711) CreateEncoder2 added in v3.7.0

func (f *G711) CreateEncoder2() (*rtpsimpleaudio.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*G711) FMTP added in v3.3.0

func (f *G711) FMTP() map[string]string

FMTP implements Format.

func (*G711) PTSEqualsDTS

func (f *G711) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*G711) PayloadType

func (f *G711) PayloadType() uint8

PayloadType implements Format.

func (*G711) RTPMap added in v3.3.0

func (f *G711) RTPMap() string

RTPMap implements Format.

func (*G711) String deprecated

func (f *G711) String() string

String implements Format.

Deprecated: replaced by Codec().

type G722

type G722 struct{}

G722 is a RTP format for the G722 codec. Specification: https://datatracker.ietf.org/doc/html/rfc3551

func (*G722) ClockRate

func (f *G722) ClockRate() int

ClockRate implements Format.

func (*G722) Codec added in v3.8.0

func (f *G722) Codec() string

Codec implements Format.

func (*G722) CreateDecoder deprecated

func (f *G722) CreateDecoder() *rtpsimpleaudio.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*G722) CreateDecoder2 added in v3.7.0

func (f *G722) CreateDecoder2() (*rtpsimpleaudio.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*G722) CreateEncoder deprecated

func (f *G722) CreateEncoder() *rtpsimpleaudio.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*G722) CreateEncoder2 added in v3.7.0

func (f *G722) CreateEncoder2() (*rtpsimpleaudio.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*G722) FMTP added in v3.3.0

func (f *G722) FMTP() map[string]string

FMTP implements Format.

func (*G722) PTSEqualsDTS

func (f *G722) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*G722) PayloadType

func (f *G722) PayloadType() uint8

PayloadType implements Format.

func (*G722) RTPMap added in v3.3.0

func (f *G722) RTPMap() string

RTPMap implements Format.

func (*G722) String deprecated

func (f *G722) String() string

String implements Format.

Deprecated: replaced by Codec().

type G726 added in v3.9.0

type G726 struct {
	PayloadTyp uint8
	BitRate    int
	BigEndian  bool
}

G726 is a RTP format for the G726 codec. Specification: https://datatracker.ietf.org/doc/html/rfc3551

func (*G726) ClockRate added in v3.9.0

func (f *G726) ClockRate() int

ClockRate implements Format.

func (*G726) Codec added in v3.9.0

func (f *G726) Codec() string

Codec implements Format.

func (*G726) FMTP added in v3.9.0

func (f *G726) FMTP() map[string]string

FMTP implements Format.

func (*G726) PTSEqualsDTS added in v3.9.0

func (f *G726) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*G726) PayloadType added in v3.9.0

func (f *G726) PayloadType() uint8

PayloadType implements Format.

func (*G726) RTPMap added in v3.9.0

func (f *G726) RTPMap() string

RTPMap implements Format.

func (*G726) String deprecated added in v3.9.0

func (f *G726) String() string

String implements Format.

Deprecated: replaced by Codec().

type Generic

type Generic struct {
	PayloadTyp uint8
	RTPMa      string
	FMT        map[string]string

	// clock rate of the format. Filled when calling Init().
	ClockRat int
}

Generic is a generic RTP format.

func (*Generic) ClockRate

func (f *Generic) ClockRate() int

ClockRate implements Format.

func (*Generic) Codec added in v3.8.0

func (f *Generic) Codec() string

Codec implements Format.

func (*Generic) FMTP

func (f *Generic) FMTP() map[string]string

FMTP implements Format.

func (*Generic) Init

func (f *Generic) Init() error

Init computes the clock rate of the format. It is mandatory to call it.

func (*Generic) PTSEqualsDTS

func (f *Generic) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*Generic) PayloadType

func (f *Generic) PayloadType() uint8

PayloadType implements Format.

func (*Generic) RTPMap

func (f *Generic) RTPMap() string

RTPMap implements Format.

func (*Generic) String deprecated

func (f *Generic) String() string

String implements Format.

Deprecated: replaced by Codec().

type H264

type H264 struct {
	PayloadTyp        uint8
	SPS               []byte
	PPS               []byte
	PacketizationMode int
	// contains filtered or unexported fields
}

H264 is a RTP format for the H264 codec, defined in MPEG-4 part 10. Specification: https://datatracker.ietf.org/doc/html/rfc6184

func (*H264) ClockRate

func (f *H264) ClockRate() int

ClockRate implements Format.

func (*H264) Codec added in v3.8.0

func (f *H264) Codec() string

Codec implements Format.

func (*H264) CreateDecoder deprecated

func (f *H264) CreateDecoder() *rtph264.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*H264) CreateDecoder2 added in v3.7.0

func (f *H264) CreateDecoder2() (*rtph264.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*H264) CreateEncoder deprecated

func (f *H264) CreateEncoder() *rtph264.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*H264) CreateEncoder2 added in v3.7.0

func (f *H264) CreateEncoder2() (*rtph264.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*H264) FMTP added in v3.3.0

func (f *H264) FMTP() map[string]string

FMTP implements Format.

func (*H264) PTSEqualsDTS

func (f *H264) PTSEqualsDTS(pkt *rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*H264) PayloadType

func (f *H264) PayloadType() uint8

PayloadType implements Format.

func (*H264) RTPMap added in v3.3.0

func (f *H264) RTPMap() string

RTPMap implements Format.

func (*H264) SafeParams

func (f *H264) SafeParams() ([]byte, []byte)

SafeParams returns the codec parameters.

func (*H264) SafeSetParams

func (f *H264) SafeSetParams(sps []byte, pps []byte)

SafeSetParams sets the codec parameters.

func (*H264) String deprecated

func (f *H264) String() string

String implements Format.

Deprecated: replaced by Codec().

type H265

type H265 struct {
	PayloadTyp uint8
	VPS        []byte
	SPS        []byte
	PPS        []byte
	MaxDONDiff int
	// contains filtered or unexported fields
}

H265 is a RTP format for the H265 codec. Specification: https://datatracker.ietf.org/doc/html/rfc7798

func (*H265) ClockRate

func (f *H265) ClockRate() int

ClockRate implements Format.

func (*H265) Codec added in v3.8.0

func (f *H265) Codec() string

Codec implements Format.

func (*H265) CreateDecoder deprecated

func (f *H265) CreateDecoder() *rtph265.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*H265) CreateDecoder2 added in v3.7.0

func (f *H265) CreateDecoder2() (*rtph265.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*H265) CreateEncoder deprecated

func (f *H265) CreateEncoder() *rtph265.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*H265) CreateEncoder2 added in v3.7.0

func (f *H265) CreateEncoder2() (*rtph265.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*H265) FMTP added in v3.3.0

func (f *H265) FMTP() map[string]string

FMTP implements Format.

func (*H265) PTSEqualsDTS

func (f *H265) PTSEqualsDTS(pkt *rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*H265) PayloadType

func (f *H265) PayloadType() uint8

PayloadType implements Format.

func (*H265) RTPMap added in v3.3.0

func (f *H265) RTPMap() string

RTPMap implements Format.

func (*H265) SafeParams

func (f *H265) SafeParams() ([]byte, []byte, []byte)

SafeParams returns the codec parameters.

func (*H265) SafeSetParams

func (f *H265) SafeSetParams(vps []byte, sps []byte, pps []byte)

SafeSetParams sets the codec parameters.

func (*H265) String deprecated

func (f *H265) String() string

String implements Format.

Deprecated: replaced by Codec().

type LPCM

type LPCM struct {
	PayloadTyp   uint8
	BitDepth     int
	SampleRate   int
	ChannelCount int
}

LPCM is a RTP format for the uncompressed, Linear PCM codec. Specification: https://datatracker.ietf.org/doc/html/rfc3190

func (*LPCM) ClockRate

func (f *LPCM) ClockRate() int

ClockRate implements Format.

func (*LPCM) Codec added in v3.8.0

func (f *LPCM) Codec() string

Codec implements Format.

func (*LPCM) CreateDecoder deprecated

func (f *LPCM) CreateDecoder() *rtplpcm.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*LPCM) CreateDecoder2 added in v3.7.0

func (f *LPCM) CreateDecoder2() (*rtplpcm.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*LPCM) CreateEncoder deprecated

func (f *LPCM) CreateEncoder() *rtplpcm.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*LPCM) CreateEncoder2 added in v3.7.0

func (f *LPCM) CreateEncoder2() (*rtplpcm.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*LPCM) FMTP added in v3.3.0

func (f *LPCM) FMTP() map[string]string

FMTP implements Format.

func (*LPCM) PTSEqualsDTS

func (f *LPCM) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*LPCM) PayloadType

func (f *LPCM) PayloadType() uint8

PayloadType implements Format.

func (*LPCM) RTPMap added in v3.3.0

func (f *LPCM) RTPMap() string

RTPMap implements Format.

func (*LPCM) String deprecated

func (f *LPCM) String() string

String implements Format.

Deprecated: replaced by Codec().

type MJPEG

type MJPEG struct{}

MJPEG is a RTP format for the Motion-JPEG codec. Specification: https://datatracker.ietf.org/doc/html/rfc2435

func (*MJPEG) ClockRate

func (f *MJPEG) ClockRate() int

ClockRate implements Format.

func (*MJPEG) Codec added in v3.8.0

func (f *MJPEG) Codec() string

Codec implements Format.

func (*MJPEG) CreateDecoder deprecated

func (f *MJPEG) CreateDecoder() *rtpmjpeg.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*MJPEG) CreateDecoder2 added in v3.7.0

func (f *MJPEG) CreateDecoder2() (*rtpmjpeg.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*MJPEG) CreateEncoder deprecated

func (f *MJPEG) CreateEncoder() *rtpmjpeg.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*MJPEG) CreateEncoder2 added in v3.7.0

func (f *MJPEG) CreateEncoder2() (*rtpmjpeg.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*MJPEG) FMTP added in v3.3.0

func (f *MJPEG) FMTP() map[string]string

FMTP implements Format.

func (*MJPEG) PTSEqualsDTS

func (f *MJPEG) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*MJPEG) PayloadType

func (f *MJPEG) PayloadType() uint8

PayloadType implements Format.

func (*MJPEG) RTPMap added in v3.3.0

func (f *MJPEG) RTPMap() string

RTPMap implements Format.

func (*MJPEG) String deprecated

func (f *MJPEG) String() string

String implements Format.

Deprecated: replaced by Codec().

type MPEG1Audio added in v3.10.0

type MPEG1Audio struct{}

MPEG1Audio is a RTP format for a MPEG-1/2 Audio codec. Specification: https://datatracker.ietf.org/doc/html/rfc2250

func (*MPEG1Audio) ClockRate added in v3.10.0

func (f *MPEG1Audio) ClockRate() int

ClockRate implements Format.

func (*MPEG1Audio) Codec added in v3.10.0

func (f *MPEG1Audio) Codec() string

Codec implements Format.

func (*MPEG1Audio) CreateDecoder deprecated added in v3.10.0

func (f *MPEG1Audio) CreateDecoder() *rtpmpeg1audio.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*MPEG1Audio) CreateDecoder2 added in v3.10.0

func (f *MPEG1Audio) CreateDecoder2() (*rtpmpeg1audio.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*MPEG1Audio) CreateEncoder deprecated added in v3.10.0

func (f *MPEG1Audio) CreateEncoder() *rtpmpeg1audio.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*MPEG1Audio) CreateEncoder2 added in v3.10.0

func (f *MPEG1Audio) CreateEncoder2() (*rtpmpeg1audio.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*MPEG1Audio) FMTP added in v3.10.0

func (f *MPEG1Audio) FMTP() map[string]string

FMTP implements Format.

func (*MPEG1Audio) PTSEqualsDTS added in v3.10.0

func (f *MPEG1Audio) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*MPEG1Audio) PayloadType added in v3.10.0

func (f *MPEG1Audio) PayloadType() uint8

PayloadType implements Format.

func (*MPEG1Audio) RTPMap added in v3.10.0

func (f *MPEG1Audio) RTPMap() string

RTPMap implements Format.

func (*MPEG1Audio) String deprecated added in v3.10.0

func (f *MPEG1Audio) String() string

String implements Format.

Deprecated: replaced by Codec().

type MPEG1Video added in v3.10.0

type MPEG1Video struct{}

MPEG1Video is a RTP format for a MPEG-1/2 Video codec. Specification: https://datatracker.ietf.org/doc/html/rfc2250

func (*MPEG1Video) ClockRate added in v3.10.0

func (f *MPEG1Video) ClockRate() int

ClockRate implements Format.

func (*MPEG1Video) Codec added in v3.10.0

func (f *MPEG1Video) Codec() string

Codec implements Format.

func (*MPEG1Video) FMTP added in v3.10.0

func (f *MPEG1Video) FMTP() map[string]string

FMTP implements Format.

func (*MPEG1Video) PTSEqualsDTS added in v3.10.0

func (f *MPEG1Video) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*MPEG1Video) PayloadType added in v3.10.0

func (f *MPEG1Video) PayloadType() uint8

PayloadType implements Format.

func (*MPEG1Video) RTPMap added in v3.10.0

func (f *MPEG1Video) RTPMap() string

RTPMap implements Format.

func (*MPEG1Video) String deprecated added in v3.10.0

func (f *MPEG1Video) String() string

String implements Format.

Deprecated: replaced by Codec().

type MPEG2Audio deprecated

type MPEG2Audio = MPEG1Audio

MPEG2Audio is an alias for MPEG1Audio.

Deprecated: replaced by MPEG1Audio.

type MPEG2Video deprecated

type MPEG2Video = MPEG1Video

MPEG2Video is an alias for MPEG1Video.

Deprecated: replaced by MPEG1Video.

type MPEG4Audio

type MPEG4Audio = MPEG4AudioGeneric

MPEG4Audio is an alias for MPEG4AudioGeneric.

type MPEG4AudioGeneric added in v3.2.0

type MPEG4AudioGeneric struct {
	PayloadTyp       uint8
	ProfileLevelID   int
	Config           *mpeg4audio.Config
	SizeLength       int
	IndexLength      int
	IndexDeltaLength int
}

MPEG4AudioGeneric is a RTP format for a MPEG-4 Audio codec. Specification: https://datatracker.ietf.org/doc/html/rfc3640

func (*MPEG4AudioGeneric) ClockRate added in v3.2.0

func (f *MPEG4AudioGeneric) ClockRate() int

ClockRate implements Format.

func (*MPEG4AudioGeneric) Codec added in v3.8.0

func (f *MPEG4AudioGeneric) Codec() string

Codec implements Format.

func (*MPEG4AudioGeneric) CreateDecoder deprecated added in v3.2.0

func (f *MPEG4AudioGeneric) CreateDecoder() *rtpmpeg4audio.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*MPEG4AudioGeneric) CreateDecoder2 added in v3.7.0

func (f *MPEG4AudioGeneric) CreateDecoder2() (*rtpmpeg4audio.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*MPEG4AudioGeneric) CreateEncoder deprecated added in v3.2.0

func (f *MPEG4AudioGeneric) CreateEncoder() *rtpmpeg4audio.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*MPEG4AudioGeneric) CreateEncoder2 added in v3.7.0

func (f *MPEG4AudioGeneric) CreateEncoder2() (*rtpmpeg4audio.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*MPEG4AudioGeneric) FMTP added in v3.3.0

func (f *MPEG4AudioGeneric) FMTP() map[string]string

FMTP implements Format.

func (*MPEG4AudioGeneric) PTSEqualsDTS added in v3.2.0

func (f *MPEG4AudioGeneric) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*MPEG4AudioGeneric) PayloadType added in v3.2.0

func (f *MPEG4AudioGeneric) PayloadType() uint8

PayloadType implements Format.

func (*MPEG4AudioGeneric) RTPMap added in v3.3.0

func (f *MPEG4AudioGeneric) RTPMap() string

RTPMap implements Format.

func (*MPEG4AudioGeneric) String deprecated added in v3.2.0

func (f *MPEG4AudioGeneric) String() string

String implements Format.

Deprecated: replaced by Codec().

type MPEG4AudioLATM added in v3.2.0

type MPEG4AudioLATM struct {
	PayloadTyp     uint8
	ProfileLevelID int
	Bitrate        *int
	CPresent       bool
	Config         *mpeg4audio.StreamMuxConfig
	SBREnabled     *bool
}

MPEG4AudioLATM is a RTP format for a MPEG-4 Audio codec. Specification: https://datatracker.ietf.org/doc/html/rfc6416#section-7.3

func (*MPEG4AudioLATM) ClockRate added in v3.2.0

func (f *MPEG4AudioLATM) ClockRate() int

ClockRate implements Format.

func (*MPEG4AudioLATM) Codec added in v3.8.0

func (f *MPEG4AudioLATM) Codec() string

Codec implements Format.

func (*MPEG4AudioLATM) CreateDecoder deprecated added in v3.7.0

func (f *MPEG4AudioLATM) CreateDecoder() *rtpmpeg4audiolatm.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*MPEG4AudioLATM) CreateDecoder2 added in v3.7.0

func (f *MPEG4AudioLATM) CreateDecoder2() (*rtpmpeg4audiolatm.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*MPEG4AudioLATM) CreateEncoder deprecated added in v3.7.0

func (f *MPEG4AudioLATM) CreateEncoder() *rtpmpeg4audiolatm.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*MPEG4AudioLATM) CreateEncoder2 added in v3.7.0

func (f *MPEG4AudioLATM) CreateEncoder2() (*rtpmpeg4audiolatm.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*MPEG4AudioLATM) FMTP added in v3.3.0

func (f *MPEG4AudioLATM) FMTP() map[string]string

FMTP implements Format.

func (*MPEG4AudioLATM) PTSEqualsDTS added in v3.2.0

func (f *MPEG4AudioLATM) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*MPEG4AudioLATM) PayloadType added in v3.2.0

func (f *MPEG4AudioLATM) PayloadType() uint8

PayloadType implements Format.

func (*MPEG4AudioLATM) RTPMap added in v3.3.0

func (f *MPEG4AudioLATM) RTPMap() string

RTPMap implements Format.

func (*MPEG4AudioLATM) String deprecated added in v3.2.0

func (f *MPEG4AudioLATM) String() string

String implements Format.

Deprecated: replaced by Codec().

type MPEG4Video added in v3.2.0

type MPEG4Video = MPEG4VideoES

MPEG4Video is an alias for MPEG4VideoES.

type MPEG4VideoES added in v3.2.0

type MPEG4VideoES struct {
	PayloadTyp     uint8
	ProfileLevelID int
	Config         []byte
}

MPEG4VideoES is a RTP format for a MPEG-4 Video codec. Specification: https://datatracker.ietf.org/doc/html/rfc6416#section-7.1

func (*MPEG4VideoES) ClockRate added in v3.2.0

func (f *MPEG4VideoES) ClockRate() int

ClockRate implements Format.

func (*MPEG4VideoES) Codec added in v3.8.0

func (f *MPEG4VideoES) Codec() string

Codec implements Format.

func (*MPEG4VideoES) CreateDecoder deprecated added in v3.4.0

func (f *MPEG4VideoES) CreateDecoder() *rtpmpeg4video.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*MPEG4VideoES) CreateDecoder2 added in v3.7.0

func (f *MPEG4VideoES) CreateDecoder2() (*rtpmpeg4video.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*MPEG4VideoES) CreateEncoder deprecated added in v3.4.0

func (f *MPEG4VideoES) CreateEncoder() *rtpmpeg4video.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*MPEG4VideoES) CreateEncoder2 added in v3.7.0

func (f *MPEG4VideoES) CreateEncoder2() (*rtpmpeg4video.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*MPEG4VideoES) FMTP added in v3.3.0

func (f *MPEG4VideoES) FMTP() map[string]string

FMTP implements Format.

func (*MPEG4VideoES) PTSEqualsDTS added in v3.2.0

func (f *MPEG4VideoES) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*MPEG4VideoES) PayloadType added in v3.2.0

func (f *MPEG4VideoES) PayloadType() uint8

PayloadType implements Format.

func (*MPEG4VideoES) RTPMap added in v3.3.0

func (f *MPEG4VideoES) RTPMap() string

RTPMap implements Format.

func (*MPEG4VideoES) String deprecated added in v3.2.0

func (f *MPEG4VideoES) String() string

String implements Format.

Deprecated: replaced by Codec().

type MPEGTS added in v3.2.1

type MPEGTS struct{}

MPEGTS is a RTP format for MPEG-TS. Specification: https://datatracker.ietf.org/doc/html/rfc2250

func (*MPEGTS) ClockRate added in v3.2.1

func (f *MPEGTS) ClockRate() int

ClockRate implements Format.

func (*MPEGTS) Codec added in v3.8.0

func (f *MPEGTS) Codec() string

Codec implements Format.

func (*MPEGTS) FMTP added in v3.3.0

func (f *MPEGTS) FMTP() map[string]string

FMTP implements Format.

func (*MPEGTS) PTSEqualsDTS added in v3.2.1

func (f *MPEGTS) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*MPEGTS) PayloadType added in v3.2.1

func (f *MPEGTS) PayloadType() uint8

PayloadType implements Format.

func (*MPEGTS) RTPMap added in v3.3.0

func (f *MPEGTS) RTPMap() string

RTPMap implements Format.

func (*MPEGTS) String deprecated added in v3.2.1

func (f *MPEGTS) String() string

String implements Format.

Deprecated: replaced by Codec().

type Opus

type Opus struct {
	PayloadTyp uint8
	IsStereo   bool
}

Opus is a RTP format for the Opus codec. Specification: https://datatracker.ietf.org/doc/html/rfc7587

func (*Opus) ClockRate

func (f *Opus) ClockRate() int

ClockRate implements Format.

func (*Opus) Codec added in v3.8.0

func (f *Opus) Codec() string

Codec implements Format.

func (*Opus) CreateDecoder deprecated

func (f *Opus) CreateDecoder() *rtpsimpleaudio.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*Opus) CreateDecoder2 added in v3.7.0

func (f *Opus) CreateDecoder2() (*rtpsimpleaudio.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*Opus) CreateEncoder deprecated

func (f *Opus) CreateEncoder() *rtpsimpleaudio.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*Opus) CreateEncoder2 added in v3.7.0

func (f *Opus) CreateEncoder2() (*rtpsimpleaudio.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*Opus) FMTP added in v3.3.0

func (f *Opus) FMTP() map[string]string

FMTP implements Format.

func (*Opus) PTSEqualsDTS

func (f *Opus) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*Opus) PayloadType

func (f *Opus) PayloadType() uint8

PayloadType implements Format.

func (*Opus) RTPMap added in v3.3.0

func (f *Opus) RTPMap() string

RTPMap implements Format.

func (*Opus) String deprecated

func (f *Opus) String() string

String implements Format.

Deprecated: replaced by Codec().

type Speex added in v3.11.0

type Speex struct {
	PayloadTyp uint8
	SampleRate int
	VBR        *bool
}

Speex is a RTP format for the Speex codec. Specification: https://datatracker.ietf.org/doc/html/rfc5574

func (*Speex) ClockRate added in v3.11.0

func (f *Speex) ClockRate() int

ClockRate implements Format.

func (*Speex) Codec added in v3.11.0

func (f *Speex) Codec() string

Codec implements Format.

func (*Speex) FMTP added in v3.11.0

func (f *Speex) FMTP() map[string]string

FMTP implements Format.

func (*Speex) PTSEqualsDTS added in v3.11.0

func (f *Speex) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*Speex) PayloadType added in v3.11.0

func (f *Speex) PayloadType() uint8

PayloadType implements Format.

func (*Speex) RTPMap added in v3.11.0

func (f *Speex) RTPMap() string

RTPMap implements Format.

func (*Speex) String deprecated added in v3.11.0

func (f *Speex) String() string

String implements Format.

Deprecated: replaced by Codec().

type VP8

type VP8 struct {
	PayloadTyp uint8
	MaxFR      *int
	MaxFS      *int
}

VP8 is a RTP format for the VP8 codec. Specification: https://datatracker.ietf.org/doc/html/rfc7741

func (*VP8) ClockRate

func (f *VP8) ClockRate() int

ClockRate implements Format.

func (*VP8) Codec added in v3.8.0

func (f *VP8) Codec() string

Codec implements Format.

func (*VP8) CreateDecoder deprecated

func (f *VP8) CreateDecoder() *rtpvp8.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*VP8) CreateDecoder2 added in v3.7.0

func (f *VP8) CreateDecoder2() (*rtpvp8.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*VP8) CreateEncoder deprecated

func (f *VP8) CreateEncoder() *rtpvp8.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*VP8) CreateEncoder2 added in v3.7.0

func (f *VP8) CreateEncoder2() (*rtpvp8.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*VP8) FMTP added in v3.3.0

func (f *VP8) FMTP() map[string]string

FMTP implements Format.

func (*VP8) PTSEqualsDTS

func (f *VP8) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*VP8) PayloadType

func (f *VP8) PayloadType() uint8

PayloadType implements Format.

func (*VP8) RTPMap added in v3.3.0

func (f *VP8) RTPMap() string

RTPMap implements Format.

func (*VP8) String deprecated

func (f *VP8) String() string

String implements Format.

Deprecated: replaced by Codec().

type VP9

type VP9 struct {
	PayloadTyp uint8
	MaxFR      *int
	MaxFS      *int
	ProfileID  *int
}

VP9 is a RTP format for the VP9 codec. Specification: https://datatracker.ietf.org/doc/html/draft-ietf-payload-vp9-16

func (*VP9) ClockRate

func (f *VP9) ClockRate() int

ClockRate implements Format.

func (*VP9) Codec added in v3.8.0

func (f *VP9) Codec() string

Codec implements Format.

func (*VP9) CreateDecoder deprecated

func (f *VP9) CreateDecoder() *rtpvp9.Decoder

CreateDecoder creates a decoder able to decode the content of the format.

Deprecated: this has been replaced by CreateDecoder2() that can also return an error.

func (*VP9) CreateDecoder2 added in v3.7.0

func (f *VP9) CreateDecoder2() (*rtpvp9.Decoder, error)

CreateDecoder2 creates a decoder able to decode the content of the format.

func (*VP9) CreateEncoder deprecated

func (f *VP9) CreateEncoder() *rtpvp9.Encoder

CreateEncoder creates an encoder able to encode the content of the format.

Deprecated: this has been replaced by CreateEncoder2() that can also return an error.

func (*VP9) CreateEncoder2 added in v3.7.0

func (f *VP9) CreateEncoder2() (*rtpvp9.Encoder, error)

CreateEncoder2 creates an encoder able to encode the content of the format.

func (*VP9) FMTP added in v3.3.0

func (f *VP9) FMTP() map[string]string

FMTP implements Format.

func (*VP9) PTSEqualsDTS

func (f *VP9) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*VP9) PayloadType

func (f *VP9) PayloadType() uint8

PayloadType implements Format.

func (*VP9) RTPMap added in v3.3.0

func (f *VP9) RTPMap() string

RTPMap implements Format.

func (*VP9) String deprecated

func (f *VP9) String() string

String implements Format.

Deprecated: replaced by Codec().

type Vorbis

type Vorbis struct {
	PayloadTyp    uint8
	SampleRate    int
	ChannelCount  int
	Configuration []byte
}

Vorbis is a RTP format for the Vorbis codec. Specification: https://datatracker.ietf.org/doc/html/rfc5215

func (*Vorbis) ClockRate

func (f *Vorbis) ClockRate() int

ClockRate implements Format.

func (*Vorbis) Codec added in v3.8.0

func (f *Vorbis) Codec() string

Codec implements Format.

func (*Vorbis) FMTP added in v3.3.0

func (f *Vorbis) FMTP() map[string]string

FMTP implements Format.

func (*Vorbis) PTSEqualsDTS

func (f *Vorbis) PTSEqualsDTS(*rtp.Packet) bool

PTSEqualsDTS implements Format.

func (*Vorbis) PayloadType

func (f *Vorbis) PayloadType() uint8

PayloadType implements Format.

func (*Vorbis) RTPMap added in v3.3.0

func (f *Vorbis) RTPMap() string

RTPMap implements Format.

func (*Vorbis) String deprecated

func (f *Vorbis) String() string

String implements Format.

Deprecated: replaced by Codec().

Directories

Path Synopsis
Package rtpav1 contains a RTP/AV1 decoder and encoder.
Package rtpav1 contains a RTP/AV1 decoder and encoder.
Package rtph264 contains a RTP/H264 decoder and encoder.
Package rtph264 contains a RTP/H264 decoder and encoder.
Package rtph265 contains a RTP/H265 decoder and encoder.
Package rtph265 contains a RTP/H265 decoder and encoder.
Package rtplpcm contains a RTP/LPCM decoder and encoder.
Package rtplpcm contains a RTP/LPCM decoder and encoder.
Package rtpmjpeg contains a RTP/M-JPEG decoder and encoder.
Package rtpmjpeg contains a RTP/M-JPEG decoder and encoder.
headers
Package headers contains RTP/M-JPEG headers.
Package headers contains RTP/M-JPEG headers.
Package rtpmpeg1audio contains a RTP/MPEG-1/2 Audio decoder and encoder.
Package rtpmpeg1audio contains a RTP/MPEG-1/2 Audio decoder and encoder.
Package rtpmpeg2audio contains a RTP/MPEG-1/2 Audio decoder and encoder.
Package rtpmpeg2audio contains a RTP/MPEG-1/2 Audio decoder and encoder.
Package rtpmpeg4audio contains a RTP/MPEG-4 Audio decoder and encoder.
Package rtpmpeg4audio contains a RTP/MPEG-4 Audio decoder and encoder.
Package rtpmpeg4audiogeneric contains a RTP/MPEG-4 Audio decoder and encoder.
Package rtpmpeg4audiogeneric contains a RTP/MPEG-4 Audio decoder and encoder.
Package rtpmpeg4audiolatm contains a RTP/MPEG-4 Audio decoder and encoder.
Package rtpmpeg4audiolatm contains a RTP/MPEG-4 Audio decoder and encoder.
Package rtpmpeg4video contains a RTP/MPEG-4 Video decoder and encoder.
Package rtpmpeg4video contains a RTP/MPEG-4 Video decoder and encoder.
Package rtpsimpleaudio contains a RTP decoder and encoder for audio codecs that fit in a single packet.
Package rtpsimpleaudio contains a RTP decoder and encoder for audio codecs that fit in a single packet.
Package rtpvp8 contains a RTP/VP8 decoder and encoder.
Package rtpvp8 contains a RTP/VP8 decoder and encoder.
Package rtpvp9 contains a RTP/VP9 decoder and encoder.
Package rtpvp9 contains a RTP/VP9 decoder and encoder.

Jump to

Keyboard shortcuts

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