mirror of https://github.com/mpv-player/mpv
508 lines
18 KiB
XML
508 lines
18 KiB
XML
<?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>
|