Почему сервер не отвечает h264 cms?

593
31 августа 2017, 17:08

Здравствуйте, пытаюсь сделать клиент для IP камеры, ну вот за основу взял обычный клиент h.264 CMS и её насниффил, а точнее какие данные должны проходить в идеальном случае, ну и просто напросто мне нужно это повторить. Так вот, в чём заключается проблема, подключение происходит успешно, первый запрос (Claim) тоже, Ip camera отвечает точно так же как и должно быть, но потом отправляю второй запрос (Start) и всё, глухо, программа стоит в ожидании, а камера не собирается отвечать картинкой (пакетом).

Код :

public MainWindow()
{
    InitializeComponent();

    TcpClient tcpClient = new TcpClient();
    byte[] bufferR = new byte[tcpClient.ReceiveBufferSize];
    bufferW = new byte[] { 0xff, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x05, 0xb9, 0x00, 0x00, 0x00, 0x7b, 0x20, 0x22, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x4f, 0x50, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x22, 0x2c, 0x20, 0x22, 0x4f, 0x50, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x22, 0x20, 0x3a, 0x20, 0x7b, 0x20, 0x22, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0x2c, 0x20, 0x22, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x22, 0x20, 0x3a, 0x20, 0x7b, 0x20, 0x22, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x20, 0x3a, 0x20, 0x30, 0x2c, 0x20, 0x22, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x4e, 0x4f, 0x4e, 0x45, 0x22, 0x2c, 0x20, 0x22, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x4d, 0x61, 0x69, 0x6e, 0x22, 0x2c, 0x20, 0x22, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x54, 0x43, 0x50, 0x22, 0x20, 0x7d, 0x20, 0x7d, 0x2c, 0x20, 0x22, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x35, 0x33, 0x22, 0x20, 0x7d, 0x0a };
    tcpClient.Connect("192.168.1.10", 34567);
    NetworkStream netStream = tcpClient.GetStream();
    netStream.Write(bufferW,0,bufferW.Count());
    netStream.Read(bufferR, 0, tcpClient.ReceiveBufferSize);
    bufferW = new byte[] { 0xff, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x05, 0xb9, 0x00, 0x00, 0x00, 0x7b, 0x20, 0x22, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x4f, 0x50, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x22, 0x2c, 0x20, 0x22, 0x4f, 0x50, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x22, 0x20, 0x3a, 0x20, 0x7b, 0x20, 0x22, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x53, 0x74, 0x61, 0x72, 0x74, 0x22, 0x2c, 0x20, 0x22, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x22, 0x20, 0x3a, 0x20, 0x7b, 0x20, 0x22, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x20, 0x3a, 0x20, 0x30, 0x2c, 0x20, 0x22, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x4e, 0x4f, 0x4e, 0x45, 0x22, 0x2c, 0x20, 0x22, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x4d, 0x61, 0x69, 0x6e, 0x22, 0x2c, 0x20, 0x22, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x54, 0x43, 0x50, 0x22, 0x20, 0x7d, 0x20, 0x7d, 0x2c, 0x20, 0x22, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x20, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x35, 0x33, 0x22, 0x20, 0x7d, 0x0a };
    netStream.Write(bufferW, 0, bufferW.Count());
    while (true)
    {
           netStream.Read(bufferR, 0, tcpClient.ReceiveBufferSize); // Тут по идее должна приходить картинка
    }
}
  • Пакеты, как должно быть :

    https://yadi.sk/d/LrSSWKj43MSHdW

  • Пакеты, как у меня :

    https://yadi.sk/d/bcZ1Y9iI3MSGtp

READ ALSO
Инверсия осей(стандартных)?

Инверсия осей(стандартных)?

Есть стандартная ось "Horizontal" - со стандартными значениями:

278
Возможно ли перегрузить метод Console.WriteLine

Возможно ли перегрузить метод Console.WriteLine

Возможно ли перегрузить метод ConsoleWriteLine ?

252