Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/03/2010, à 19:33

olitask

Erreur dans pymecavideo

Bonjour

j'ai installé le logiciel pymecavideo ( a partir d'un .deb ) mais voila, il n'arrive pas à ouvrir les fichiers video ( il me dit qu'il y a des espaces dans le nom ou des accents et il refuse d'aller plus loin.

voila les msg dans le terminal :

olivier@olivier-laptop:~$ pymecavideo
/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py:44: DeprecationWarning: the sets module is deprecated
  from sets import Set
^CTraceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1041, in openfile
    self.openTheFile(filename)
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1052, in openTheFile
    self.renomme_le_fichier()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1045, in renomme_le_fichier
    filename=QFileDialog.getOpenFileName(self,self.tr("Ouvrir une vidéo"), self._dir("cwd"),"*.avi")
KeyboardInterrupt
olivier@olivier-laptop:~$

Je suppose que le problème vient de python 2.6, mais je ne sait pas quoi en faire. Si une bonne âme avait une piste pour que je m'en sorte..

Olivier

Dernière modification par Kanor (Le 13/03/2010, à 19:37)

Hors ligne

#2 Le 09/03/2010, à 20:25

Kanor

Re : Erreur dans pymecavideo

Pour te dépanner tu peux modifier le programme comme suit
Mais avant une petit copie de sauvegarde

sudo cp /usr/lib/python2.6/dist-packages/pymecavideo/__init__.py /usr/lib/python2.6/dist-packages/pymecavideo/__init__.py.save

Si tu veux revenir à l'état initial tu tape ça

sudo cp /usr/lib/python2.6/dist-packages/pymecavideo/__init__.py.save /usr/lib/python2.6/dist-packages/pymecavideo/__init__.py

On ouvre un editeur de text

gksudo gedit /usr/lib/python2.6/dist-packages/pymecavideo/__init__.py

On recherche la fonction openTheFile
qui ressemble à  ça

 
def openTheFile(self,filename):
        if filename != "" :
            try :
                str(filename)
            except UnicodeEncodeError :
                self.renomme_le_fichier()
            if len(filename.split(" ")) > 2 :
                self.renomme_le_fichier()
            else :
                self.filename = str(filename)
                self.prefs.lastVideo=filename
                self.prefs.videoDir=os.path.dirname(unicode(filename))
                self.prefs.save()
                self.init_image()
                self.mets_a_jour_label_infos(self.tr("Veuillez choisir une image et définir l'échelle"))
                self.ui.Bouton_Echelle.setEnabled(True)
                self.ui.horizontalSlider.setEnabled(1)
                self.label_video.show()

que tu modifie comme ça

 
def openTheFile(self,filename):
        if filename != "" :
            self.filename = str(filename)
            self.prefs.lastVideo=filename
            self.prefs.videoDir=os.path.dirname(unicode(filename))
            self.prefs.save()
            self.init_image()
            self.mets_a_jour_label_infos(self.tr("Veuillez choisir une image et définir l'échelle"))
            self.ui.Bouton_Echelle.setEnabled(True)
            self.ui.horizontalSlider.setEnabled(1)
            self.label_video.show()

ça devrait marcher ..


edit: une autre modif à faire chercher la ligne suivant

cmd0="ffmpeg -i %s -ss %f -vframes 1 -f image2 -vcodec mjpeg %s"

et la modifier comme ça

cmd0= """ffmpeg -i "%s" -ss %f -vframes 1 -f image2 -vcodec mjpeg %s"""

Dernière modification par Kanor (Le 09/03/2010, à 20:36)

Hors ligne

#3 Le 09/03/2010, à 21:26

olitask

Re : Erreur dans pymecavideo

bonsoir

eh non malheureusement

olivier@olivier-laptop:~$ pymecavideo
/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py:44: DeprecationWarning: the sets module is deprecated
  from sets import Set
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1041, in openfile
    self.openTheFile(filename)
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1049, in openTheFile
    self.filename=str(filename)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 15: ordinal not in range(128)

et après modif de la ligne concernant ffmpeg j'ai la même erreur mais il n'y a plus la fenètre qui me dit qu'il y a des espaces ou des caractères interdits dans le nom du fichier

merci de te pencher sur ce problème

Olivier

Dernière modification par olitask (Le 09/03/2010, à 21:28)

Hors ligne

#4 Le 09/03/2010, à 21:45

Kanor

Re : Erreur dans pymecavideo

Tu peux donner le nom du fichier

Dernière modification par Kanor (Le 09/03/2010, à 21:45)

Hors ligne

#5 Le 09/03/2010, à 21:55

olitask

Re : Erreur dans pymecavideo

Je me suis mal exprimé. Le nom du fichier c'est le nom du fichier video ( nommé 1.avi ou test.avi ) que je veux ouvrir.

Hors ligne

#6 Le 09/03/2010, à 21:58

Kanor

Re : Erreur dans pymecavideo

Je veux dire est ce que tu peux coller le chemin pour accéder au fichier ..

Dernière modification par Kanor (Le 09/03/2010, à 22:09)

Hors ligne

#7 Le 09/03/2010, à 22:03

olitask

Re : Erreur dans pymecavideo

/home/olivier/Téléchargements/test.avi

tout simplement

Olivier

Hors ligne

#8 Le 09/03/2010, à 22:08

Kanor

Re : Erreur dans pymecavideo

Etrange j'ai pas ce prb chez moi
tu peux toujours mettre la ligne sous cette forme
self.filename = filename
edit
tu a bien ça au début du fichier
#-*- coding: utf-8 -*-

Dernière modification par Kanor (Le 09/03/2010, à 22:09)

Hors ligne

#9 Le 13/03/2010, à 19:38

Kanor

Re : Erreur dans pymecavideo

Est ce que c'est résolu ?

Hors ligne

#10 Le 14/03/2010, à 10:21

olitask

Re : Erreur dans pymecavideo

Kanor a écrit :

Est ce que c'est résolu ?

Bonjour

C'est gentil de vous intéresser à mes problèmes

Eh bien non, j'ai replacé le fichier  __init__.py de sauvegarde à sa place, mais en essayant différentes chose, j'ai rajouté une couche d'erreurs , notamment avec QT4  ( ps j'ai bien #-*- coding: utf-8 -*- au début de mon fichier)
Du coup le logiciel ne s'ouvre même plus ! mad

olivier@olivier-laptop:~$ pymecavideo
/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py:44: DeprecationWarning: the sets module is deprecated
  from sets import Set
Traceback (most recent call last):
  File "/usr/bin/pymecavideo", line 5, in <module>
    pymecavideo.run()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1234, in run
    windows = StartQT4(None,os.path.abspath(filename),opts)
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 91, in __init__
    self.splashVideo()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 99, in splashVideo
    elif os.path.isfile(self.prefs.lastVideo):
  File "/usr/lib/python2.6/genericpath.py", line 29, in isfile
    st = os.stat(path)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 17: ordinal not in range(128)
olivier@olivier-laptop:~$

entretemps, pour me changer les idées, je tente de faire fonctionner les interfaces µorphy avec ATNA  ( et là encore je rencontre des problèmes pour monter mes ports usb !)


edit

j'ai reinstallé le logiciel mais pas avec le .deb

/pymecavideo-4.0$ make
make[1]: entrant dans le répertoire « /home/olivier/Téléchargements/pymecavideo-4.0/help »
make[1]: Rien à faire pour « all ».
make[1]: quittant le répertoire « /home/olivier/Téléchargements/pymecavideo-4.0/help »
lrelease lang/*.ts
Updating 'lang/pymecavideo_en_EN.qm'...
    Generated 63 translation(s) (63 finished and 0 unfinished)
Updating 'lang/pymecavideo_en_GB.qm'...
    Generated 61 translation(s) (24 finished and 37 unfinished)
Updating 'lang/pymecavideo_en_US.qm'...
    Generated 61 translation(s) (24 finished and 37 unfinished)
Updating 'lang/pymecavideo_es_ES.qm'...
    Generated 61 translation(s) (52 finished and 9 unfinished)
Updating 'lang/pymecavideo_fr_FR.qm'...
    Generated 62 translation(s) (59 finished and 3 unfinished)

    Ignored 1 untranslated source text(s)
Updating 'lang/pymecavideo_us_US.qm'...
    Generated 0 translation(s) (0 finished and 0 unfinished)

    Ignored 63 untranslated source text(s)
olivier@olivier-laptop:~/Téléchargements/pymecavideo-4.0$ python __init__.py
__init__.py:44: DeprecationWarning: the sets module is deprecated
  from sets import Set
Traceback (most recent call last):
  File "__init__.py", line 1241, in <module>
    run()
  File "__init__.py", line 1235, in run
    windows = StartQT4(None,os.path.abspath(filename),opts)
  File "__init__.py", line 91, in __init__
    self.splashVideo()
  File "__init__.py", line 99, in splashVideo
    elif os.path.isfile(self.prefs.lastVideo):
  File "/usr/lib/python2.6/genericpath.py", line 29, in isfile
    st = os.stat(path)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 17: ordinal not in range(128)
olivier@olivier-laptop:~/Téléchargements/pymecavideo-4.0$ sudo python setup.py install
[sudo] password for olivier: 
running install
running build
running build_py
copying ./lang/pymecavideo_en_GB.qm -> build/lib.linux-i686-2.6/pymecavideo/lang
copying ./lang/pymecavideo_en_EN.qm -> build/lib.linux-i686-2.6/pymecavideo/lang
copying ./lang/pymecavideo_fr_FR.qm -> build/lib.linux-i686-2.6/pymecavideo/lang
copying ./lang/pymecavideo_es_ES.qm -> build/lib.linux-i686-2.6/pymecavideo/lang
copying ./lang/pymecavideo_en_US.qm -> build/lib.linux-i686-2.6/pymecavideo/lang
copying ./lang/pymecavideo_us_US.qm -> build/lib.linux-i686-2.6/pymecavideo/lang
running install_lib
copying build/lib.linux-i686-2.6/pymecavideo/lang/pymecavideo_en_GB.qm -> /usr/local/lib/python2.6/dist-packages/pymecavideo/lang
copying build/lib.linux-i686-2.6/pymecavideo/lang/pymecavideo_en_EN.qm -> /usr/local/lib/python2.6/dist-packages/pymecavideo/lang
copying build/lib.linux-i686-2.6/pymecavideo/lang/pymecavideo_fr_FR.qm -> /usr/local/lib/python2.6/dist-packages/pymecavideo/lang
copying build/lib.linux-i686-2.6/pymecavideo/lang/pymecavideo_es_ES.qm -> /usr/local/lib/python2.6/dist-packages/pymecavideo/lang
copying build/lib.linux-i686-2.6/pymecavideo/lang/pymecavideo_en_US.qm -> /usr/local/lib/python2.6/dist-packages/pymecavideo/lang
copying build/lib.linux-i686-2.6/pymecavideo/lang/pymecavideo_us_US.qm -> /usr/local/lib/python2.6/dist-packages/pymecavideo/lang
running install_egg_info
Removing /usr/local/lib/python2.6/dist-packages/pymecavideo-1.9.egg-info
Writing /usr/local/lib/python2.6/dist-packages/pymecavideo-1.9.egg-info
olivier@olivier-laptop:~/Téléchargements/pymecavideo-4.0$ pymecavideo
/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py:44: DeprecationWarning: the sets module is deprecated
  from sets import Set
Traceback (most recent call last):
  File "/usr/bin/pymecavideo", line 5, in <module>
    pymecavideo.run()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1234, in run
    windows = StartQT4(None,os.path.abspath(filename),opts)
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 91, in __init__
    self.splashVideo()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 99, in splashVideo
    elif os.path.isfile(self.prefs.lastVideo):
  File "/usr/lib/python2.6/genericpath.py", line 29, in isfile
    st = os.stat(path)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 17: ordinal not in range(128)
olivier@olivier-laptop:~/Téléchargements/pymecavideo-4.0$ pymecavideo
/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py:44: DeprecationWarning: the sets module is deprecated
  from sets import Set
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1041, in openfile
    self.openTheFile(filename)
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1056, in openTheFile
    self.filename=str(filename)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 15: ordinal not in range(128)
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 232, in reinitialise_capture
    self.affiche_image()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 939, in affiche_image
    image=QImage(self.chemin_image)
AttributeError: 'StartQT4' object has no attribute 'chemin_image'

Le logiciel se lance à nouveau mais toujours ce pb initial

Dernière modification par olitask (Le 14/03/2010, à 12:31)

Hors ligne

#11 Le 26/03/2010, à 13:01

Kanor

Re : Erreur dans pymecavideo

Salut

Je pense avoir trouvé la solution remplace la ligne

self.filename = str(filename)

par ça

filename = filename.toUtf8()
data = filename.data()
self.filename = data.decode('utf-8')

dans un autre topic il ont aussi quelque soucis avec pymecavideo
http://forum.ubuntu-fr.org/viewtopic.php?id=152769

Dernière modification par Kanor (Le 26/03/2010, à 13:02)

Hors ligne

#12 Le 26/03/2010, à 18:47

olitask

Re : Erreur dans pymecavideo

après modif, aucun changement, il dit qu'il y a encore des erreurs d'accents dans mes fichiers vidéo. Le terminal me renvoie ces erreurs

olivier@olivier-laptop:~$ pymecavideo
/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py:44: DeprecationWarning: the sets module is deprecated   from sets import Set
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1041, in openfile    self.openTheFile(filename)
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1060, in openTheFile   self.prefs.videoDir=os.path.dirname(unicode(filename))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 15: ordinal not in range(128)
olivier@olivier-laptop:~$

j'ai vu sur l'autre topic qu'il conseillaient de repasser en 8.04. roll

personnellement, je n'ai pas de connaissances en langage de programmation et je ne comprend pas vraiment ce qui cloche ( exempté que la version de python conseillée est la 2.5

amicalement  Olivier

Hors ligne

#13 Le 26/03/2010, à 19:09

olitask

Re : Erreur dans pymecavideo

Je viens de réinstaller la version 4.1.1 dont il est question sur l'autre post et là  miracle ça fonctionne !:D:D:D

bref heureux !

Hors ligne

#14 Le 26/03/2010, à 19:55

Kanor

Re : Erreur dans pymecavideo

Ça marche directement étonnant !
Et les chemins avec des espaces ?

Hors ligne

#15 Le 26/03/2010, à 21:08

olitask

Re : Erreur dans pymecavideo

Euh  enfin non.  Je suis une bille! roll:rolleyes:

J'avais même pas remarqué que dans le mot téléchargement ( l'emplacement de mon fichier) il y avait des accents.

J'ai entretemps rangé certaines de mes videos de test dans un autre répertoire. je viens de retenter sur une vidéo avec des espaces et c'est le status quo ( j'ai quand même tenté les modifs proposées.)

Mais quand même, si il n'y a pas ni d'espaces ni d'accents c'est on. bref, je suis satisfait.

Je met en [résolu] quand même ?

Olivier

Hors ligne

#16 Le 11/04/2010, à 16:13

djibb

Re : Erreur dans pymecavideo

hé les gars smile)))

un p'tit mail aux auteurs pour signaler le bug ce serait pas mal, non ? ça éviterait de voir fleurir des hacks de partout smile

Kanor : merci pour le code, je vais regarder et intégrer tout ça.

Djibb, co-auteur de pymecavideo

Hors ligne