I have two similar 3-camera solar wifi devices. Note sure what information would be useful. The equipment model on the one says HsAKQQCC and the firmware is HwHsAkQQCC_WIFI_BP5_QX68_20230421.
Video and audio decoding were failing, so I asked AI for a patch and it came up with this (which gets video working on both of my cameras):
// === VIDEO HANDLER for your firmware: 0x28 + 0x29 = H.265 video ===
if (rawType == 0x28 || rawType == 0x29)
{
const int headerSize = 16;
if (full.Length <= headerSize) return false;
byte[] payload = new byte[full.Length - headerSize];
Array.Copy(full, headerSize, payload, 0, payload.Length);
if (needDecrypt && payload.Length >= 16)
{
DecryptVideoFrame(payload, payload.Length);
}
bool keyFrame = IsKeyVideoFrame(rawType, outerFrameType, payload);
if (mode == OutputMode.Rtsp)
{
snapshotManager.UpdateFrame(payload, frameWidth, frameheight, keyFrame, outerTimestamp);
}
var vFrame = new FrameData
{
RawType = rawType,
FrameId = outerFrameId,
FrameType = outerFrameType,
FrameRate = outerFrameRate,
Timestamp = outerTimestamp,
Codec = VideoCodec.H265,
Payload = payload
};
if (mode == OutputMode.Video)
{
stdout?.Write(payload, 0, payload.Length);
stdout?.Flush();
}
else if (mode == OutputMode.Rtsp)
{
rtsp?.PushVideo(vFrame);
}
return true;
}
It also identified rawType == 0x18 as AAC audio, but I don't need audio, so I just disabled that for now.
I have two similar 3-camera solar wifi devices. Note sure what information would be useful. The equipment model on the one says
HsAKQQCCand the firmware isHwHsAkQQCC_WIFI_BP5_QX68_20230421.Video and audio decoding were failing, so I asked AI for a patch and it came up with this (which gets video working on both of my cameras):
It also identified
rawType == 0x18as AAC audio, but I don't need audio, so I just disabled that for now.