arrowHome arrow Tecnologia arrow PureData arrow VLC COM A SOURCE CLIENT DE ICECAST
mainmenu
Home
Downloads
Search
Contacte
del.icio.us
Twitter
PureData
Bio
seccions
Tecnologia
personal
translate
Últims Posts
pd ring
Pd ring
VLC COM A SOURCE CLIENT DE ICECAST PDF  | Print |
Written by musa   
Thursday, 05 April 2007
16/07/2010->New version
 
VLC a part de ser un excelent reproductor multimèdia per a diferents plataformes, també ens permet fer streaming amb múltiples protocols i  té moltíssimes possibilitats. Una d'aquestes, és la possibilitat de fer de source client d'Icecast, en un esquema com aquest. Des de vlc com a source client, podem fer streaming de fitxers d'audio, audio en directe, fitxers de video i video en directe amb qualsevol dispositiu de captura de vídeo. Amb Icecast, hem de tenir en compte que així com es pot fer streaming d'audio tant en ogg com en mp3, en el cas del vídeo només podem enviar flux al servidor en format theora .
 

 
Per fer-ho doncs, primer hem de tenir  el servidor (en el nostre cas Ubuntu Feisty Server) amb Icecast funcionant, i el client (en el nostre cas Ubuntu Edgy Eft) amb vlc instal·lat. En aquest post veiem com configurar el client source amb vlc, per tal de fer streaming d'audio i video amb Icecast.
 

 
·INSTAL·LACIÓ DE VLC
 
Lo normal és tenir instal·lat vlc a des del gestor de paquets:
 
apt-get install vlc 
 
 
El problema és que amb el paquet que ens instal·la vénen unes opcions d'instal·lació per defecte que no són les que necessitem. Per fer de source client d'Icecast, vlc necessita estar instal·lat amb el mòdul access_output_shout activat. Per mirar si tenim aquest aquest mòdul activat a la nostra instal·lació:
 
vlc -l | grep shout
VLC media player 0.8.6 Janus
  playlist              New winamp 5.2 shoutcast import
  shout                 Shoutcast radio listings
  shout                 Shoutcast TV listings
 
Veiem que no hi és. Així doncs necessitarem instal·lar vlc des del codi font. Per tal de no estar pendents d'actualitzacions el que podem fer és deixar instal·lat el paquet apt, i fer una instal·lació d'un altre client vlc totalment separada. Primer baixem i descomprimim el codi font de vlc:
 

wget  http://download.videolan.org/pub/videolan/vlc/0.8.6a/vlc-0.8.6a.tar.gz

mv vlc-0.8.6a.tar.gz /usr/local/src/.

cd /usr/local/src

tar xvfz vlc-0.8.6a.tar.gz 

 
Alhora de compilar, podem fer-ho amb moltíssimes opcions, per veure-les:
 
cd /usr/local/src/vlc-0.8.6a/
./configure --help
`configure' configures vlc 0.8.6a to adapt to many kinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

.......
 
Primer instal·lem els paquets necessaris per construir vlc:

apt-get build-dep vlc;
 
A la llista de opcions, hem de mirar quins mòduls, codecs, opcions, ... van instal·lats per defecte i quins no. Els que necessitem seran els mòduls següents:  codec theora, el mòdu v4l que ens permetrà accedir a dispositius de camptura de video a través de v4l, el mòdul dvb en el cas de que volguem accedir a la tarja de tv, i el mòdul shout , que ja és el que ens permet que vlc fagi de source client d'Icecast. També indicarem que volem fer la instal·lació en el directori /opt/vlc-0.8.6a. Amb aquestes opcions compilem i instal·lem el vlc:

./configure --prefix=/opt/vlc-0.8.6a/ --exec-prefix=/opt/vlc-0.8.6a/ --enable-theora --enable-shout --enable-v4l --enable-dvb

make

make install 

 
Un cop finalitzat, per accedir a aquesta segona instal·lació de vlc, hem d'executar vlc des de /opc/vlc-0.8.6a/bin. Comprovem que efectivament el mòdul shout està activat en aquesta instal·lació:

cd /opt/vlc-0.8.6a/bin/
musa@akira:/opt/vlc-0.8.6a/bin$ ./vlc -l | grep shout
VLC media player 0.8.6a Janus
  access_output_shout   IceCAST output
  playlist              New winamp 5.2 shoutcast import
  shout                 Shoutcast radio listings
  shout                 Shoutcast TV listings

 
Si executem vlc, s'ens obrirà la seva interfíce gràfica. Fem click a 'Paràmetres'-> 'Preferències' i se'ns obrirà la pantalla de preferències al menú de l'esquerra selecconem 'Flux de Sortida' -> 'Sortida d'Accés' -> 'Shoutcas'. Aquí podrem configurar el nom del flux i la descripció d'aquest:
 
VLC, com ja hem comentat, ens permet combinar les moltíssimes possiblitats que ens ofereix. Però aquesta flexibilitat i possibilitats, s'aconsegueix executant vlc des de la consola (en el nostre cas /opt/vlc-0.8.6a/bin/vlc). A continuació veurem com fer diferents tipus d'streaming tant d'àudio com de vídeo amb vlc cap a Icecast. 
 
El mòdul shout de vlc té la següent sintaxis:
 
standard{access=shout,mux=ogg, url=source:password_de_source@ip_servidor_icecast:port_icecast/punt_de_muntatge}'.
En el nostre cas la ip del servidor és 192.168.1.2, el port icecast el 8000. Per accedir als streamings, podem obrir qualsevol client, per exemple vlc, i reproduir http://ip_servidor:pot_icecast/punt_montatge. 
 
A continuació es mostren alguns exemples. Són molt bàsics, i per tant s'hauries d'afinar a les nostres necessitats i/o limitacions tant de cpu, memòria, ampla de banda, etc.. Per accedir als exemples que es mostren a continuació només cal que obrim amb vlc el flux de xarxa del sevidor icecast: http://192.168.1.2:8000/vlc.ogg (en el nostre ca):
 
·STREAMING d'AUDIO:
 
-Fitxer mp3 el passem a ogg i en fem streaming cap icecast:
musa@akira:/opt/vlc-0.8.6a/bin$./vlc -vvv /media/sda5/music/ALTERNATIVE/06__BULLET_PROOF.MP3 --sout '#transcode{acodec=vorbis,ab=128}:standard{access=shout,mux=ogg, url=source: This e-mail address is being protected from spam bots, you need JavaScript enabled to view it :8000/vlc.ogg}'
 
-Audio en directe des del micro (/dev/dsp):
musa@akira:/opt/vlc-0.8.6a/bin$./vlc -vvv v4l:/dev/dsp --sout '#transcode{acodec=vorbis,ab=128}:standard{access=shout, mux=ogg,url=source: This e-mail address is being protected from spam bots, you need JavaScript enabled to view it :8000/vlc.ogg}'
 
·STREAMING VÍDEO:
 
 -Fitxer de video (ja en format theora):
musa@akira:/opt/vlc-0.8.6a/bin$./vlc -vvv /home/musa/Desktop/ICECAST/streaming_video2 --sout '#standard{access=shout,mux=ogg,url=source: This e-mail address is being protected from spam bots, you need JavaScript enabled to view it :8000/vlc.ogg}'
 
-Video en directe des de la webcam (en el nostre cas /dev/video0). També podria ser la capturadora de vídeo (/dev/video ??). En aquest cas dupliquem la sortida, una que ens mostri per la pantalla del client-source lo que estem enviant, i l'altre envia el flux a Icecast. A més haurem de fer la transformació del video a theora amb l'opció transcode. vb ens indica el bitrate.:
musa@akira:/opt/vlc-0.8.6a/bin$./vlc -vvv v4l:/dev/video0 --sout '#transcode{vcodec=theo,vb=1024}:duplicate{dst=display,dst=std{access=shout, mux=ogg,url=source: This e-mail address is being protected from spam bots, you need JavaScript enabled to view it :8000/vlc.ogg}}'
 
Sortida source client:
 
 
 
Sortida client: 
 

 
-Video i audio en directe des de la webcam i el micro. Haurem de fer el transcode tant de l'audio (a vorbis) com del vídeo (theora): 
musa@akira:/opt/vlc-0.8.6a/bin$./vlc -vvv v4l://:v4l-vdev="/dev/video0" :v4l-adev="/dev/dsp"  --sout '#transcode{vcodec=theo,vb=1024,acodec=vorbis, ab=128}:duplicate{dst=display,dst=std{access=shout,mux=ogg, url=source: This e-mail address is being protected from spam bots, you need JavaScript enabled to view it :8000/vlc.ogg}}'
 
 
 

Comments  

 
# Pierpaolo 2007-12-17 16:47
Hi ,
I try your how to on a debian 4.0 rc1 , but the module shout there isn't!
Can you help me please?
I try more and more times!!

Thanks a lot

Pierpaolo
p.s. excuse for comment in english , but i don't know catalan!
Reply | Reply with quote | Quote
 
 
# musa 2007-12-18 14:41
Don't worry about language...
Have you compiled the source code?
I have a Debian (testing) installed in my computer, I will try it in one or two days (if I have enough time...)
Reply | Reply with quote | Quote
 
 
# Johan Sydseter 2008-03-02 16:20
I can't do it!

I can

./configure

but not

make

make install

in the

/usr/local/src/vlc-0.8.6a/
Reply | Reply with quote | Quote
 
 
# Johan Sydseter 2008-03-02 16:30
Ahh! I don't have

/var/lib/apt/lists/medibuntu.sos-sts.com_repo_dists_ free_non-free_source_Sou rces

It therefor doesn't install when I

apt-get build-dep vlc
Reply | Reply with quote | Quote
 
 
# Johan Sydseter 2008-03-02 16:56
Ahh! I don't have

/var/lib/apt/lists/medibuntu.sos-sts.com_repo_dists_ free_non-free_source_Sou rces

It therefor doesn't install when I

apt-get build-dep vlc
Reply | Reply with quote | Quote
 
 
# Johan Sydseter 2008-03-10 16:40
Some of the third-party repositories are wrong on Ubuntu 7.10 Gutsy.

http://forum.videolan.org/viewtopic.php?f=13&t=44598&p=141331#p141331
Reply | Reply with quote | Quote
 
 
# musa 2008-03-12 20:10
thanks for this info.
Reply | Reply with quote | Quote
 
 
# Bret 2008-10-22 23:50
Do you know what the command line syntax for converting a wma file to mp3 is?

Thanks.
Reply | Reply with quote | Quote
 
 
# musa 2008-10-29 18:00
I thing, the best way to do it is through vlc gui, and look the options for the transcode that are you looking for. Then you can use it in command line vlc..
Reply | Reply with quote | Quote
 

Add comment


Security code
Refresh

< Prev   Next >
Search
Tags
PureData aircity android audio boxes castellers data directe ezstream ffmpeg flash flv freeframe frei0r gem geolocation gutsy icecast icmp ip joomla linux live mandril mandril_boxes matarķ midi network networking ogg opencv osc patching pcap pcaplib pd pdp pdpcap pidip pure puredata radio santes santes24h sniffer sound streaming tcp tcpdump tecnologia theora theremin traffic ubuntu udp viatge video videolan vlc vorbis
Syndicate
Archive
Random Image
zn_main.jpg
^top of page^

Creative Commons License