Более конкретно, вопрос заключается в том, как воспроизводить потоки 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 Media Player, но я не хочу использовать Wine или перейти к Windows (у меня дуэль загрузки) только для просмотра потока.
Вы можете попробовать mplayer.
Передайте
rtsp://
URL-адрес mplayer в его командной строке. Существуют серверы, которые обслуживают файлы, содержащиеrtsp://
URL-адрес по HTTP, но затем подают контент по протоколу MMS. Это для совместимости с некоторыми более старыми плеерами Microsoft (у меня неясная память по поводу деталей), но это ломает клиентов, которые считают, что RTSP - это RTSP, а MMS - это MMS. Если вы получилиrtsp://
URL, который вообще не работает, попробуйте заменить схему наmms://
.источник
Для меня лучший игрок это ffmpeg:
Если аутентификация не нужна,
источник