{en} English version
Sous Linux, d'autres clients que VLC fonctionnent. Ils sont souvent plus légers mais n'ont généralement pas le support du SAP qui permet d'obtenir la liste des chaînes disponibles. La première étape pour les utiliser est donc de récupérer l'adresse IP de la chaîne sur http://television.crans.org.
En cas de problème, voir la page ../EnCasDeProblèmes.
Sommaire
Lire
Xine
Avec Xine, tapez la commande suivante :
xine -D udp://239.200.200.201:1234
ouxine -D udp://w9.tv.crans.org:1234
Mplayer
MPlayer dispose de l'avantage de savoir lire les flux en Dolby Digital, comme par exemple ceux de NRJ12, ce qui ne semble pas possible avec Xine.
La commande suivante permet de lire une chaîne avec une version pas trop ancienne de MPlayer (1.0pre6) :
mplayer udp://239.200.200.201:1234
oumplayer udp://w9.tv.crans.org:1234
Pour éviter des effets graphiques dérangeants, comme l'apparition de macroblocs dus à une vitesse non constante de la vidéo, ajouter un cache de 50 Mio à remplissage par défaut de 30%. Cela produit une diffusion légèrement différée de la vidéo (moins de 30s), mais ça vaut le coup. Pour cela la commande devient :
mplayer -cache 51200 -cache-min 30 udp://w9.tv.crans.org:1234
Pour forcer à garder une bonne synchronisation audio/video, ajouter le framedropping.
mplayer -cache 51200 -cache-min 30 -framedrop udp://w9.tv.crans.org:1234
Et enfin pour désentrelacer la vidéo, utiliser le filtre vidéo pp comme suit :
mplayer -cache 51200 -cache-min 30 -framedrop -vf pp=fd/h1/d1/dr udp://w9.tv.crans.org:1234
Pour utiliser la piste AC3, utilisez la commande (pour NRJ12) :
mplayer udp://239.202.203.200:1234 -ac hwac3 -aid 231
oumplayer udp://nrj12.tv.crans.org -ac hwac3 -aid 231
Le paramètre hwac3 suppose que votre carte son sait décoder de l'AC3 en hard (ou que vous disposez d'un décodeur externe).
Les autres
Tout autre logiciel est utilisable à condition qu'il puisse lire un flux sur l'entrée standard.
Dans ce cas on peut utiliser le programme dumpudp (disponible ici, binaire provenant initialement de mumudvb), ou bien le programme ffmpeg (disponible dans toutes les distributions Linux), de la manière suivante :
./dumpudp -i 239.202.203.200 -p 1234 -o /dev/stdout | un-lecteur-qui-sait-lire-un-flux-sur-stdin
ouffmpeg -i udp://@239.202.203.200:1234 -map 0 -c copy -copy_unknown -f mpegts - | un-lecteur-qui-sait-lire-un-flux-sur-stdin
(voir plus bas pour des explications sur les options de ffmpeg)
Par exemple :
./dumpudp 239.202.203.200 1234 | mplayer - ./dumpudp 239.202.203.200 1234 | vlc - ffmpeg -i udp://@239.202.203.200:1234 -map 0 -c copy -copy_unknown -f mpegts - | ffplay - ffmpeg -i udp://@239.202.203.200:1234 -map 0 -c copy -copy_unknown -f mpegts - | mpv -
Enregistrer
Il est possible d’enregistrer une émission en cours avec la même commande dumpudp ou ffmpeg décrite plus haut, mais en écrivant le résultat dans un fichier nommé plutôt que la sortie standard.
Il vaut mieux éviter toute forme de transcodage (c’est-à-dire de convertir le format de la vidéo ou sa résolution) lors de l’enregistrement. En effet, le transcodage est une opération extrêmement lourde qui risque de monopoliser le processeur ; ce dernier étant rarement capable de suivre le débit et de transcoder en temps réel, l’enregistrement serait complètement raté, en plus de gaspiller beaucoup d’énergie. De plus, même si l’enregistrement réussit, la qualité de la vidéo risquerait d’être altérée. Si nécessaire, il est toujours possible de transcoder le fichier vidéo après l’enregistrement.
Sans transcodage, on se retrouve à dumper le flux de télévision brut ; ce dernier suit le format MPEG2-TS, pour lequel on peut utiliser l’extension de nom de fichier .mpg ou .ts.
Avec dumpudp
Utiliser la commande suivante :
dumpudp -i 239.202.203.200 -p 1234 -o fichier_destination.mpg
On peut limiter la durée d'enregistrement en indiquant celle-ci, en secondes, avec l'option -d.
Si l'émission à enregistrer ne débute qu'à 6 h 30 et dure une heure, utiliser la commande at :
$ at 6:30 at> dumpudp -i 239.202.203.200 -p 1234 -d 3600 -o fichier_destination.mpg
Avec ffmpeg
Utiliser la commande suivante :
ffmpeg -i udp://@239.202.203.200:1234 -map 0 -c copy -copy_unknown -f mpegts fichier_destination.ts
Les options -c copy et -f mpegts restituent le flux tel quel, sans transcodage. Les options -map 0 et -copy_unknown enregistrent l’intégralité de l’émission (sans ces options fmpeg ne conserve que le premier canal audio et aucun sous-titre).
On peut limiter la durée d'enregistrement en indiquant celle-ci, en secondes ou sous la forme HH:MM:SS, avec l'option -t.
Pour programmer un enregistrement à une heure donnée, on peut utiliser at de la même façon que pour dumpudp ci-dessus. Autrement dit, pour enregistrer pendant une heure à partir de 6 h 30 :
$ at 6:30 at> ffmpeg -i udp://@239.202.203.200:1234 -t 1:00:00 -map 0 -c copy -copy_unknown -f mpegts fichier_destination.ts