Depuis un moment je n'arrivais plus à regarder la télé depuis la freebox depuis VLC de mon laptop sabayon.
Ce soir j'ai décidé de m'y mettre sérieusement.

Le symptome :
sabayon : vlc http://mafreebox.freebox.fr/freeboxtv/playlist.m3u
VLC media player 1.1.12 The Luggage (revision exported)
Blocked: call to unsetenv("DBUS_ACTIVATION_ADDRESS")
Blocked: call to unsetenv("DBUS_ACTIVATION_BUS_TYPE")
[0x605120] main libvlc: Lancement de vlc avec l'interface par défaut. Utilisez « cvlc » pour démarrer VLC sans interface.
Blocked: call to setlocale(6, "")
Blocked: call to setlocale(6, "")
[0x6e52f0] qt4 interface error: Unable to load extensions module
0x6172a0] main playlist: stopping playback
[0x7f638400f4c0] main input error: open of `rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=201&flavour=hd' failed: (null)

J'ai regardé maints forum qui en gros parlait de 2 problèmes :
  • iptables : qui bloque les ports client
  • Désactivation des iptables (-F -X)
  • Du paramétrage RTP/RTSP/SDP
  • Ca ne semble plus présent dans ma version de vlc
Voir un lien avec pas mal de détails sur ce type de problèmes.
Au final je fais un wireshark et je vois que ca se termine par une réponse 403 de la freebox.

Response: RTSP/1.0 403 Forbidden\r\n

En sachant que ca fonctionne sur le Mac de la maison ... J'ai vraiment essayé plein de fois en debug (vlc -v) ou bien en tracant les tcpdump qui allaient bien, ajoutant les ips qui vont bien dans le fichier host mais rien n'y faisant j'ai décidé de downloader les sources et compiler.
L'opération est rapide :
sabayon:tmp$ tar xf vlc-1.1.12.tar.xz
sabayon:tmp$ cd vlc-1.1.12
sabayon:tmp/vlc-1.1.12$ ls
ABOUT-NLS   autotools  ChangeLog  config.h.in   COPYING  HACKING  INSTALL.win32  m4           Makefile.in  po        share  THANKS
aclocal.m4  bin        compat     configure     doc      include  INSTALL.wince  make-alias   modules      projects  src    toolbox
AUTHORS     bootstrap  compile    configure.ac  extras   INSTALL  libs           Makefile.am  NEWS         README    test   vlc-config.in.in
pierre@sabayon:tmp/vlc-1.1.12$ ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
....
sabayon:tmp/vlc-1.1.12$ time ./compile
MAKE     : po
MAKE     : compat
MAKE     : src
...
real    15m10.069s
user    13m27.743s
sys     1m17.012s
sabayon:tmp/vlc-1.1.12$ bin/vlc-static -v http://mafreebox.freebox.fr/freeboxtv/playlist.m3u
VLC media player 1.1.12 The Luggage (revision exported)
[0x605120] main libvlc warning: cannot read /data/home/pierre/tmp/vlc-1.1.12/src/.libs/vlc/plugins/plugins-04081e-fe8.dat (No such file or directory)
Blocked: call to unsetenv("DBUS_ACTIVATION_ADDRESS")
Blocked: call to unsetenv("DBUS_ACTIVATION_BUS_TYPE")
Et la miracle ...
Du premier coup ...
C'est quand meme frustrant car je n'ai pas determiné vraiment la cause ...
Surtout que version systeme sabayon :

sabayon:~$ vlc --version VLC media player 1.1.12 The Luggage (revision exported)

Version compilée :

sabayon:tmp/vlc-1.1.12$ bin/vlc-static --version VLC media player 1.1.12 The Luggage (revision exported)

Il faudra que je cherche plus ...