mirror of
https://github.com/aler9/gortsplib
synced 2025-10-17 04:31:00 +08:00
avoid crash in case of invalid H264 SPS (https://github.com/aler9/rtsp-simple-server/issues/590)
This commit is contained in:
4
track.go
4
track.go
@@ -142,6 +142,10 @@ func (t *Track) ClockRate() (int, error) {
|
|||||||
|
|
||||||
// NewTrackH264 initializes an H264 track.
|
// NewTrackH264 initializes an H264 track.
|
||||||
func NewTrackH264(payloadType uint8, conf *TrackConfigH264) (*Track, error) {
|
func NewTrackH264(payloadType uint8, conf *TrackConfigH264) (*Track, error) {
|
||||||
|
if len(conf.SPS) < 4 {
|
||||||
|
return nil, fmt.Errorf("invalid SPS")
|
||||||
|
}
|
||||||
|
|
||||||
spropParameterSets := base64.StdEncoding.EncodeToString(conf.SPS) +
|
spropParameterSets := base64.StdEncoding.EncodeToString(conf.SPS) +
|
||||||
"," + base64.StdEncoding.EncodeToString(conf.PPS)
|
"," + base64.StdEncoding.EncodeToString(conf.PPS)
|
||||||
profileLevelID := strings.ToUpper(hex.EncodeToString(conf.SPS[1:4]))
|
profileLevelID := strings.ToUpper(hex.EncodeToString(conf.SPS[1:4]))
|
||||||
|
Reference in New Issue
Block a user