Add support HTTP-FLV with H265 from new Reolink cameras #1938
This commit is contained in:
+1
-1
@@ -34,7 +34,7 @@ func (m *Muxer) GetInit() []byte {
|
|||||||
switch codec.Name {
|
switch codec.Name {
|
||||||
case core.CodecH264:
|
case core.CodecH264:
|
||||||
b[4] |= FlagsVideo
|
b[4] |= FlagsVideo
|
||||||
obj["videocodecid"] = CodecAVC
|
obj["videocodecid"] = CodecH264
|
||||||
|
|
||||||
case core.CodecAAC:
|
case core.CodecAAC:
|
||||||
b[4] |= FlagsAudio
|
b[4] |= FlagsAudio
|
||||||
|
|||||||
+11
-6
@@ -44,7 +44,9 @@ const (
|
|||||||
TagData = 18
|
TagData = 18
|
||||||
|
|
||||||
CodecAAC = 10
|
CodecAAC = 10
|
||||||
CodecAVC = 7
|
|
||||||
|
CodecH264 = 7
|
||||||
|
CodecHEVC = 12
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@@ -207,15 +209,18 @@ func (c *Producer) probe() error {
|
|||||||
} else {
|
} else {
|
||||||
_ = pkt.Payload[0] >> 4 // FrameType
|
_ = pkt.Payload[0] >> 4 // FrameType
|
||||||
|
|
||||||
if codecID := pkt.Payload[0] & 0b1111; codecID != CodecAVC {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if packetType := pkt.Payload[1]; packetType != PacketTypeAVCHeader { // check if header
|
if packetType := pkt.Payload[1]; packetType != PacketTypeAVCHeader { // check if header
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
codec = h264.ConfigToCodec(pkt.Payload[5:])
|
switch codecID := pkt.Payload[0] & 0b1111; codecID {
|
||||||
|
case CodecH264:
|
||||||
|
codec = h264.ConfigToCodec(pkt.Payload[5:])
|
||||||
|
case CodecHEVC:
|
||||||
|
codec = h265.ConfigToCodec(pkt.Payload[5:])
|
||||||
|
default:
|
||||||
|
continue
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
media := &core.Media{
|
media := &core.Media{
|
||||||
|
|||||||
Reference in New Issue
Block a user