private void updateHikHeader(int type, byte[] header) { if (StreamId != -1) { if (_hikPacket != null && _hikPacket.Type == type && bytesEquals(_hikPacket.Header, header)) { return; } //Console.WriteLine("onHikm4HeaderReceived " + _source.VideoId); _hikPacket = new HikHeaderPacket(StreamId, StreamName, StreamUrl, type, header); fireVideoDisplay(DateTime.Now, DataType.SysHead, HikHeaderPacket.Encode(_hikPacket)); } }
public void TestHikHeaderPacket() { HikHeaderPacket packet1 = new HikHeaderPacket(1, "test", "streamUrl", 1, new byte[10]); byte[] buffer = HikHeaderPacket.Encode(packet1); var packet2 = HikHeaderPacket.Decode(buffer); Assert.IsNull(FfmpegHeaderPacket.Decode(buffer)); Assert.AreNotSame(packet1, packet2); Assert.AreEqual(packet1.Header.Length, packet2.Header.Length); Assert.AreEqual(packet1.StreamId, packet2.StreamId); Assert.AreEqual(packet1.StreamName, packet2.StreamName); Assert.AreEqual(packet1.StreamUrl, packet2.StreamUrl); Assert.AreEqual(packet1.Type, packet2.Type); }