test error
This commit is contained in:
		| @@ -227,6 +227,9 @@ func SplitNALUs(b []byte) (nalus [][]byte, typ int) { | |||||||
| 		_b := b[4:] | 		_b := b[4:] | ||||||
| 		nalus := [][]byte{} | 		nalus := [][]byte{} | ||||||
| 		for { | 		for { | ||||||
|  | 			if _val4 > uint32(len(_b)) { | ||||||
|  | 				break | ||||||
|  | 			} | ||||||
| 			nalus = append(nalus, _b[:_val4]) | 			nalus = append(nalus, _b[:_val4]) | ||||||
| 			_b = _b[_val4:] | 			_b = _b[_val4:] | ||||||
| 			if len(_b) < 4 { | 			if len(_b) < 4 { | ||||||
|   | |||||||
| @@ -555,6 +555,9 @@ func (client *RTSPClient) RTPDemuxer(payloadRAW *[]byte) ([]*av.Packet, bool) { | |||||||
| 			client.BufferRtpPacket.Reset() | 			client.BufferRtpPacket.Reset() | ||||||
| 		} | 		} | ||||||
| 		nalRaw, _ := h264parser.SplitNALUs(content[offset:end]) | 		nalRaw, _ := h264parser.SplitNALUs(content[offset:end]) | ||||||
|  | 		if len(nalRaw) == 0 || len(nalRaw[0]) == 0 { | ||||||
|  | 			return nil, false | ||||||
|  | 		} | ||||||
| 		var retmap []*av.Packet | 		var retmap []*av.Packet | ||||||
| 		for _, nal := range nalRaw { | 		for _, nal := range nalRaw { | ||||||
| 			if client.videoCodec == av.H265 { | 			if client.videoCodec == av.H265 { | ||||||
| @@ -637,7 +640,7 @@ func (client *RTSPClient) RTPDemuxer(payloadRAW *[]byte) ([]*av.Packet, bool) { | |||||||
| 						if isEnd { | 						if isEnd { | ||||||
| 							client.fuStarted = false | 							client.fuStarted = false | ||||||
| 							naluTypef := client.BufferRtpPacket.Bytes()[0] & 0x1f | 							naluTypef := client.BufferRtpPacket.Bytes()[0] & 0x1f | ||||||
| 							if naluTypef == 7 { | 							if naluTypef == 7 || naluTypef == 9 { | ||||||
| 								bufered, _ := h264parser.SplitNALUs(append([]byte{0, 0, 0, 1}, client.BufferRtpPacket.Bytes()...)) | 								bufered, _ := h264parser.SplitNALUs(append([]byte{0, 0, 0, 1}, client.BufferRtpPacket.Bytes()...)) | ||||||
| 								for _, v := range bufered { | 								for _, v := range bufered { | ||||||
| 									naluTypefs := v[0] & 0x1f | 									naluTypefs := v[0] & 0x1f | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Andrey Semochkin
					Andrey Semochkin