Mercurial > mplayer.hg
view DOCS/xml/it/bugreports.xml @ 25180:48fe4b6e3bab
Support double buffering, fix osd flicker.
author | ulion |
---|---|
date | Fri, 30 Nov 2007 04:20:38 +0000 |
parents | 30c690e359c2 |
children | d203b33fd353 |
line wrap: on
line source
<?xml version="1.0" encoding="utf-8"?> <!-- synced with r23225 --> <appendix id="bugreports"> <title>Come segnalare i bug (errori)</title> <para> Buone segnalazioni di errori sono un contributo molto valido per lo sviluppo di un qualsiasi progetto software. Ma proprio come nello scrivere un buon software, scrivere buoni rapporti sui problemi richiede dell'impegno. Per favore considera che molti sviluppatori sono estremamente impegnati e ricevono immensi volumi di email. Perciò, mentre da un lato il tuo feedback è cruciale per migliorare <application>MPlayer</application> e molto apprezzato, per favore cerca di capire che devi fornire <emphasis role="bold">tutte</emphasis> le informazioni che chiediamo e seguire fedelmente le istruzioni qui documentate. </para> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="bugreports_security"> <title>Come segnalare i bug di sicurezza (errori)</title> <para> Nel caso in cui tu abbia trovato un bug pericoloso e vuoi fare la cosa giusta e lasciarcelo correggere prima di sfruttarlo, saremmo felici di avere la tua segnalazione di sicurezza a <ulink url="mailto:security@mplayerhq.hu">security@mplayerhq.hu</ulink>. Per favore aggiungi nell'oggetto [SECURITY] o [ADVISORY]. Assicurati che il rapporto contenga l'analisi completa e dettagliata del bug. L'invio di una correzione è decisamente apprezzato. Per piacere non ritardare la segnalazione per scrivere un exploit che la provi, puoi inviarlo eventualmente con un'altra mail. </para> </sect1> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="bugreports_fix"> <title>Come correggere i bug</title> <para> Se pensi di avere le capacità necessarie, sei esortato a provare a correggere il bug per conto tuo. O forse lo hai già fatto? Leggi per favore <ulink url="../../tech/patches.txt">questo breve documento</ulink> per scoprire come far sì che il tuo codice venga incluso in <application>MPlayer</application>. Le persone sulla mailing list <ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">MPlayer-dev-eng</ulink> ti aiuteranno se avrai dei dubbi. </para> </sect1> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="bugreports_regression_test"> <title>Come fare delle prove retroattive usando Subversion</title> <para> Un problema che può capitare delle volte è 'prima funzionava, ora non funziona più...'. C'è una procedura passo passo per cercare di scoprire dove il problema si sia presentato. <emphasis role="bold">Non</emphasis> è destinata agli utenti casuali. </para> <para> Per prima cosa, dovresti scaricare l'alberatura dei sorgenti di MPlayer da Subversion. Le istruzioni si possono trovare nella <ulink url="http://www.mplayerhq.hu/design7/dload.html#svn">sezione su Subversion nella pagina dei download</ulink>. </para> <para> Troverai ora un immagine dell'archivio Subversion dentro alla directory mplayer/, dal lato client. Ora aggiorna questa immagine alla data che desideri: <screen> cd mplayer/ svn update -r {"2004-08-23"} </screen> Il formato della data è YYYY-MM-DD HH:MM:SS. Usando questo formato di data ti garantisce di essere in grado di estrarre le path in base alla data in cui sono state applicate, come nell'<ulink url="http://lists.mplayerhq.hu/pipermail/mplayer-cvslog/">archivio MPlayer-cvslog</ulink>. </para> <para> Ora procedi come per un normale aggiornamento: <screen> ./configure make </screen> </para> <para> Per chi sta leggendo e non è un programmatore, il modo più veloce di trovare il punto dove si è presentato il problema è effettuare una ricerca binaria — che significa cercare la data della 'rottura' dividendo ripetutamente a metà l'intervallo di ricerca. Per esempio, se il problema si è presentato nel 2003, inizia da metà anno, poi chiediti "C'è già il problema qui?". Se sì, retrocedi fino al primo di aprile; se no, vai al primo di ottobre, e così via. </para> <para> Se hai tanto spazio libero sul disco rigido (una compilazione completa occupa attualmente 100 MB, e circa 300-350 MB se si abilitano i simboli di debug), copiati la versione funzionante più vecchia prima di aggiornarla; questo ti farà risparmiare tempo se devi retrocedere. (Solitamente bisogna eseguire 'make distclean' prima di ricompilare una versione precedente, perciò se non ne hai una salvata, dovrai ricompilare tutto quanto quando ritorni alla verisone attuale.) </para> <para> Dopo aver trovato il giorno in cui è nato l'errore, continua a cercare usando l'archivio mplayer-cvslog (ordinato per data) e un più preciso aggiornamento su svn con ora, minuto e secondo: <screen> svn update -r {"2004-08-23 15:17:25"} </screen> Questo ti permetterà di trovare facilmente la patch esatta che lo ha generato. </para> <para> Se trovi la patch che è stata la causa del problema, hai quasi vinto; fai un rapporto su <ulink url="http://bugzilla.mplayerhq.hu/">MPlayer Bugzilla</ulink> o iscriviti a <ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-users">MPlayer-users</ulink> e postalo là. C'è anche la possibilità che l'autore intervenga consigliando una correzione. Puoi anche controllare attentamente la patch fino a quando la costringi a rivelarti dove stia il bug :-). </para> </sect1> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="bugreports_report"> <title>Come segnalare i bug</title> <para> Per prima cosa per favore prova la versione Subversion di <application>MPlayer</application> più recente visto che in essa il tuo bug potrebbe già essere stato risolto. Lo sviluppo avanza velocemente, la maggior parte dei problemi nei rilasci ufficiali sono segnalati in pochi giorni o poche ore, perciò parti <emphasis role="bold">solo da Subversion</emphasis> per segnalare i bug. Ciò include i pacchetti compilati di <application>MPlayer</application>. Le istruzioni per Subversion si possono trovare in fondo a <ulink url="http://www.mplayerhq.hu/dload.html">questa pagina</ulink> o nel README. Se ciò non ti è stato di aiuto, per favore fai riferimento alla lista dei <link linkend="bugs">problemi conosciuti</link> e al resto della documentazione. Se il tuo problema è sconosciuto oppure non risolvibile con le nostre indicazioni, allora per favore segnala il bug. </para> <para> Per piacere non inviare segnalazioni di bug ai singoli sviluppatori in privato. Questo è un lavoro di comunità e quindi ci possono essere varie persone interessate ad esso. Alcune volte altri utenti hanno già avuto i tuoi problemi e sanno come aggirare un problema anche quando è un bug nel codice di <application>MPlayer</application>. </para> <para> Per favore descrivi il tuo problema il più dettagliatamente possibile. Fai un piccolo lavoro di ricerca per evidenziare le circostanze in cui succede il problema. Il bug si presenta solo in alcune occasioni? E' specifico per certi file o tipi di file? Capita solo con un codec e è indipendente dal codec? Puoi riprodurlo con tutti i driver di uscita? Più informazioni fornisci, maggiori sono le nostre possibilità di correggere il tuo problema. Per favore non dimenticare di includere anche le importanti informazioni richieste qui sotto, altrimenti non saremo in grado di diagnosticare il problema. </para> <para> Una guida eccellente e ben scritta su come fare domande in forum pubblici è <ulink url="http://www.catb.org/~esr/faqs/smart-questions.html">How To Ask Questions The Smart Way</ulink> (<ulink url="http://xoomer.virgilio.it/army1987k">Come porre domande in modo intelligente</ulink>) di <ulink url="http://www.catb.org/~esr/">Eric S. Raymond</ulink>. Ce n'è un'altra chiamata <ulink url="http://www.chiark.greenend.org.uk/~sgtatham/bugs-it.html">Come segnalare bug efficacemente</ulink> di <ulink url="http://www.chiark.greenend.org.uk/~sgtatham/">Simon Tatham</ulink>. Se segui queste linee guida dovresti poter ottenere aiuto.. Ma per favore tieni conto che tutti noi seguiamo le mailing list volontariamente nel tempo libero. Siamo molto occupati e non possiamo garantire che otterrai una soluzione per il tuo problema o anche solo una risposta. </para> </sect1> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="bugreports_where"> <title>Dove segnalare i bug</title> <para> Iscriviti alla mailing list MPlayer-users: <ulink url="http://lists.mplayerhq.hu/mailman/listinfo/mplayer-users"/> e invia il tuo rapporto sul bug a <ulink url="mailto:mplayer-users@mplayerhq.hu"/> dove puoi discuterlo. </para> <para> Se preferisci puoi invece usare il nostro bel nuovo <ulink url="http://bugzilla.mplayerhq.hu/">Bugzilla</ulink>. </para> <para> La lingua di questa lista è l'<emphasis role="bold">inglese</emphasis>. Per favore segui gli standard delle <ulink url="http://www.ietf.org/rfc/rfc1855.txt">Linee guida della Netiquette</ulink> e <emphasis role="bold">non inviare email in HTML</emphasis> ad alcuna delle nostre mailing list. Verrai semplicemente ignorato bandito. Se non sai cosa sia una mail in HTML o perché sia il male, leggi questo <ulink url="http://expita.com/nomime.html">buon documento</ulink>. Ti spiega tutto in dettaglio e contiene le istruzioni per disabilitare l'HTML. Inoltre nota che non rispondiamo in CC (copia carbone) alle persone, quindi è una buona idea iscriversi per poter effettivamente ricevere la risposta. </para> </sect1> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="bugreports_what"> <title>Cosa riportare</title> <para> Potrebbe servire che tu includa nel tuo rapporto sul bug registrazioni, configurazioni o file di esempio. Se alcune di queste cose sono abbastanza grandi, è meglio caricarle sul nostro <ulink url="ftp://upload.mplayerhq.hu/MPlayer/incoming/">server FTP</ulink> in un formato compresso (si preferiscono gzip e bzip2) e inserisci nel rapporto solo il nome e il percorso del file. Le nostre mailing list hanno un limite sulla dimensione di 80k, se hai qualcosa di più grande devi comprimerlo o caricarlo. </para> <!-- ********** --> <sect2 id="bugreports_system"> <title>Informazioni di Sistema</title> <para> <itemizedlist> <listitem><para> La tua distribuzione Linux o il sistema operativo e la versione, per es.: <itemizedlist> <listitem><para>Red Hat 7.1</para></listitem> <listitem><para>Slackware 7.0 + pacchetti sviluppo dalla 7.1 ...</para></listitem> </itemizedlist> </para></listitem> <listitem><para> La versione del kernel: <screen>uname -a</screen> </para></listitem> <listitem><para> La versione di libc: <screen>ls -l /lib/libc[.-]*</screen> </para></listitem> <listitem><para> Le versioni di gcc e di ld: <screen> gcc -v ld -v<!-- --></screen> </para></listitem> <listitem><para> La versione di binutils: <screen>as --version</screen> </para></listitem> <listitem><para> Se hai dei problemi con la modalità a schermo intero: <itemizedlist> <listitem><para>Il tipo di gestore di finestre e la versione</para></listitem> </itemizedlist> </para></listitem> <listitem><para> Se hai dei problemi con XVIDIX: <itemizedlist> <listitem><para> La profondità colore di X: <screen>xdpyinfo | grep "depth of root"</screen> </para></listitem> </itemizedlist> </para></listitem> <listitem><para> Se i bug sono solo nella GUI: <itemizedlist> <listitem><para>La versione di GTK</para></listitem> <listitem><para>La versione di GLIB</para></listitem> <listitem><para>La situazione della GUI in cui il bug si presenta</para></listitem> </itemizedlist> </para></listitem> </itemizedlist> </para> </sect2> <!-- ********** --> <sect2 id="bugreports_hardware"> <title>Hardware e driver</title> <para> <itemizedlist> <listitem><para> Informazioni CPU (questo funziona solo in Linux): <screen>cat /proc/cpuinfo</screen> </para></listitem> <listitem><para> La marca della scheda video ed il modello, per es.: <itemizedlist> <listitem><para>ASUS V3800U chip: nVidia TNT2 Ultra pro 32MB SDRAM</para></listitem> <listitem><para>Matrox G400 DH 32MB SGRAM</para></listitem> </itemizedlist> </para></listitem> <listitem><para> Il tipo di driver video & la versione, per es.: <itemizedlist> <listitem><para>X built-in driver</para></listitem> <listitem><para>nVidia 0.9.623</para></listitem> <listitem><para>Utah-GLX CVS 2001-02-17</para></listitem> <listitem><para>DRI from X 4.0.3</para></listitem> </itemizedlist> </para></listitem> <listitem><para> Il tipo di scheda video & driver, per es.: <itemizedlist> <listitem><para>Creative SBLive! Gold with OSS driver from oss.creative.com</para></listitem> <listitem><para>Creative SB16 with kernel OSS drivers</para></listitem> <listitem><para>GUS PnP with ALSA OSS emulation</para></listitem> </itemizedlist> </para></listitem> <listitem><para> Se hai dei dubbi includi l'emissione di <command>lspci -vv</command> su sitemi Linux. </para></listitem> </itemizedlist> </para> </sect2> <!-- ********** --> <sect2 id="bugreports_configure"> <title>Problemi del configure</title> <para> Se ricevi degli errori eseguendo <command>./configure</command>, o se fallisce la rilevazione automatica di qualcosa, leggi <filename>configure.log</filename>. Puoi travarci la soluzione, per esempio varie versioni della stessa libreria mescolate sul tuo sistema, o hai dimenticato di installare il pacchetto di scviluppo (quelli con il suffisso -dev). Se pensi ci sia un bug, includi <filename>configure.log</filename> nel tuo rapporto sul bug stesso. </para> </sect2> <sect2 id="bugreports_compilation"> <title>Problemi di compilazione</title> <para> Per favore includi questi file: <itemizedlist> <listitem><para>config.h</para></listitem> <listitem><para>config.mak</para></listitem> </itemizedlist> </para> </sect2> <!-- ********** --> <sect2 id="bugreports_playback"> <title>Problemi in riproduzione</title> <para> Per favore includi l'output di <application>MPlayer</application> al livello di verbosità 1, ma ricorda di <emphasis role="bold">non troncare tale output</emphasis> quando lo incolli nella tua mail. Agli sviluppatori servono tutti i messaggi per diagnosticare correttamente un problema. Puoi redirigere l'output in un file in questo modo: <screen> mplayer -v <replaceable>options</replaceable> <replaceable>filename</replaceable> > mplayer.log 2>&1 </screen> </para> <para> Se il tuo problema è specifico per uno o più file, allora per favore carica quello/i incriminato/i in: <ulink url="ftp://upload.mplayerhq.hu/MPlayer/incoming/"/> </para> <para> Carica anche un piccolo file di testo con lo stesso nome di base del file, con un'estensione .txt. Descrivi il problema che hai con quel particolare file e includi il tuo indirizzo email così come ll'ouptut di <application>MPlayer</application> all livello 1 di verbosità. Solitamente i primi 1-5 MB di un file sono abbastanza per riprodurre il problema, ma per esserne certi ti chiediamo di fare: <screen> dd if=<replaceable>tuo_file</replaceable> of=<replaceable>piccolo_file</replaceable> bs=1024k count=5 </screen> Questo copierà i primi 5 mega di '<emphasis role="bold">tuo_file</emphasis>' e li scriverà su '<emphasis role="bold">piccolo_file</emphasis>'. Dopo prova di nuovo con il file piccolo e se il problema si presenta ancora per noi è sufficiente. Per piacere <emphasis role="bold">non inviare mai</emphasis> questi file via mail! Caricali sull'FTP, e manda solo il percorso/nome del file nel server FTP. Se il file è raggiungibile in rete, allora è sufficiente inviare l'URL <emphasis role="bold">preciso</emphasis>. </para> </sect2> <!-- ********** --> <sect2 id="bugreports_crash"> <title>Crash</title> <para> Devi eseguire <application>MPlayer</application> dentro a <command>gdb</command> e mandarci l'output completo oppure se hai un <filename>core</filename> dump del crash puoi ricavare informazioni utili dal Core file. Qui spiega come: </para> <sect3 id="bugreports_debug"> <title>Come conservare le informazioni di un crash riproducibile</title> <para> Ricompila <application>MPlayer</application> con il codice di debug abilitato: <screen> ./configure --enable-debug=3 make </screen> e poi esegui <application>MPlayer</application> da dentro gdb usando: <screen>gdb ./mplayer</screen> Ora sei dentro gdb, Scrivi: <screen> run -v <replaceable>opzioni-per-mplayer</replaceable> <replaceable>nomefile</replaceable> </screen> e riproduci il tuo crash. Appena ci sei riuscito, gdb ti ripresenterà il prompt dei comandi, dove devi digitare <screen> bt disass $pc-32 $pc+32 info all-registers </screen> </para> </sect3> <sect3 id="bugreports_core"> <title>Come ricavare informazioni significative da un core dump</title> <para> Genera il file di comandi seguente: <screen> bt disass $pc-32 $pc+32 info all-registers </screen> Poi lancia semplicemente questo comando: <screen> gdb mplayer --core=core -batch --command=file_comandi > mplayer.bug </screen> </para> </sect3> </sect2> </sect1> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="bugreports_advusers"> <title>So quello che sto facendo...</title> <para> Se hai generato un rapporto adeguato sul bug seguendo i passi suddetti e sei certo che sia un bug in <application>MPlayer</application> e non un problema del compilatore o di un file danneggiato, se hai già letto la documentazione non sei riuscito a trovare una soluzione, i tuoi driver audio sono OK, allora potresti voler iscriverti alla lista MPlayer-advusers e inviare lì il tuo rapporto per ottenere una riposta migliore e più rapida. </para> <para> Renditi per favore conto che se invii lì domande da niubbo o domande che hanno già una risposta nel manuale, sarai ignorato o alimenterai un flame, invece di ottenere una risposta adeguata. Non generare flame contro di noi e iscriviti a -advusers solo se sai davvero cosa stai facendo e senti di essere un utente avanzato di <application>MPlayer</application> o uno sviuppatore. Se rientri in questi ranghi non dovrebbe esserti difficile scoprire come iscriverti... </para> </sect1> </appendix>