Comment rapporter les bogues Les bons rapports de bogue sont une contribution précieuse pour tout projet en développement. Mais tout comme pour écrire un bon logiciel, les bons rapports de problème exigent du travail. Rendez-vous compte que la plupart des développeurs sont extrêmement occupés et reçoivent un nombre obscène d'emails. Donc bien que votre retour soit crucial pour l'amélioration de MPlayer et soit très apprécié, comprenez que vous devez fournir toutes les informations que nous demandons et suivre de près les instructions de ce document. Comment réparer les bogues Si vous pensez avoir les talents nécessaires vous êtes invité à essayer de réparer le bogue vous-même. Ou peut-être l'avez-vous déjà fait ? Veuillez lire ce court document (en anglais) pour trouver comment faire inclure votre code dans MPlayer. Les gens de la liste de diffusion mplayer-dev-eng vous assisterons si vous avez des questions. Comment rapporter les bogues Tout d'abord veuillez essayer la dernière version CVS de MPlayer car votre bogue y est peut-être déjà réparé. Le développement évolue très rapidement, la plupart des problèmes des versions officielles sont rapportés dans les jours voir les heures qui suivent, donc n'utilisez que le CVS pour rapporter les bogues. Ceci est également valable pour les paquets binaires de MPlayer. Ne rapportez pas de bogues sur les divers paquets RPM ou Debian de MPlayer. Les instructions CVS peuvent être trouvées en bas de cette page ou dans le README. Si tout cela ne vous aide pas veuillez vous référer à la liste des bogues connus et au reste de la documentation. Si votre problème n'est pas connu ou non résolvable par nos instructions, alors merci de rapporter le bogue. Merci de ne pas envoyer de rapports de bogues en privé à chaque développeur. C'est un travail commun et il y a donc plein de gens que cela pourrait intéresser. Parfois d'autres utilisateurs on rencontré les mêmes ennuis que vous et savent comment contourner le problème même si c'est un bogue dans le code de MPlayer. Merci de décrire votre problème avec le plus de détails possibles. Faites un petit travail de détective pour restreindre les conditions d'occurrence du problème. Est ce que le bogue ne se montre que dans certaines situations ? Est-il spécifique à certains fichiers ou types de fichier ? Apparaît-il avec un seul codec ou est-ce indépendant du codec ? Pouvez-vous le reproduire avec tous les pilotes de sortie ? Plus vous fournissez d'information, plus grandes sont nos chances de résoudre votre problème. Merci de ne pas oublier d'inclure également les informations importantes requises plus bas, sinon nous ne pourront établir un diagnostic précis de votre problème. Un guide excellent et bien écrit pour poser des questions sur les forums publiques est Comment Poser Les Questions De Manière Intelligente par Eric S. Raymond. Il y en a un autre (en anglais) appelé How to Report Bugs Effectively par Simon Tatham. Si vous suivez ces règles vous devriez pouvoir obtenir de l'aide. Mais merci de comprendre que nous suivons tous les listes de diffusion volontairement sur notre temps libre. Nous sommes très occupés et ne pouvons garantir que vous aurez une solution à votre problème ou même une réponse. Où rapporter les bogues Souscrivez à la liste de diffusion mplayer-users: et décrivez votre problème: La langue de cette liste est l'Anglais. Suivez les Règles de la Netiquette SVP et n'envoyez de mails en HTML sur aucune de nos listes de diffusion. Vous ne serez qu'ignoré ou banni. Si vous ne savez pas ce qu'est un mail en HTML ou pourquoi c'est mauvais, lisez ce sympatique document. Il explique tous les détails et a des instructions pour désactiver le HTML. Notez également que nous ne ferons pas de CC (copie-conforme) individuelle et que c'est donc une bonne idée de souscrire pour recevoir votre réponse. Que rapporter Vous pouvez avoir besoin d'inclure des fichiers de log, de configuration ou d'échantillon. Si certains sont très gros alors il vaut mieux les uploader sur notre serveur FTP en format compressé (gzip et bzip2 préférés) et indiquer uniquement leur chemin et nom dans le rapport de bug. Nos listes de diffusion ont une taille de message limite de 80k, si vous avez quelque chose de plus gros vous devrez le compresser ou l'uploader. Information Système Votre distribution Linux ou système d'exploitation et version ex.: Red Hat 7.1 Slackware 7.0 + paquets de développement de la 7.1 ... version du noyau: uname -a version de la libc: ls -l /lib/libc[.-]* version des binutils: as --version versions de gcc et ld : gcc -v ld -v Si vous avez des problèmes avec le mode plein-écran: Type de gestionnaire de fenêtre et version Si vous avez des problèmes avec XVIDIX: profondeur de couleur de X: xdpyinfo | grep "depth of root" Si seule la GUI est boguée: version de GTK version de GLIB version de libpng Endroit de la GUI où le bogue se produit Matériel et pilotes Info CPU (cela ne fonctionne que sous Linux): cat /proc/cpuinfo Fabricant et modèle de votre carte vidéo, ex.: chip ASUS V3800U: nVidia TNT2 Ultra pro 32MB SDRAM Matrox G400 DH 32MB SGRAM Type et version des drivers vidéo, ex.: Pilote X intégré nVidia 0.9.623 Utah-GLX CVS 2001-02-17 DRI de X 4.0.3 Type et version des drivers son, ex.: Creative SBLive! Gold avec pilote OSS de oss.creative.com Creative SB16 avec pilotes noyau OSS GUS PnP avec émulation OSS ALSA En cas de doute, joignez y le résultat de lspci -vv sur les systèmes Linux. Problèmes de configuration Si vous rencontrez des erreurs pendant l'éxecution de ./configure, ou si l'autodetection ou autre chose échoue, lisez configure.log. Vous pouvez y trouver la réponse, par exemple des versions multiples de la même librairie mélangés dans votre système, ou vous avez oublié d'installer les paquets de développement (ceux avec le suffixe -dev). Si vous pensez que c'est un bogue, incluez configure.log dans votre rapport de bogue. Problèmes de compilation Veuillez inclure ces fichiers: config.h config.mak Uniquement si la compilation échoue à partir d'un de ces répertoires, incluez ces fichiers: Gui/config.mak libvo/config.mak libao2/config.mak Pour les problèmes de lecture Merci d'inclure la sortie de MPlayer en verbosité niveau 1, mais rappelez-vous de ne pas tronquer la sortie en le copiant dans votre mail. Les développeurs ont besoin de tous les messages pour diagnostiquer correctement un problème. Vous pouvez rediriger la sortie dans un fichier comme ceci: mplayer -v options nomfichier > mplayer.log 2>&1 Si votre problème est spécifique à un ou plusieurs fichiers, alors merci d'uploader le(s) fautif(s) sur: Uploadez aussi un petit fichier texte ayant le même nom que votre fichier mais avec une extension .txt. Décrivez le problème que vous avez avec ce fichier et incluez votre adresse e-mail ainsi que la sortie de MPlayer en verbosité niveau 1. Généralement les premiers 1-5 MB sont suffisants pour reproduire le problème, mais pour être sûrs nous vous demandons de faire: dd if=votrefichier of=petitfichier bs=1024k count=5 Cela coupera les 5 premiers Mo de 'votrefichier' et les sauvera dans 'petitfichier'. Essayez alors de lire le petit fichier, et si le bogue persiste vous pouvez envoyer le petit fichier par ftp. N'envoyez jamais ces fichiers par e-mail SVP ! Envoyez les par FTP, et postez seulement leur nom/adresse sur ce FTP. Si le fichier est accessible en téléchargement, envoyez seulement son adresse exacte. Plantages Vous devez lancer MPlayer à l'intérieur de gdb et nous envoyer le résultat complet ou si vous avez un core dump du plantage vous pouvez extraire des informations utiles du fichier core. Voici comment: Comment conserver les informations avec un plantage reproduisible Recompilez MPlayer avec les instructions de déboguage: ./configure --enable-debug=3 make et ensuite lancez MPlayer à l'intérieur de gdb en utilisant: gdb ./mplayer Vous êtes maintenant à l'intérieur de gdb. Tapez: run -v options-pour-mplayer nomfichier et reproduisez votre plantage. Aussitôt que vous l'avez fait, gdb va vous renvoyer à la ligne de commande où vous devrez entrer bt disass $pc-32 $pc+32 info all-registers Comment extraire les informations significatives d'un core dump créez le fichier de commande suivant: bt disass $pc-32 $pc+32 info all-registers puis exécutez simplement la ligne de commande suivante: gdb mplayer --core=core -batch --command=fichier_de_commande > mplayer.bug Je sais ce que je fait... Si vous avez créé un rapport de bogue correct en suivant les étapes ci-dessus et que vous êtes persuadé qu'il s'agit d'un bug dans MPlayer, pas un problème de compilateur ou un fichier endommagé, vous avez déjà lu la documentation et vous n'arrivez pas à trouver une solution, vos pilotes son sont OK, alors vous pouvez souscrire à la liste mplayer-advusers et envoyer votre rapport dessus pour obtenir une réponse meilleure et plus rapide. Soyez prévenu que si vous posez des questions de newbie ou des questions dont les réponses sont dans le manuel dessus, vous serez ignoré ou insulté au lieu de recevoir une réponse appropriée. Donc ne nous insultez pas et ne vous inscrivez à -advusers que si vous savez vraiment ce que vous faites et vous sentez en mesure d'être un utilisateur avancé de MPlayer ou un développeur. Si vous correspondez à ces critères il ne devrait pas être difficile de trouver comment on s'inscrit...