Skocz do zawartości
endriu1987

Nadawanie obrazu z kamery przez VPS

Polecane posty

Witam, mam takie pytanie/prośbę.

Chciałbym uzyskać możliwość oglądania meczy z mojego boiska do siatkówki na swojej stronie internetowej.

Chciałbym to uzyskać w następujący sposób:

Kamera IP (smartfon) -> router z zewnętrznym adresem IP -> VPS -> strona internetowa na hostingu.

W jaki sposób mogę coś takiego uzyskać, aby wysłać obraz w jednym czasie do powiedzmy 5,10 max 20 osób ?

Obecnie mogę bez problemu podglądać obraz z tej kamery z każdego miejsca, ale łącze ograniczy mnie do 1,2,3 osób i to tyle.

Gbybym przepuściał obraz przez VPS, to pewnie by takich problemów nie było i to właśnie VPS by rozdzielił obraz i przesłał do kilku osób ;)

  • Upvote 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

VPS z nginxem i modułem rtmp.

Ja tak robię na tanim VPSie od mintshost i wszystko ładnie działa.

Jeśli potrzebujesz pomocy pisz na priv.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Witam

 

Nie będę rozpisywał jak to zrobić ale dla przykładu podam przykład strony naszego klienta: Platforma streamingowa dla DJów Kontakt do twórcy masz na samej stronie i podejrzewam że odpowie na twoje pytania , ewentualnie pomoże to skonfigurować.

 

Pozdrawiam Tomek

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

nginx z modułem rtmp i do tego autoryzacja nadającego. Zależnie od jakości - 50-100 osób obejrzy z VPSa. Popatrz też na gotowe platformy jak Livestream. Embed na stronę, na telefonie aplikacja i gotowe.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Aplikacji pod Androida jest wiele, ale dla przykładu używam tej https://play.google.com/store/apps/details?id=com.pas.webcam&hl=pl

Bez problemu widzę przekaz po Lanie jak i w internecie po przekierowaniu portów (zewnętrzny adres IP).

Posiadam stronę www na hostingu w biznes-host i do tego dokupiłbym VPS za 28 PLN na miesiąc http://biznes-host.pl/?s=plany_vps2i zobaczył jak to będzie działało.

Zależy mi na tym, aby wysłać go do serwera i aby to on dzielił już ten obraz na kilku oglądających, co przy bezpośrednim wypuszczeniu streamu z mojego routera nie jest możliwe z uwagi na parametry mojego łącza.

Odezwę się SOK, ale piszcie dalej jak to najlepiej wykonać ;)

Dziękuję już w tej chwili za konkretny odzew w temacie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ja używałem https://play.google.com/store/apps/details?id=air.OS.Broadcaster&hl=plale na iOS.

Aplikacja wysyła strumień do serwera VPS. Nie musisz przekierowywać portów itp, wystarczy że masz otwarty port do nadawania.

Możesz sprawdzić również livestream.com albo ustream.com - ja nie używam bo drogie, a na darmowych reklamy.

Za darmo jest również YouTube - ja nie używam, bo trzeba tworzyć wydarzenia, jest trudna procedura nadawania i za każdym razem inny adres odtwarzacza. Własny serwer nginx zawsze czeka na mój strumień.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Wszystko to co napisałeś testowałem i nie jest to tym czego oczekuję.

Napisz mi proszę jak to wykonać w oparciu o podany wyżej VPS oraz podaną przez Ciebie apkę ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ok, reszta na PW.

Jeszcze tylko jedno pytanie tutaj, a mianowicie wspomniany wyżej VPS nada się do tego ?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Podoba mi się rosnąca popularność modułu rtmp. Pamiętajcie tylko zawsze o zabezpieczaniu serwera w kwestii nadawania.

 

50Mbps to dla Ciebie będzie 100 widzów przy 1Mbps bitrate. Jest to jakość dobrego 480p. Na 720p 2Mbps potrzeba i wtedy masz 25 widzów.

 

Jak chcesz mieć więcej widzów to już jest trochę więcej kombinacji i wtedy zapraszam na PW.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dziś po pracy ogarnę temat i wszystkie porady ;)

Rozumiem, że to ile potrzebuje łącza na 1 użytkownika mogę sam sprawdzić, dla przykładu:

Odpalam na smartfonie stream, odpalam w Win NetMeter i sprawdzam górną granicę (ponieważ światło na boisku jest dynamiczne i będzie się zmieniał) download swojego łącza.

Dobrze myślę ?

I wówczas według mnie ten mój zużywany transfer w danym momencie x np. 5 użytkowników powinien dać mi część zużywanego portu ;)

 

Edit: Jeszcze jedno, który system operacyjny (z darmowych) warto wybrać ogólnie lub dla mnie, osoby początkującej w temacie VPS ?

 

post-13963-0-77618300-1427169915_thumb.jpg

Edytowano przez endriu1987 (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Jak jesteś początkujący to nie bierz Windowsa :)

 

Polecam Ubuntu 14.04, Debiana 7. Wersja 64bit, na CentOS bedziesz miał z tego co pamiętam jeden lub dwa kroki więcej przy instalacji nginxa, więc zmiana niewielka.

 

Co do kalkulacji - praktycznie dobrze to opisałeś, ale warto znaleźć taką aplikację, żeby ustalić górny limit bitrate. Oczywiście sposób domowy, bo wystarczy po prostu spojrzeć na bitrate, ale na pewno zadziała.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

O 15:30 zamówiłem VPS i czekam na aktywację ;)

 

Słyszałem ze przed chwilą opuścił hale produkcyjną ;)

  • Upvote 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Hohoho, kogo widzę :D

Witam Panie Marku i potwierdzam, serwer dotarł i za chwilę zaczynam przygodę z VPS ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Sprawa ma się tak.

Aplikacja z telefonu wysyła sygnał i wyświetlam obraz przez drugi telefon oraz na stronie poprzez JWPlayer.

Niestety jednak mam jakieś duże według mnie lagi i dlatego chciałbym dowiedzieć się jak sprawdzić czy wszystko jest ustawione dobrze i w ogólnie jak to wszystko ustawić, aby były mniejsze lagi i jak wygląda praca serwera w momencie nadawania ?

Nadaję tą aplikacją: https://play.google.com/store/apps/details?id=air.OS.Broadcaster&hl=pl

Tą zaś podglądam obraz na drugim smartfonie: https://play.google.com/store/apps/details?id=air.tv.lotusfusion.rtmp.player.one&hl=pl

 

Edit: A może te lagi są spowodowane tym, że coś jest jednak źle spięte.

Nie wiem co ile się to odświeża, ale w panelu VPS traffic w ogóle nie ruszył, a na logikę po jakimkolwiek nadawaniu powinno się to zmieniać:

 

post-13963-0-13803800-1427309574_thumb.jpg

Edytowano przez endriu1987 (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Właśnie trudno mi to powiedzieć, ponieważ nie wiem jak ustawić strumień wychodzący (bitrate, ilość klatek, rozdzielczość), aby to fajnie wyglądało i w miarę płynnie działało.

Opóźnienie jest znacznie niższe niż 30s ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Jeśli chodzi o opóźnienie w normie jest takie 2-15s., zależne od ustawionego buforowania w odtwarzaczu.

Jakość strumienia zależna od łącza jakie posiadasz, ustaw 75% łącza wychodzącego, ilość klatek to minimum 25, choć oczywiście 50 było by lepsze, teraz kwestia rozdzielczości, powinna być jak najwyższa, dopasowana do bitrate,np. 720p dla 2Mbps, 1080p dla 4Mbps.

Wcześniej wspomniałeś że do tego chcesz użyć telefonu, minusem jest tu sama możliwość przetwarzania przez urządzenie, która zazwyczaj jest hmm słaba, np. Sony SP daje strumień 720p 15fps bitrate 1Mbps, oczywiście lepszy model jest w stanie przetworzyć nieco więcej klatek. Wiele modeli kamer posiadające wifi posiadaja obsługę UStream, dzięki temu można otrzymać naprawdę dobrą jakość kompresji i bitrate.

Edytowano przez TomaszG (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Właśnie to odnośnie jakości i płynności na poszczególnych urządzeniach zauważyłem.

Mam Xiaomi RedMi 2 oraz Mi4.

Na pierwszym mam mniej klatek przy tym samym ustawieniu w porównaniu z drugim.

Co do UP łącza i bitrate, to ja mam tak do 10Mbps (radio) i moje łącze wysyła pliki do 1MB na sekundę, także raczej nie chodzi tutaj o możliwości UP mojego łącza względem tego co napisałeś.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Co da przesyłania obrazu na vps'a a później per ludzie?

Możliwości twojego łącza na telefonie ma tutaj duże znaczenie jeżeli nie chcesz opóźnień lub bardzo niskiej jakości.

Na początek przelicz sobie możliwości twojego łącza i dobierz odpowiednie parametry jakości video.

1Mb/s = 100 kb/s nie będzie tak pięknie jak chcesz zrobić.

Zajmij się na początek możliwością twojego sprzętu później vps'a.

Edytowano przez DaFFX (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Właśnie to odnośnie jakości i płynności na poszczególnych urządzeniach zauważyłem.

Mam Xiaomi RedMi 2 oraz Mi4.

Na pierwszym mam mniej klatek przy tym samym ustawieniu w porównaniu z drugim.

Co do UP łącza i bitrate, to ja mam tak do 10Mbps (radio) i moje łącze wysyła pliki do 1MB na sekundę, także raczej nie chodzi tutaj o możliwości UP mojego łącza względem tego co napisałeś.

Nie miałem w rękach telefonów tej marki, wiele zależy od pamięci jakie są zainstalowane i przetwarzania, na początek sugeruje rozdzielczość 640x360, tu wystarczy 0,5 Mbps.

Wszystkie programy do strumieniowania na telefonach korzystają z softwarowej kompresji h.264, sprzętowa zarezerwowana jest dla aplikacji dostarczonych z urządzeniem.

Jeśli chcesz coś fajnego i taniego - sugeruje Raspberry Pi, tanie, sprzętowa kompresja, super jakość w tej cenie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×