2016-04-24 8 views
0

Я хочу использовать протокол RTSP для подключения к IP-камере. Для этой цели я использую Visual C++. Я искал и нашел библиотеку cURL и загрузил rtsp.c с сайта libcurl.
Я использовал CMake для преобразования кодов cURL в подходящий файл sln для Visual Studio, тогда я создал решение и сделал другие шаги для запуска примера rtsp.c. Теперь я могу подключиться к своей IP-камере с rtsp.c и не получил ошибку времени выполнения, но получаю «ICMP Destination Unreachable (Port Unreachable)» на WireShark и поток не получает.
С другой стороны я могу подключиться к своей IP-камеры с помощью VLC Player. Я изменил номера портов на rtsp.c, но проблема не решена.
Я читал this, но я не знаю, где проблема? и как я могу это решить?Почему команда RTSP Play получает пакет вмешательства устройства в порт RTP?

Редакцией:
Я использовал this RTSP code и this RTP code и теперь я получу только один RTP Packet, который содержит это сообщение:

<?xml version="1.0" encoding="UTF-8"?> 
<tt:MetaDataStream xmnls:tt="http://www.onvif.org/ver10/schema" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"> 
<tt:Event> 
    <wsnt:NotificationMessage> 
      <wsnt:Topic Dialect="http://www.onvif.org/ver10/tec/topicExpression/ConcreteSet"> 
      tns1:Device/Tampering 
      </wsnt:Topic> 
      <wsnt:Message> 
       <tt:Message UtcTime="2016-05-03T00:14:33.775"> 
        <tt:Source> 
         <tt:SimpleItem Name="VideoSourceConfigurationToken" Value="VideoSource0"> 
          </tt:SimpleItem> 
         </tt:Source> 
         <tt:Data> 
          <tt:SimpleItem Name="Level" Value="Trigger"> 
          </tt:SimpleItem> 
          <tt:SimpleItem Name="Percentage" Value="32"> 
          </tt:SimpleItem> 
         </tt:Data> 
        </tt:Message> 
       </wsnt:Message> 
      </wsnt:NotificationMessage> 
     </tt:Event> 

EDITED-2:
Я искал и теперь я знаю, что выше сообщение является сообщением об утере устройства, которое показывает событие обнаружения движения на камере, но я не знаю, почему RTSP Pla y Команда получает пакет вмешательства устройства в порт RTP?

ответ

0

В ресурсе RTSP несколько медиапотоков могут быть агрегированы по одному и тому же URL-адресу. Часто камеры ONVIF имеют три медиапотока: один для видео, один для аудио и один для метаданных, для потокового оповещения клиента.

Медиапотоки описываются с использованием Session Description Protocol, который используется командой DESCRIBERTSP.

Вы должны проверить, как организован ресурс RTSP, возможно, вы получаете пакеты для последнего носителя в сеансе. Чтобы проверить поток RTSP, вы можете использовать openRTSP из проекта Live555.

 Смежные вопросы

  • Нет связанных вопросов^_^