=============================================================
18-11-07. Cosa è cambiato rispetto alla versione del 27-10-07
=============================================================
- corretto un bug relativo ai tag id3;
- corretto un bug che non faceva riportare il numero dei
canali audio in un matroska;
- corretto il calcolo del bitrate video in un matroska;
- aggiunte alcune info su stream H.264 (CQM, SAR, ...).
Il bug relativo ai tag id3 causava il crash del programma
in situazioni specifiche (rare).
Nelle versioni precedenti, quando ho introdotto l'analisi
diretta di bitstream MP3 e AC3, avevo inavvertitamente
introdotto un bug che non faceva visualizzare il numero
dei canali audio in un matroska. Adesso l'ho sistemato.
Il bug del bitrate video nei matroska (segnalato da Talen)
si manifestava quando il video stream aveva una durata
inferiore alla durata dichiarata nel matroska.
Purtroppo matroska non memorizza la durata di ciascun
stream, quindi ho dovuto effettuare il calcolo della
durata dividendo il numero dei frames dello stream per
il framerate (non essendo il numero dei frames memorizzato
nel matroska, questa info risulta disponibile solo dopo
aver effettuato l'analisi DRF).
Questo nuovo metodo di calcolo dovrebbe dare risultati
corretti in un numero maggiore di casi del precedente, ma
potrebbero esserci casi molto particolari in cui la
durata cosi' calcolata sia diversa da quella effettiva...
Per quanto riguarda il bitrate dell'audio, l'analogo
problema segnalato da Talen permane, ovvero: se l'audio
ha una durata inferiore a quella dichiarata nel matroska,
il bitrate mostrato sara' piu' basso di quello reale.
Questo problema riguarda soltanto la voce
"Bitrate (contenitore)": nei casi in cui e' mostrata
anche la voce "Bitrate (bitstream)" il dato e' affidabile
in quanto ricavato da analisi diretta del bitstream
(attualmente tale voce e' presente solo per MP3 e AC3, e
dopo aver effettuato l'analisi DRF).
Per quanto riguarda gli stream H.264 ho aggiunto alcune
voci (meno di quante avrei voluto), in particolare
adesso vengono visualizzate anche eventuali matrici custom
memorizzate nei PPS (pic parameter set) oltre a quelle
nei SPS (seq parameter set). Inoltre viene visualizzato
l'eventuale SAR (sample aspect ratio, aka PAR = pixel
aspect ratio), lo spazio dei colori (Chroma Format), e
qualche altra info. In seguito aggiungero' la maggior
parte delle info presente in queste strutture.
=============================================================
27-10-07. Cosa è cambiato rispetto alla versione del 07-10-07
=============================================================
- corretto il calcolo delle durate degli stream MP3;
- corretti alcuni errori minori;
- numerosi piccoli miglioramenti.
=============================================================
07-10-07. Cosa è cambiato rispetto alla versione del 29-09-07
=============================================================
- aggiunta nuova sezione "Profile compliancy";
- possibilita' di selezionare e modificare i profili
(Misc->Preferenze->Profili);
- aggiunto il grafico "VBV Buffer fill level";
- corretti alcuni errori;
- aggiunta possibilita' di scegliere un path diverso per il
file di configurazione.
Per scegliere un path diverso per il file di configurazione,
si puo' adesso usare la variabile d'ambiente "AVINAPTIC".
Ad esempio, si puo' assegnare a tale variabile un valore
simile a questo:
set AVINAPTIC=C:\TEMP\avinaptic.cfg
Naturalmente, affinche' questo funzioni, occorre avere i
permessi di scrittura sulla directory specificata
(nell'esempio C:\TEMP).
=============================================================
29-09-07. Cosa è cambiato rispetto alla versione del 23-09-07
=============================================================
- rilevazione e inserimento nel rapporto di tag ID3 (v1 e v2)
(da migliorare);
- migliorato (di molto) il "grafico DRF".
Per quanto riguarda il grafico DRF, va segnalato che adesso
i frame vengono mostrati nell'ordine di codifica (questo vuol
dire che se ci sono B-frames, e solo in tal caso, non sono
mostrati nell'ordine di presentazione).
Vale la pena inoltre far notare che cliccando sopra il
grafico delle dimensioni dei frame, si ottengono i seguenti
effetti:
- cliccando con il pulsante sinistro: si amplifica il
grafico di 20% in 20% rispetto all'originale (1 - 1.2 -
1.4 - 1.6 ecc), in modo da poter visualizzare meglio le
zone in cui non si riesce a distinguere molto...;
- cliccando con il pulsante destro: si ottiene il
contrario del precedente.
Cliccando sull'altro grafico si ottengono spostamenti di
ampiezza in funzione della posizione su cui si clicca.
Il campo "Avg interval" permette di sostituire il valore
della dimensione dei frame con la media del suo intorno di
ampiezza 2*n+1 dove n (n>=0) è il valore di tale campo.
Quest'ultima parte devo controllarla meglio, se ci sono
errori li correggerò nella prossima versione :-)
=============================================================
23-09-07. Cosa è cambiato rispetto alla versione del 16-09-07
=============================================================
- migliorata ancora l'analisi diretta di stream MP3;
- estesa l'analisi anche ai file audio AC-3 (ATSC A/52A);
- estese le analisi MP3 e AC-3 anche a Matroska (MKV);
- corretto bug nel parser AVI che non permetteva l'analisi
di AVI con il primo stream di tipo non video;
- corretti alcuni altri errori (minori)
Dato che le analisi dirette degli stream audio MP3 e AC-3
rallentano un po' l'esecuzione, se tali features non
interessano si possono disabilitare dalla finestra
Misc->Preferenze.
=============================================================
16-09-07. Cosa è cambiato rispetto alla versione del 09-09-07
=============================================================
- migliorata l'analisi diretta di stream MP3;
- estesa l'analisi anche ai file audio MP2;
- aggiunte nuove voci nel rapporto sulle tracce audio MPEG
in contenitori AVI: preload, max A/V diff, bytes skipped,
chunk-aligned
=============================================================
09-09-07. Cosa è cambiato rispetto alla versione del 02-09-07
=============================================================
- aggiunto il tipo di codifica di stream audio AAC in
contenitori Matroska;
- iniziata l'analisi diretta di stream MP3
=============================================================
02-09-07. Cosa è cambiato rispetto alla versione del 30-07-07
=============================================================
- corretta la rilevazione del numero di canali e il tipo di
codifica di stream audio AAC in contenitori MP4
=============================================================
30-07-07. Cosa è cambiato rispetto alla versione del 10-04-07
=============================================================
- migliorata l'esportazione in bbcode (tags [table]);
- corretti alcuni errori
=============================================================
10-04-07. Cosa è cambiato rispetto alla versione del 29-03-07
=============================================================
- iniziata l'analisi di immagini statiche (PNG, JPG...);
- aggiunta la funzione Misc->Salva_riordinando_le_tracce_audio
L'analisi di immagini statiche (i formati supportati sono
soltanto PNG, JPG, PPM, GIF), per ora si limita solo a fornire
alcune informazioni, come la risoluzione, la "luminanza"
(intesa come la media dei valori di intensità luminosa) e una
stima del "contrasto" (calcolata come deviazione standard
dalla media dell'intensità luminosa). La generazione del
grafico del bitrate, nel caso delle immagini statiche, è
sostituita dalla generazione del grafico della distribuzione
dei coefficienti DCT su blocchi 8x8. La mia ipotesi è che
sia possibile rilevare il grado di "blockiness" da cui è
affetta l'immagine, in base al discostamento della linea
tratteggiata rossa (shift=4,4) da quella blu (shift=0,0).
La funzione Misc->Salva_riordinando_le_tracce_audio permette
di salvare una copia di un AVI cambiando l'ordine delle tracce
audio.
=============================================================
29-03-07. Cosa è cambiato rispetto alla versione del 25-03-07
=============================================================
- migliorata la funzione di ricerca nel grafico DRF;
- aggiunta finestra Misc->Preferenze;
- leggermente migliorata esportazione bbcode.
=============================================================
25-03-07. Cosa è cambiato rispetto alla versione del 06-03-07
=============================================================
- corretti molti errori;
- vengono mostrate nel rapporto eventuali matrici custom nel caso AVC;
- aggiunta possibilità di esportare il rapporto con tags bbcode e html.
L'errore più grosso era nell'interpretazione di alcuni indici OpenDML;
ad esempio, fino alla versione del 6-03, su un AVI con più chunk RIFF
e rec-lists (creato da AVI-Mux GUI), venivano riportati i seguenti
dati sbagliati:
------------------------
[ Traccia audio n. 1 ]
Audio tag: 0x2000 (AC3)
Bitrate: 384 kbps CBR
Canali: 5
Frequenza: 48000 Hz
Chunks: 0
Stream size: 1,321,562,112 bytes
Ritardo: 0 ms
[ Traccia audio n. 2 ]
Audio tag: 0x55 (MP3)
Bitrate: 122.04 kbps VBR
Canali: 2
Frequenza: 48000 Hz
Chunks: 0
Stream size: 1,147,220 bytes
Ritardo: 0 ms
------------------------
I dati sbagliati erano: il numero di chunks e la dimensione dello stream.
Dopo il debugging, a partire da questa versione (25-03), vengono riportati
i seguenti dati corretti:
------------------------
[ Traccia audio n. 1 ]
Audio tag: 0x2000 (AC3)
Bitrate: 384 kbps CBR
Canali: 5
Frequenza: 48000 Hz
Chunks: 107549
Stream size: 330,390,528 bytes
Ritardo: 0 ms
[ Traccia audio n. 2 ]
Audio tag: 0x55 (MP3)
Bitrate: 122.04 kbps VBR
Canali: 2
Frequenza: 48000 Hz
Chunks: 286805
Stream size: 105,008,064 bytes
Ritardo: 0 ms
------------------------
Un altro errore che ho corretto è che adesso il programma evita di
estrarre tracce da Matroska che ancora non riesce a estrarre in modo
corretto (finché non implementerò l'estrazione dei casi rimasti, uno
alla volta...).
Un'altra modifica riguarda il parser dei sottotitoli SRT: adesso, quando
manca un numero progressivo di una entry, l'analisi non si interrompe e
viene rilevata un'inconsistenza nella numerazione. Salvando i sottotitoli,
il problema viene risolto.
=============================================================
06-03-07. Cosa è cambiato rispetto alla versione del 21-02-07
=============================================================
- corretto un errore nel parser MP4;
- aggiunto riconoscimento di un formato QuickTime (fast start);
- aggiunta qualche info sulle codifiche H.264 (weighted prediction,
numero di frame di riferimento);
- aggiunto riconoscimento automatico anche dei titoli di testa (oltre
a quelli di coda);
- aggiunta la possibilità di restringere a piacere l'intervallo di
analisi DRF (nel caso in cui il riconoscimento automatico non
dovesse indovinare bene);
- per quanto riguarda i sottotitoli SRT: adesso è possibile farsi
dire quali sono le incoerenze rilevate nei timestamps e quali
sono le entries che hanno più di n righe.
Qualche commento sulle modifiche:
L'effetto dell'errore nel parser MP4 era che su alcuni filmati
non si poteva fare l'analisi DRF (non era un errore fatale, ma
è sempre meglio averlo eliminato).
Per restringere l'intervallo dell'analisi DRF occorre prima fare
l'analisi completa, poi cliccare sul menu Misc->EscludiTitoliTesta
e Misc->EscludiTitoliCoda. In questo modo si può scegliere il
numero di frame da escludere in testa e in coda: il report viene
modificato istantaneamente...
Per quanto riguarda i sottotitoli SRT:
nel menu Statistiche ho aggiunto le voci:
- Mostra entries con troppe righe;
- Mostra timestamps incoerenti (per entry);
- Mostra timestamps incoerenti (globali)
Questo vi permette di vedere su quali entries sono stati
riscontrati i problemi. Poi sta a voi decidere se lasciare tutto
com'è, oppure se intervenire con un editor di testo.
Un'altra cosa che ho aggiunto sui sottotitoli SRT è questa:
quando si chiede l'operazione Modifica->LimitaNumeroRighe
e si sceglie un numero massimo di righe pari a 2, una entry
come questa
------------------------
358
00:26:37,280 --> 00:26:41,239
good decisions has been brewing for a long
time, and we watch them as if we are watching
in theater
------------------------
adesso viene suddivisa in questo modo:
------------------------
358
00:26:37,280 --> 00:26:39,919
good decisions has been brewing for a long
time, and we watch them as if we are watching
359
00:26:39,919 --> 00:26:41,239
in theater
------------------------
cioè, i tags dovrebbero essere reinseriti nel modo giusto.