Перейти к содержанию
Fire Monkey от А до Я
  • 0

RTSP протокол средствами TidHTTP


gonzales

Вопрос

Доброго всем времени суток!

Есть задача, считать с ip-камеры видеопоток в формате MJPEG но не по протоколу HTTP (это реализовано и работает), а по RTSP. RTSP очень похож на HTTP, тоже все передается в текстовом виде.

Вот тут есть хорошая статья https://habr.com/post/117735/ 

По существу: мне нужно отправить на камеру запрос вида 

OPTIONS rtsp://192.168.0.254/jpeg RTSP/1.0

CSeq: 1 

User-Agent: VLC media player (LIVE555 Streaming Media v2008.07.24)

И возможно еще данные авторизации для камеры.

Вот кусок (как говорят рабочий), написанный на питоне

    def __init__(self):
        self.config = {}
        self.wait_description = False

    def connectionMade(self):
        self.session = 1
        # Authorization part
        if self.config['login']:
            authstring = 'Authorization: Basic ' + b64encode(self.config['login']+':'+self.config['pass']) + '\r\n'
        else:
            authstring = ''
        # send OPTIONS request
        to_send = """\
OPTIONS rtsp://""" + self.config['ip'] + self.config['request'] + """ RTSP/1.0\r
""" + authstring + """CSeq: 1\r
User-Agent: Python MJPEG Client\r
\r
"""
        self.transport.write(to_send)
        if debug:
            print 'We say:\n', to_send
    
    def dataReceived(self, data):
        if debug:
            print 'Server said:\n', data

Вопрос, как это переписать на делфе.

Пните пожалуйста в нужную сторону, как правильно послать запрос.

Я так понимаю сначала нужно определить запрос

form1.IdHTTP1.Request.Method:='OPTIONS';
  form1.IdHTTP1.Request.URL:='rtsp://admin:admin@192.168.0.16:554/live/ch00_0 RTSP/1.0';

Как-то так.

А вот как его послать, и приделать к нему дополнительные параметры не могу сообразить.

Буду благодарен за любую помощь.

Ссылка на комментарий

Рекомендуемые сообщения

Ответов пока нет

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...