Newsgroup: it.comp.software.divx
Titolo: esercizio pratico di sincronizzazione A/V

vorrei proporre un esercizio agli abili sincronizzatori A/V del
gruppo; l'esercizio e' rivolto a chi ha i seguenti requisiti:
- ha un po' di tempo, voglia e abilita' nelle sincronizzazioni;
- ha una connessione adsl;
- (facoltativo) gli/le piace Kate Bush (e' uscito da poco l'ultimo
  doppio cd "Aerial")
ho scaricato (tramite rete p2p gnutella) il file che ho messo qui:
http://tinyurl.com/9rucn
si chiama cosi':
david-gilmour-with-kate-bush-comfortably-numb-2002-01-18.avi
ed e' grande 29,560,320 bytes.
sulle reti p2p si trova con i seguenti nomi:
$ gnutella-tools sl 29560320
---------
David Gilmour & kate Bush - Confortably numb.avi
Kate Bush - Comfortably Numb VLQ.avi
PINK FLOYD-VIDEO-DAVID GILMOUR-COMFORTABLY NUMB(WITH KATE BUSH).avi
Pink FLoyd - David Gilmour with Kate Bush - Comfortably Numb 2002-01-18.avi
Pink Floyd - David Gilmour With Kate Bush - Comfortably Numb 2002-01-18.avi
Pink_FLoyd_-_David_Gilmour_with_Kate_Bush_-_Comfortably_Numb_2002-01-18.avi
urn:sha1:ZOQQSBC3N6PJWEFELQGWO24K6K276LB7
size   : 29,560,320
status : done
(gnutella-tools e' un mio programma che gestisce un database SQL
che grabba risultati delle ricerche sulle reti p2p; l'ho scritto
per integrare le carenti funzionalita' di gtk-gnutella...)
la riga "urn:sha1:" indica l'hash del file (e' il risultato della funzione
SHA1 applicata al file; in questo caso e' visualizzato in base 32, quindi
in modo diverso da come viene stampato dall'utility "sha1sum")
quel filmato e' veramente di qualita' pessima; si tratta di una
ripresa amatoriale di pochi minuti di un concerto (del 18-01-2002),
quando appunto Kate Bush canta "Comfortably Numb" con David Gilmour.
non solo le immagini sono di qualita' infima, ma il filmato e' tutto
sballato, viene visualizzato a una velocita' tripla (all'incirca) di
quella che dovrebbe.
quindi, per rimetterlo un po' a posto e poterlo vedere in maniera
leggermente piu' decente, c'e' da risolvere un po' di problemi.
innantitutto bisogna capire qual e' il framerate piu' corretto.
poi vanno sincronizzati audio e video, nei limiti del possibile.
come procedereste?
la mia prima idea e' stata questa:
l'AVI risulta avere 3479 frames e ha un framerate (sballato) di
25.118 fps, quindi la durata (sballata) sarebbe di 2m 19s.
pero' la traccia audio dura 468 secondi (7m 48s) e appare "giusta"
quindi si presume che la durata corretta dovrebbe essere piu' o
meno questa.
dal fatto che i frame sono 3479 si deduce che il framerate piu'
corretto dovrebbe quindi essere compreso tra i 7 e 8 fps.
e adesso come si procede?
io ho ottenuto un primo veloce risultato ma non ne sono molto
soddisfatto (in alcuni punti audio e video sono sensibilmente
desincronizzati)...
cosi' ho deciso di proporre l'esercizio sul gruppo, magari
disponendo di strumenti e programmi piu' sofisticati (che io non
ho), qualcuno riesce a ottenere un risultato piu' decente...
se fate qualcosa di buono, avvertitemi; comunque, non c'e'
alcun premio in palio :-)

 25.118 fps, quindi la durata (sballata) sarebbe di 2m 19s.
Lo sto vedendo ora e lo sto vedendo sincronizzato. VirtualDubMod mi dice
che i frames sono 11684, come si vede dalla schermata che ho salvato
qui: 
http://www.lordkap.it/aruba/info.jpg
Non saprei come mai il tuo sistema lo veda sballato... ;/
-- 
Saluti, Kap - 
www.lordkap.it
 - ¥'s Fan #01 - 
www.pianetalibri.com
 - VCC
Gli stessi Dei non possono revocare i loro doni. - Alfred Tennyson

 qui: 
http://www.lordkap.it/aruba/info.jpg
sto guardando l'immagine, in effetti dice proprio 11684 frames...
eppure tutti i programmi che ho mi dicono 3479...
------------------------------------------
$ tcprobe -i david-gilmour-with-kate-bush-comfortably-numb-2002-01-18.avi 
[tcprobe] RIFF data, AVI video
[avilib] V: 25.119 fps, codec=IV50, frames=3479, width=320, height=240
[avilib] A: 22050 Hz, format=0x55, bits=0, channels=2, bitrate=56 kbps,
[avilib]    3745 chunks, 3261202 bytes, CBR
[tcprobe] summary for
david-gilmour-with-kate-bush-comfortably-numb-2002-01-18.avi, (*) = not
default, 0 = not detected
import frame size: -g 320x240 [720x576] (*)
       frame rate: -f 25.119 [25.000] frc=0 (*)
      audio track: -a 0 [0] -e 22050,0,2 [48000,16,2] -n 0x55 [0x2000] (*)
                   bitrate=56 kbps
           length: 3479 frames, frame_time=39 msec, duration=0:02:18.501
------------------------------------------
questo e' tcprobe, ma con tutti gli altri programmi e' lo stesso,
mi dicono tutti che ha 3479 frames! quel numero (3479) e' scritto
nell'header dell'AVI, com'e' possibile che il tuo programma ci legga
11684?
mplayer lo riproduce a una velocita' tripla di quella che dovrebbe,
e naturalmente l'audio e il video avanzano ognuno per conto proprio.
l'unica spiegazione che mi viene in mente e' che i frame sono
effettivamente 3479, ma dal punto di vista dell'AVI si comportano
come se fossero 11684 a 25.119
in altre parole, lo stream potrebbe essere a framerate variabile,
composto da 3479 frame ognuno con un proprio "timestamp" che
dice quando vanno visualizzati, indipendentemente dal framerate
dichiarato nell'header...
ma tu lo vedi fluido o a scatti?
se lo vedi fluido, allora la mia spiegazione e' sbagliata.
se lo vedi a scatti, cioe' vedi un frame che rimane fisso piu'
del normale, poi un altro frame, e cosi' via, allora dovrebbe
essere come ho detto.
grazie per avermelo segnalato! :-)

 grazie per avermelo segnalato! :-)
Un piacere, figurati!
-- 
Saluti, Kap - 
www.lordkap.it
 - ¥'s Fan #01 - 
www.pianetalibri.com
 - VCC
Cartello in una ricevitoria Lotto: "CHIUSO". "TERNO SUBITO"

 Un piacere, figurati!
non vorrei approfittarmi :-) ma se non ti rompe troppo e non ti ci vuole
troppo tempo, potresti ricodificarlo in divx (o xvid) con virtualdub?
l'audio basta copiarlo in direct stream copy;
il video andrebbe ricodificato senza applicare alcun filtro (niente
resize, niente di niente), solo ricodificato in divx (o xvid) in una
passata a qualita' costante (quantizer=2).
se non hai dove metterlo ti daro' la mia password su altervista per
uploadarlo li' (non credo di avere una mailbox capace di 20-30 MB)
se non puoi, non importa, grazie comunque!

 in direct stream copy;
Appena mi si libera il VirtualDubMod mi ci metto! ;)
-- 
Saluti, Kap - 
www.lordkap.it
 - ¥'s Fan #01 - 
www.pianetalibri.com
 - VCC
Non di rado l'onestà è soltanto mancanza d'occasioni di disonestà.
Roberto Gervaso