Home | Software | Linux | Windows | Mobile | Gura Humorului |
luni, 30 aprilie 2012
Compilare rtmpdump (patch by Xeebo) pe Linux
Scris luni, 30 aprilie 2012 , 01:45 , de Ovidiu
TV-Maxe 0.07 a introdus suport pentru stream-uri RTMP via rtmpdump, ceea ce a deschis poarta către o mulţime de stream-uri TV disponibile prin acest protocol. Problema este că rtmpdump oficial este învechit, aşa că nu prea funcţionează (stream-ul va fi redat câteva secunde după care... gata, somn). Din fericire cineva a făcut un patch care corectează acest comportament; din păcate va trebui să compilăm noi această versiune de rtmpdump. Urmează un scurt tutorial despre cum se face acest lucru:
- Întâi instalaţi dependinţele necesare compilării. Pe Ubuntu asta ar însemna să rulăm:
sudo apt-get install build-essential gcc make subversion libssl0.9.8 libssl-dev libssl0.9.8 wget
- Descărcaţi versiunea patch-uită:
# link eliminat din cauza unor nereguli de ordin legal. Va fi necesar să căutaţi manual patch-ul lui Xeebo pentru librtmp.
- Dezarhivaţi conţinutul arhivei:
unzip rtmpdump-v2.5.zip -d rtmpdump
- chdir în folder-ul unde se află sursele:
cd rtmpdump/
- compilaţi şi instalaţi:
Cam asta ar fi toată povestea. Pentru a vă asigura că totul a decurs cum trebuie, executaţi:
make SYS=posix XLIBS="-lm" SHARED="no"
sudo make install prefix="/usr"
rtmpdump --help 2>&1 | grep RTMPDumpdin consolă. Dacă vă apare RTMPDump v2.5 GIT-2012-03-31 (Handshake 10 support by Xeebo) înseamnă că aţi compilat şi instalat cu succes versiunea patch-uită de rtmpdump iar TV-Maxe va fi capabil să redea corect acest tip de stream-uri. Baftă!
Abonați-vă la:
Postare comentarii
(
Atom
)
18 comentarii :
Instalat cu succes, dar nu pot testa momentan, nu am conexiune la net decît prin modem mobil...
In sfirsit merge si TVR Cluj
Revin cu o completare: imaginea pe TVR Cluj merge bine ,dar sunetul este sacadat.De ce oare?
@comunistu - ţine de cum e codat stream-ul. Setează VLC ca backend, ăsta se descurcă mai bine cu unele codecuri.
Nu uita să reporneşti aplicaţia după ce schimbi backend-ul
Am urmat tutorialul si nu-mi functioneaza niciun post cu protocol RTMP. De asemenea, imi apare acel mesaj in terminal, semn ca am procedat bine. Ce e de facut ?
Interesant... dacă execuţi "which rtmpdump" ce ţi se spune?
Imi apare /usr/bin/rtmpdump
Ok, până aici e bine. Rulează TV-maxe din consolă (tv-maxe), încearcă să redai un canal ce emite prin RTMP şi zi-mi ce apare în consolă
http://dl.dropbox.com/u/24518511/error
TVR-urile sunt singurele canale pe RTMP care nu funcţionează, sau nu funcţionează toate? Executa:
rtmpdump -v -r "rtmp://fms16.mediadirect.ro:1935/live3/_definst_" -a "live3/_definst_?id=45198790&publisher=2" -f "LNX 11,2,202,233" -W "http://static1.mediadirect.ro/player-preload/swf/dolce_video_1051/player.swf" -p "http://www.dolcetv.ro/#tv-live-TVR-International-86" --live -y "tvrcluj?id=45198790&publisher=2" | vlc -
si spune-mi daca iti merge stream-ul asa.
Nu imi functioneaza niciun link de rtmp.
Uite ce imi da in terminal:
http://dl.dropbox.com/u/24518511/Error2
Handshake 10 patch requires librtmp to be compiled as static, try this:
make SYS=posix XLIBS="-lm" SHARED="no"
sudo make install
Asa da, Xeebo !!! It works, thanks. Oare trebuie actualizat articolul ?
Hmm.. la mine n-a fost nevoie să îl compilez static, dar o să modific totuşi în articol.
salut,
Unele programe tv nu funcitioneaza in tv-maxe: tvr1, protv s.a.m.d.
Ce ar trebui sa faca?
Unele streamuri rtmp ex. pro7, cnn, euronews se opresc dupa 55 de secunde de rulare. Se poate face ceva sau tine de stream?
am instalat si eu versiunea 2.5 by xeebo dar tot nu merg fluxurile rtmp.am deschis tv-maxe in terminal si am mesajul
rtmpdump -v -r rtmp://lh01.mediadirect.ro/live3/_definst_/dolcesporthd -o /tmp/tmpLn3wCH
Stopped server
RTMP Error
Stopped server
[0x2d15910] access_http access error: failed to read answer
localhost - - [04/May/2013 20:12:49] "GET / HTTP/1.1" 404 -
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 54592)
Traceback (most recent call last):
[0x2d15910] access_mms access error: cannot connect to localhost:51763
File "/usr/lib/python2.7/SocketServer.py", line 582, in process_request_thread
self.finish_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 323, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib/python2.7/SocketServer.py", line 641, in __init__
self.finish()
File "/usr/lib/python2.7/SocketServer.py", line 694, in finish
self.wfile.flush()
File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe
----------------------------------------
Trimiteți un comentariu