Page 1 sur 2
[VLC] erreur de segmentation (résolu)
Publié : dim. 17 août 2014, 10:34
par mimile
Bonjour,
J'ai téléchargé avec amule le film good morning vietnam (oui, je sais, c'est mal mais je l'avais déjà sur une vieille vidéo-cassette enregistrée lors de son passage à la TV il a quelques années).
Puis je me suis dit que ce serait en quelque sorte rendre un honneur posthume à ce magnifique acteur qu'était Robin Williams, récemment décédé.
Bref, j'insère ce film dans la playlist de VLC, je démarre la lecture et ... plof, VLC plante illico presto.
Je re-démarre la lecture en mode console et j'obtiens ceci :
Code : Tout sélectionner
[okapi@Archie Cinema]$ vlc Good\ morning\ Vietnam.avi
VLC media player 2.1.5 Rincewind (revision 2.1.4-49-gdab6cb5)
[0xead118] main libvlc: Lancement de vlc avec l'interface par défaut. Utilisez « cvlc » pour démarrer VLC sans interface.
Fontconfig warning: FcPattern object size does not accept value "0"
Fontconfig warning: FcPattern object size does not accept value "0"
Erreur de segmentation (core dumped)
A tout hasard, je lance la lecture (toujours en console) avec gnome-mplayer et là, la lecture démarre normalement :
Code : Tout sélectionner
[okapi@Archie Cinema]$ gnome-mplayer Good\ morning\ Vietnam.avi
GMLIB-Message: after init: position=0,000 length=0,000 start_time=0,000 run_time=0,000 volume=0,00 player=dead media=unknown uri=
Comme je préfère nettement VLC, je voudrais savoir pourquoi il plante alors que gnome-mplayer ne le fait pas.
Une idée quelqu'un ?
PS : Ce problème ne se pose qu'avec ce film uniquement ; les autres démarrent sans problème.
Re: [VLC] erreur de segmentation
Publié : dim. 17 août 2014, 11:56
par benjarobin
Il faudrait faire un rapport de bug je le craint. Sauf que tu ne peux pas attacher au rapport le film... Donc si tu veux créer un rapport de bug de vlc, je crains qu'il soit nécessaire de compiler une version de debug de vlc et de donner la trace du plantage...
Re: [VLC] erreur de segmentation
Publié : dim. 17 août 2014, 13:01
par mimile
Merci pour ta réponse.
En fait, je crois que le problème vient du fait que hier, pendant que je téléchargeais le film, j'ai malencontreusement éteint mon PC alors que le film était en cours de téléchargement, ce dont je me suis aperçu un peu plus tard quand j'ai redémarré mon PC.
Le téléchargement a repris et s'est achevé mais je pense que cette coupure intempestive a altéré le fichier et est à l'origine du problème.
En effet, j'ai relancé le téléchargement du film (en prenant une autre source) et cette version ne pose plus de problème.
Sujet résolu donc, sous réserve que je me demande encore pourquoi gnome-mplayer m'a permis de visionner le film altéré normalement.
Cordialement,
Re: [VLC] erreur de segmentation (résolu)
Publié : dim. 17 août 2014, 17:16
par Tucnacek
Une simple idée mais vlc ne "vérifierait-il" pas le fichier à lire avant d'en tenter la lecture ? Il interdirait celle-ci s'il détecte une erreur.
En revanche, GNOME-MPlayer doit n'en avoir cure et lancer le fichier. Ce qu'il serait intéressant c'est de tenter le visionnage avec celui-ci et de voir s'il finit par planter.
Re: [VLC] erreur de segmentation (résolu)
Publié : dim. 17 août 2014, 18:56
par mimile
J'ai regardé le film dans son entièreté avec gnome-mplayer.
En revanche, VLC plantait instantanément au lancement du film.
Il est en effet possible que VLC vérifie l'intégrité du film avant de démarrer, ce qui expliquerait qu'il plante directement.
Je reste persuadé que le fait d'avoir arrêté Arch pendant que amule transférait le film ne lui a pas permis de mettre les repères (mot approximatif) qu'il enregistre quand on l'arrête proprement en cours de transfert, repères qui lui permettent de reprendre l'enregistrement exactement où il a été arrêté.
En l'occurrence, j'ai arrêté le PC en perdant de vue qu'amule fonctionnait et, à mon avis, cela a perturbé la reprise de l'enregistrement au redémarrage suivant à l'endroit précis de l'interruption.
Quoi qu'il en soit, j'ai re-téléchargé le film sans interruption et il est maintenant visible par VLC sans problème.
C'est peut-être une analyze erronée de ma part, mais je n'en vois pas d'autre car c'est le seul film qui a subi ce traitement (interruption brutale) sans passer par la case "voulez-vraiment interrompre amule O/N", la réponse "oui" ne fermant pas immédiatement la connexion car le témoin du modem continue de clignoter pendant quelques secondes avant l'arrêt effectif.
Voilà.
Re: [VLC] erreur de segmentation (résolu)
Publié : ven. 22 août 2014, 00:52
par Elbarto
attention la version actuelle du paquet vlc est assez moisie,
la faute au mainteneur archlinux de vlc qui semble en vacances, car normalement suite à la nouvelle version de ffmpeg sortie fin juillet il aurait dû recompiler le paquet vlc pour prendre en compte cette dernière version,
faute d'avoir fait ça la version de vlc plante sur beaucoup de formats audio/vidéo ( format ape, asf, mov ), erreur de segmentation :
https://bbs.archlinux.org/viewtopic.php?id=185997
si tu as le temps je te conseille de recompiler le paquet vlc en utilisant makepkg, tu incrémentes juste la version du paquet dans le pkgbuild ( 2.1.5-2 au lieu de 2.1.5-1 ),
quand tu réinstalleras le paquet vlc tu vas aussi tomber sur ce bug ( dont on connait pourtant la solution, une simple modification d'un fichier install du paquet archlinux ) :
https://bugs.archlinux.org/task/39676
Re: [VLC] erreur de segmentation (résolu)
Publié : ven. 22 août 2014, 17:07
par mimile
Salut Elbarto
Ma version de vlc est effectivement la 2.1.5-1
Je dois avouer que j'ignore totalement comment faire pour exécuter ce que tu dis
Quand je lance makepkg, j'obtiens ceci :
Code : Tout sélectionner
[okapi@Archie ~]$ makepkg
==> ERREUR : PKGBUILD n’existe pas.
[okapi@Archie ~]$ makepkg vlc
==> ERREUR : PKGBUILD n’existe pas.
Pourrais-tu m'expliquer comment faire en pratique.
A noter que le problème que j'ai rencontré était vraisemblablement dû à une interruption intempestive du téléchargement du fichier (*.avi) car après l'avoir téléchargé à nouveau (sans interruption), le problème a disparu.
N'en reste pas moins que je serais intéressé par la méthode que tu suggères.
Amicalement,
Re: [VLC] erreur de segmentation (résolu)
Publié : ven. 22 août 2014, 17:17
par Elbarto
makepkg sert à construire les paquets archlinux,
pour construire le paquet vlc il faut télécharger les fichiers nécessaires ici :
https://projects.archlinux.org/svntogit ... ckages/vlc
tu fais un clic droit "enregistrer_sous" sur le lien "plain" vers la droite pour chaque fichier pour télécharger chaque fichier,
tu dois avoir 3 fichiers à mettre dans un répertoire :
tu édites le fichier PKGBUILD pour changer le numéro de version du paquet ( ligne "pkgrel=1", tu mets 2 à la place de 1 )
ensuite depuis ce répertoire tu tapes "makepkg" pour lancer la construction du paquet vlc,
attention il faudra avoir installé ces paquets là avant d'essayer de construire le paquet vlc, sinon tu auras un message d'erreur de la part de makepkg :
Code : Tout sélectionner
'live-media' 'libnotify' 'libbluray' 'flac' 'kdelibs'
'libdc1394' 'libavc1394' 'lirc-utils' 'libcaca'
'librsvg' 'portaudio' 'libgme' 'xosd' 'projectm'
'twolame' 'aalib' 'libmtp' 'libdvdcss' 'gnome-vfs'
'libgoom2' 'vcdimager' 'opus' 'libssh2' 'mesa'
une fois ton paquet crée il faut l'installer de cette manière afin de résoudre un bug d'installation lié au cache de vlc :
Code : Tout sélectionner
LD_PRELOAD=/usr/lib/libgobject-2.0.so.0 pacman -U vlc-2.1.5-2-x86_64.pkg.tar.xz
le wiki explique bien comment utiliser makepkg :
https://wiki.archlinux.fr/Makepkg
https://wiki.archlinux.fr/Abs
Re: [VLC] erreur de segmentation (résolu)
Publié : ven. 22 août 2014, 18:18
par benjarobin
Pour récupérer les fichiers il y a 1000 fois plus simple :
Il ne faut surtout pas installer à "la main" les paquets nécessaire pour construire vlc, makepkg s'occupe de ceci et proprement
Ou tout simplement :
Pour cette dernière solution si le dossier /tmp n'est pas assez gros, tu peux faire ceci :
Re: [VLC] erreur de segmentation (résolu)
Publié : ven. 22 août 2014, 23:39
par Elbarto
oui mais tout le monde n'utilise pas yaourt
il y a aussi ABS pour rapatrier les fichiers nécessaires à la création d'un paquet,
dans le cas de vlc :
ça te mettra les fichiers nécessaires dans un répertoire extra/vlc
Re: [VLC] erreur de segmentation (résolu)
Publié : sam. 23 août 2014, 22:53
par Backtoback
Bonsoir,
Juste pour confirmer que moi aussi avec certaines vidéos j'ai une erreur de segmentation.
Donc il y a peut etre un soucis avec VLC, à confirmer
B2B
Re: [VLC] erreur de segmentation (résolu)
Publié : dim. 24 août 2014, 10:40
par mimile
BOnjour et merci à vous pour les explications concernant makepkg.
Cela dit, comme jusqu'à présent, je n'ai jamais été confronté à des fichiers de type ape, asf, mov, je vais me contenter d'attendre le retour de vacances du maintenir de VLC (vu que, me connaissant, ...).
Amicalement
Re: [VLC] erreur de segmentation (résolu)
Publié : dim. 24 août 2014, 13:20
par -redhead-
Bonjour,
Chez moi aussi vlc se plante avec certains fichiers, j'ai donc tenté la solution
et cela s'est terminé brusquement :
Code : Tout sélectionner
/bin/sh : ligne 7 : 4810 Erreur de segmentation PATH="/tmp/yaourt-tmp-redhead/abs-vlc/pkg/vlc/usr/bin:$PATH" LD_LIBRARY_PATH="/tmp/yaourt-tmp-redhead/abs-vlc/pkg/vlc/usr/lib:$LD_LIBRARY_PATH" "/tmp/yaourt-tmp-redhead/abs-vlc/pkg/vlc/usr/lib/vlc/vlc-cache-gen" "/tmp/yaourt-tmp-redhead/abs-vlc/pkg/vlc/usr/lib/vlc/plugins"
Makefile:2604: recipe for target 'install-exec-hook' failed
make[4]: *** [install-exec-hook] Error 139
make[4]: Leaving directory '/tmp/yaourt-tmp-redhead/abs-vlc/src/vlc-2.1.5'
Makefile:2484: recipe for target 'install-exec-am' failed
make[3]: *** [install-exec-am] Error 2
make[3]: Leaving directory '/tmp/yaourt-tmp-redhead/abs-vlc/src/vlc-2.1.5'
Makefile:2424: recipe for target 'install-am' failed
make[2]: *** [install-am] Error 2
make[2]: Leaving directory '/tmp/yaourt-tmp-redhead/abs-vlc/src/vlc-2.1.5'
Makefile:1952: recipe for target 'install-recursive' failed
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory '/tmp/yaourt-tmp-redhead/abs-vlc/src/vlc-2.1.5'
Makefile:2418: recipe for target 'install' failed
make: *** [install] Error 2
Qu'est ce que ça veux dire ?
Re: [VLC] erreur de segmentation (résolu)
Publié : dim. 24 août 2014, 22:30
par Elbarto
ça sent le bug du VLC cache gen dont j'ai parlé plus haut, on dirait que yaourt a essayé d’exécuter le fichier install où se trouve cette commande "vlc-cache-gen",
une solution c'est soit de compiler le paquet avec makepkg sans passer par yaourt, soit de taper cette commande avant d’exécuter la commande yaourt :
Re: [VLC] erreur de segmentation (résolu)
Publié : dim. 24 août 2014, 22:43
par benjarobin
Yaourt ne fait que exécuter makepkg, rien d'autre...
Mais en effet cela ne coûte rien de tenter l'export avant de compiler.
Re: [VLC] erreur de segmentation (résolu)
Publié : lun. 25 août 2014, 02:37
par ArnaudNux
J'avais aussi cette erreur en voulant regarder les chaines en HD, après compilation, le problème à disparu.
Re: [VLC] erreur de segmentation (résolu)
Publié : lun. 25 août 2014, 10:39
par -redhead-
OK ! ça marche nickel
Code : Tout sélectionner
export LD_PRELOAD=/usr/lib/libgobject-2.0.so.0
yaourt -Sb vlc
et vlc ne se plante plus
Mais c'est quoi LD_PRELOAD et d'ou tu sors /usr/lib/libgobject-2.0.so.0 ?
Re: [VLC] erreur de segmentation (résolu)
Publié : lun. 25 août 2014, 10:45
par benjarobin
@-redhead- C'est toujours mieux de chercher un peu avant non ?
libgobject
est une libraire appartenant au paquet
glib2
LD_PRELOAD
force le chargement de cette librairie pour tout exécutable lancé, et surtout cela permet d'éviter le déchargement de cette libraririe : C'est ceci qui fait planté l'application
Re: [VLC] erreur de segmentation (résolu)
Publié : lun. 25 août 2014, 11:08
par -redhead-
@benjarobin
Oui, pardon, ma question était mal formulée.
La question est : Comment on devine que c'est le déchargement(download ?) de libgobject qui fait planter l'appli ?
Re: [VLC] erreur de segmentation (résolu)
Publié : lun. 25 août 2014, 14:31
par Elbarto
c'est suite à ce rapport de bug qu'on connait la solution du "LD_PRELOAD=/usr/lib/libgobject-2.0.so.0" :
https://bugs.archlinux.org/task/39676
mais comme je l'ai dit le paquet vlc semble avoir été délaissé par son mainteneur depuis quelques mois

, il n'est pas normal que le paquet n'ai été pas reconstruit et que ce bug 39676 traine encore alors qu'il suffirait de modifier le fichier vlc.install pour y ajouter le LD_PRELOAD=/usr/lib/libgobject-2.0.so.0 :
Code : Tout sélectionner
post_install() {
xdg-icon-resource forceupdate --theme hicolor &> /dev/null
export LD_PRELOAD=/usr/lib/libgobject-2.0.so.0
usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins
update-desktop-database -q
}