Mówiąc dokładniej, pytanie brzmi: jak odtwarzać strumienie rtsp z adresów, które zawierają znak zapytania.
IE: rtsp: //some.server.name: 554 / video_file.wmv? Authstring = sOm3StrIN2 == & param = 3
Próbowałem różnych odtwarzaczy multimedialnych, ale nie mogłem przesyłać strumieniowo pliku. Wiem na pewno, że nie jest to problem z serwerem, ponieważ mogłem przesyłać strumieniowo wideo testowe na tym serwerze, który nie wymaga uwierzytelnienia.
Byłem zaskoczony, że vlc nie może obsłużyć takich adresów URL, więc wypróbowałem mplayera, ale nie mógł także odtwarzać strumieni.
mpv był pierwszym odtwarzaczem, w którym udało mi się odtworzyć testowe wideo, o którym wspomniałem powyżej, ale nie mogłem przesyłać strumieniowo adresów URL formularza, który napisałem powyżej. Z mpv wypróbowałem ten wiersz poleceń:
mpv --http-header-fields='authstring:sOm3StrIN2==','param:3' \rtsp://some.server.name:554/video_file.wmv
i także próbowałem dodać --rtsp-transport=lavf|tcp|udp|http
opcję, ale nic nie działało.
Niestety, wiem, że takie linki (jak napisano powyżej) działają z Windows Media Playerem, ale nie chcę używać wina ani przechodzić do Windowsa (mam bootowanie pojedynków) tylko po to, żeby obejrzeć strumień.
Możesz spróbować mplayera.
Przekaż
rtsp://
adres URL mplayerowi w wierszu poleceń. Istnieją serwery, które obsługują pliki zawierającertsp://
adres URL przez HTTP, ale następnie obsługują zawartość w protokole MMS. Jest to zgodne z niektórymi starszymi odtwarzaczami Microsoft (moja pamięć jest niewyraźna w stosunku do szczegółów), ale łamie klientów, którzy uważają, że RTSP to RTSP, a MMS to MMS. Jeśli otrzymaszrtsp://
adres URL, który w ogóle nie działa, spróbuj zamienić schemat namms://
.źródło
Dla mnie najlepszym graczem jest ffmpeg:
Jeśli uwierzytelnianie nie jest potrzebne,
źródło