Re: Récupérer la sortie de mplayer

トップ ページ

このメッセージに返信
著者: Olivier Allard-Jacquin
日付:  
To: ML Guilde
題目: Re: Récupérer la sortie de mplayer
    Bonsoir Frédéric

Frédéric a écrit :
> Bonsoir,
>
> Je voudrais récupérer en temps réel le timing de lecture de mplayer, mais
> j'ai du mal à piper sa sortie dans mon programme, vu qu'il rafraichit les
> données toujours sur la même ligne. Du coup, il y a des séquences de
> contrôle bizarre, qui me posent problème (en fait, je n'ai rien en sortie,
> jusqu'au moment où j'appuie sur Enter, et là, je n'ai que des chaînes
> vides).
>
> J'ai fait ça en python, mais si quelqu'un arrive à me montrer comment faire
> dans un autre langage (perl...), ça m'irait aussi.
>
> Merci d'avance.
>
> PS : voici mon code :
>
> import subprocess
> player = subprocess.Popen(("mplayer", "dvd://1"), \
>                           stdout=subprocess.PIPE, \
>                           stderr=subprocess.STDOUT)
> while True:
>     print repr(mplayer.stdout.read())


    Essaye ceci :


mplayer dvd://1 >/tmp/mplayer.out.txt 2>/tmp/mplayer.err.txt

tu devrais trouver dans "/tmp/mplayer.out.txt" les caractères de
contrôle qui font le "retour chariot" de mplayer. D'après hexedit, c'est
"0x0D"

    Peut-être es-ce que tu pourrais "piper" mplayer dans un "tc", afin de
remplacer les "0x0D" en "0x13". Par exemple, ceci doit résoudre ton
problème :


mplayer dvd://1 | tr -d "\015\023"

    Cordialement,


                        Olivier
-- 
~~~~~~~  _____/\_____  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Phoenix /   _ \/ _   \    Olivier Allard-Jacquin
       /   / \  / \   \   Web:  http://olivieraj.free.fr/
      /___/  /  \  \___\  Mail: olivieraj@???
~~~~ /////  ///\\\  \\\\\ ~~~~~~~~~~~~~~~~~~~~~~~ Linux Powered !!