Page 1 of 10

Weeb w VLC - Skrypt K-S-V - opis by jarek

Posted: 2013-07-28, 11:54
by anonim
WeebTV w VLC - Skrypt K-S-V - opis by jarek

Witam chciałem, pokrótce, przedstawić wam skrypt K-S-V umożliwiający oglądanie streamów serwisu weeb.tv, w programie vlc.

Opis sprawdzony i wykonany dla systemu linuks, dystrybucji debian 6.

Czego potrzebujemy ? php z curlem oraz oczywiście programu vlc.

Code: Select all

apt-get install php5 php5-curl vlc libssl-dev

Niezbędny jest również rtmpdump ze specjalnym paczem do obsługi weeb.tv

Patch do pobrania tutaj. Przebieg kompilacji rtmpdumpa z patchem wygląda następujaco:

1) pobieramy

Code: Select all

git clone git://git.ffmpeg.org/rtmpdump

2) przechodzimy do utworzonego katalogu rtmpdump oraz kopiujemy plik Patch.diff
3) no i po kolei:

Code: Select all

patch -p0 -i Patch.diff
make
sudo make install prefix=/usr

Skrypt w żaden sposób nie omija limitu ale może działać z kontami premium.

Dane do konta oraz jakość transmisji uzupełniamy w pliku WeebTV.xml

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<settings>
<quality></quality>
<username>adres@email.com</username>
<password>twojehaslo</password>
</settings>

Quality - puste jeżeli SD, HI jeżeli chcemy oglądać w jakości HD

Następnie uruchamiamy w terminalu skrypt php wydając polecenie:

Code: Select all

php WeebTV.php

Powinno pojawić nam się okno z wyborem kanału, pamiętajcie, posiadając konto premium kanałów jest znacznie więcej.

Wybieramy kanał i oglądamy.

Zapewne dojdą pytania czy można dzięki temu nadawć ? bezpośrednio przez program vlc lub pośrednio przez np ffmpeg.

W pliku WeebTV.php odnajdujemy linijkę 435;

Code: Select all

$command = $basecmd . " | \"$vlc\" --meta-title \"$filename\" -";

Jak powszechnie wiadomo możemy również nadawać nadawać na protokole http przykład na porcie 8080:

Code: Select all

$command = $basecmd . " | cvlc - -vvv --sout='#http{mux=ffmpeg{mux=flv},dst=:8080/}'";

Czyli możemy ogladać tą TV za pomocą linku:

Code: Select all

http://Twoje-IP:8080

Możemy to strumieniować dalej np ffmpegiem na serwer www.goodcast.org:

Code: Select all

ffmpeg -i http://Twoje-IP:8080 -acodec copy -vcodec copy -f flv rtmp://rtmp.goodcast.org:1935/liverepeater/56527


Pliki:
https://github.com/K-S-V/Scripts/blob/master/WeebTV.php
https://github.com/K-S-V/Scripts/blob/master/WeebTV.xml
Patch: http://sendfile.pl/33202/Patch.diff

Zamiast korzystać z vlc można też bezpośrednio użyć ffmpeg, w WeebTV.php linijkę opisaną powyżej zmieniamy na:

Code: Select all

$command = $basecmd . " | ffmpeg -i - -acodec copy -vcodec copy -f flv rtmp://wychodzące-z-jakies-strony";

Posted: 2013-07-29, 13:31
by anonim
Skrypt WeebTV od K.S.V. do oglądania w VLC przecież jest pod windowsa.

Posted: 2013-07-29, 13:36
by anonim
Nie potrzeba żadnego php ani nic podobnego. Odpalamy plik bat i oglądamy (oczywiście do wyczerpania limitu. Dla posiadających konto na Weebtv w pliku config.ini wystarczy podać login i hasło.
http://sendfile.pl/33707/WeebTVLC.rar

Posted: 2013-07-29, 13:39
by anonim
Swoją drogą zastanawiam się czy tego skryptu nie dałoby się przerobić pod Plejer tv.

Posted: 2013-08-03, 10:44
by anonim
PlejerTV wysyla jakies zadania ajax i trzeba miec otwarta strone, zeby zalapal stream, po czym zwykle po 2h stream wywala.

Posted: 2013-08-03, 11:16
by anonim
nie spamujmy w złym temacie, ale zgadza się, Plejer.tv wysyła co chwile zapytania a konkretnie:

Code: Select all

/ajax/alert.php
/ajax/online.php

Co uniemożliwia userom posiadającym vps restreaming ale jak ktoś ma VNC albo NXMACHINE to wszystko działa ;-)

Posted: 2013-08-30, 18:22
by anonim
djandy75 wrote:Nie potrzeba żadnego php ani nic podobnego. Odpalamy plik bat i oglądamy (oczywiście do wyczerpania limitu. Dla posiadających konto na Weebtv w pliku config.ini wystarczy podać login i hasło.
http://sendfile.pl/33707/WeebTVLC.rar


Po edycji pliku o dane konta w config.ini nadal mi brakuje kilku kanałów, które są dostępne po zalogowaniu na stronie. Pomoże mi ktoś ?

Posted: 2013-08-31, 15:55
by anonim
Musisz edytować plik z listą kanałów i dodać brakujące ręcznie.

Posted: 2013-08-31, 17:54
by anonim
Edytowałem już wcześniej dadając np NAT GEO. Kanał ładuje się na liste ale po jego wyborze otrzymuje:

Code: Select all

RTMPDump v2.4 GIT-2012-07-26 (Compiled by KSV)
(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
ERROR: RTMP URL: No :// in url!
WARNING: Couldn't parse the specified url (/Warning: fread(): Length parameter must be greater than 0. in url.php on line 1)!

Posted: 2013-09-01, 12:44
by anonim
I dochodzę do wniosku że skrypt po prostu mnie nie loguje na stronę.
Czy ktoś ma podobny problem?

Posted: 2014-01-18, 02:25
by anonim
Gdy wywoluje komende

Code: Select all

php WeebTV.php 


to zamiast listy wysypuje mi ciag linijek, wyglada mi na zawartosc tego pliku (jak bym otworzyl notatnikiem). Dlaczego tak sie dzieje? Php5 i curl mam

Posted: 2014-01-18, 11:41
by anonim
heklind, Pokaż screena, lub wyślij co Ci się wyświetla. Poza tym zanim napiszesz sprawdź te pliki, są nowsze(w pierwszym poście też je zaktualizowałem).

Code: Select all

https://github.com/K-S-V/Scripts/blob/master/WeebTV.php
https://github.com/K-S-V/Scripts/blob/master/WeebTV.xml

Posted: 2014-01-19, 18:07
by anonim
udalo mi sie ruszyc, natomiast pojawil sie u mnie problem,

vlc nie chce sie uruchomic jako root (co mnie nie dziwi) co teraz?

[ Dodano: 2014-01-19, 18:07 ]

Code: Select all

VLC is not supposed to be run as root. Sorry.
If you need to use real-time priorities and/or privileged TCP ports
you can use vlc-wrapper (make sure it is Set-UID root and
cannot be run by non-trusted users first).

Posted: 2014-01-19, 18:20
by anonim

Code: Select all

VLC is not supposed to be run as root.

Zaloguj się jako zwykły użytkownik, lub nie korzystaj z vlc tylko bezpośrednio z ffmpeg.

Zamiast korzystać z vlc można też bezpośrednio użyć ffmpeg, w WeebTV.php linijkę opisaną powyżej zmieniamy na:
Kod:

Code: Select all

$command = $basecmd . " | ffmpeg -i - -acodec copy -vcodec copy -f flv rtmp://wychodzące-z-jakies-strony";

Posted: 2014-01-20, 02:11
by anonim
po zmianie

Code: Select all

PHP Parse error:  syntax error, unexpected 'ffmpeg' (T_STRING) in /WeebTV.php on line 452





z vlc rusza, ale przez ffmpeg nie. Wiesz moze dlaczego?