Як відтворювати потоки rtsp в ubuntu?


9

Більш конкретно, питання полягає в тому, як відтворювати потоки rtsp з адрес, які мають в них знак питання.

IE: rtsp: //some.server.name: 554 / video_file.wmv? Authstring = sOm3StrIN2 == & param = 3

Я спробував різні медіаплеєри, але не зміг передати файл. Я точно знаю, що це не проблема сервера, тому що я можу передавати тестове відео на той сервер, який не потребує автентифікації.
Я був здивований, що vlc не може обробляти такі URL-адреси, тому я спробував mplayer, але він також не міг відтворювати потоки.
mpv був першим гравцем, в якому мені вдалося відтворити тестове відео, про яке я згадував вище, але я не міг передати URL-адреси форми, про яку я писав вище. З mpv я спробував цей командний рядок:

mpv --http-header-fields='authstring:sOm3StrIN2==','param:3' \rtsp://some.server.name:554/video_file.wmv

а також спробував додати --rtsp-transport=lavf|tcp|udp|httpваріант, але нічого не вийшло.

На жаль, я знаю, що такі посилання (як писалося вище) працюють з медіаплеєром Windows, але я не хочу вживати вина або переходити до вікон (у мене завантаження на дуель) просто для перегляду потоку.

Відповіді:


6

Чи намагалися ви слідувати цим інструкціям із документації на Videolan (прокрутіть униз до розділу " Відео на вимогу ")?

Було б корисно, якщо ви надасте тестовий rtsp URL, який ви хочете передати.

Редагувати : інструкції із наведеного вище посилання:

Перший запуск vlc:

vlc --ttl 12 -vvv --color -I telnet --telnet-password videolan --rtsp-host 0.0.0.0:5554

де:

  • 12 - значення TTL (Time To Live) ваших IP-пакетів (це означає, що потік зможе перетнути 11 маршрутизаторів).

  • telnet запускає інтерфейс telnet vlc.

  • videolan - це пароль для підключення до інтерфейсу telnet.

  • 0.0.0.0 - адреса хоста.

  • 5554 - порт, на якому ви потоково передаєте.

Потім підключіться до інтерфейсу telnet vlc та створіть об’єкт vod :

new Test vod enabled

setup Test input my_video.mpg

Ви можете отримати доступ до потоку за допомогою:

vlc rtsp://server:5554/Test

де сервер - адреса потокового сервера (IP або DNS)


1
Я не впевнений, як це має працювати. Мені здається, що це перетворить мене на сервер rtsp, але мені потрібно знайти клієнта, який може спілкуватися з сервером, який очікує деяких параметрів (для автентифікації)
yaron160

3

Ви можете спробувати mplayer.

sudo apt-get install mplayer

Передайте rtsp://URL-адресу mplayer у його командному рядку. Там є сервери, які обслуговують файли, що містять rtsp://URL-адресу через HTTP, але потім подають вміст у протоколі MMS. Це для сумісності з деякими старими програвачами Microsoft (у мене пам’ять туманне над деталями), але це порушує клієнтів, які вважають, що RTSP - це RTSP, а MMS - MMS. Якщо ви отримаєте rtsp://URL-адресу, яка взагалі не працює, спробуйте замінити схему на mms://.


спробував вашу пропозицію, але не вийшло.
yaron160

0

Для мене найкращим гравцем є ffmpeg:

ffplay rtsp://username:password@server:554/path

Якщо автентифікація не потрібна,

ffplay rtsp://server:554/path
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.