Documentation ¶
Index ¶
- Constants
- func EncodeAVC(nals ...[]byte) (avc []byte)
- func GetParameterSet(fmtp string) (sps, pps []byte)
- func GetProfileLevelID(fmtp string) string
- func IsKeyframe(b []byte) bool
- func Join(ps, iframe []byte) []byte
- func NALUType(b []byte) byte
- func RTPDepay(track *streamer.Track) streamer.WrapperFunc
- func RTPPay(mtu uint16) streamer.WrapperFunc
- func RepairAVC(track *streamer.Track) streamer.WrapperFunc
- func SplitAVC(data []byte) [][]byte
- func Types(data []byte) []byte
- type Payloader
Constants ¶
View Source
const ( NALUTypePFrame = 1 // Coded slice of a non-IDR picture NALUTypeIFrame = 5 // Coded slice of an IDR picture NALUTypeSEI = 6 // Supplemental enhancement information (SEI) NALUTypeSPS = 7 // Sequence parameter set NALUTypePPS = 8 // Picture parameter set NALUTypeAUD = 9 // Access unit delimiter )
View Source
const PSMaxSize = 128 // the biggest SPS I've seen is 48 (EZVIZ CS-CV210)
View Source
const RTPPacketVersionAVC = 0
Variables ¶
This section is empty.
Functions ¶
func GetParameterSet ¶
func GetProfileLevelID ¶
GetProfileLevelID - get profile from fmtp line Some devices won't play video with high level, so limit max profile and max level. And return some profile even if fmtp line is empty.
func IsKeyframe ¶
IsKeyframe - check if any NALU in one AU is Keyframe
func RTPPay ¶
func RTPPay(mtu uint16) streamer.WrapperFunc
Types ¶
Click to show internal directories.
Click to hide internal directories.