Pages : 1
#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
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 !
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.
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! :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 )))
un p'tit mail aux auteurs pour signaler le bug ce serait pas mal, non ? ça éviterait de voir fleurir des hacks de partout
Kanor : merci pour le code, je vais regarder et intégrer tout ça.
Djibb, co-auteur de pymecavideo
Hors ligne
Pages : 1