Newsgroup: it.comp.software.divx
Titolo: Restauro divx :)

Salve a tutti,
vorrei lanciarmi in una piccola impresa, penso sia fattibile e non richieda 
grossi sforzi, però mi serve un po' di aiuto...
Vorrei recuperare un film molto vecchio che in inghilterra viene venduto in 
dvd (con sola lingua inglese) e in italia no!!
Pertanto ho comprato il dvd originale inglese e ne ho fatto un divx, con 
l'audio in inglese... Ora ho trovato la traccia audio italiana del film da 
un altro divx (che proprio perchè non proveniente da dvd, ha una qualità 
video scadente...) e vorrei riuscire ad integrarla nel divx inglese!
I problemi sono 2:
1) quali sw mi conviene usare per fare l'aggiunta audio? Il virtualdub va 
bene? C'è qualcosa di più semplice e dedicato?
2) l'audio in italiano ha le sigle iniziali con i titoli etc, tagliate 
(proprio manca il video) mentre il video inglese le ha... Dato che in quelle 
sequenze c'è solo musica (o rumori ambientali), è fattibile pensare di 
tagliare via un pezzo d'audio inglese accodargli quello italiano e poi unire 
l'intero audio al divx inglese? Idee? Suggerimenti?
Penso che comunque i due flussi audio andranno convertiti allo stesso 
formato dato che quello italiano è un adpcm mentre l'inglese è mp3...
La frequenza dei due filmati è la stessa, 25 fps per entrambi (a detta di 
gspot...)
Grazie a tutti!! 

 gspot...)
quello che vuoi fare e' un "muxing" (con "restauro" si intende un
filtraggio per migliorare la qualita' percepita).
Di operazioni come questa ne ho fatte parecchie: alcuni casi sono
semplici, alcuni possono essere difficili e noiosi. A volte, per
risolvere il problema, arrivo a scrivere programmini ad hoc sul
momento, quindi non sono il piu' adatto per fornirti una soluzione
generale...
Comunque ti accenno ad alcuni aspetti del mio metodo, in modo da
metterti in guardia sulle difficolta' che potresti incontrare.
Gia' hai notato che al filmato italiano sono tagliati i titoli
iniziali, ma se questo fosse l'unico ostacolo, sarebbe un caso
facilissimo :-)
All'inizio io procedo cosi':
apro entrambi i filmati contemporaneamente con un mio programma
che puo' mostrarmi un frame per volta; tu puoi usare virtualdub
o avidemux, l'importante e' che ti facciano spostare a piacere
all'interno dei due filmati e che ti mostrino con precisione il
numero di frame che e' attualmente visualizzato.
Per prima cosa cerco uno "stacco" di scena all'inizio di uno
dei due filmati, poi cerco lo stesso fotogramma sul secondo.
Mi assicuro che su entrambe le finestre ci sia lo stesso
fotogramma (spostandomi sul successivo c'e' lo stesso cambio
di scena), e mi annoto i due numeri di frame.
Giusto per fare un esempio, potrebbe venire fuori che il numero
di frame del primo sia 3026 e quello del secondo sia 3275.
A questo punto faccio la stessa identica cosa, pero' alla fine
dei filmati, cercando un frame facilmente riconoscibile appena
prima dell'inizio dei titoli di coda.
Anche qui mi annoto le posizioni dei frame.
Supponiamo che venga fuori che il numero di frame del primo
sia 175028 e quello del secondo sia 175279.
L'esempio che ti ho fatto e' un caso semplice perche' la
differenza tra frame corrispondenti e' la stessa sia
all'inizio che alla fine del film, e cioe' 249:
3275 - 3026 = 249
175278 - 175029 = 249
Per pignoleria mi assicuro che anche prendendo alcune posizioni
interne al film, la differenza resti sempre 249.
Un caso come questo e' molto facile e, disponendo di questi 4
numeri ( 3275 --> 3026 , 175278 --> 175029 ) lo risolvo in
pochi minuti, segmentando gli stream ai punti giusti,
ricomponendoli in modo appropriato e rimuxando nel modo che
desidero. Non c'e' neanche bisogno di controllare i risultati
temporanei, perche' queste informazioni sono sufficienti a
ottenere un risultato finale con audio perfettamente
sincronizzato (ovviamente, nell'ipotesi che i filmati iniziali
siano perfettamente sincronizzati).
Per segmentare e unire le parti lavoro su stream singoli, che
provvedo a estrarre preventivamente dai contenitori.
Tipicamente, se non c'e' bisogno, non ricodifico gli mp3.
Un caso come il tuo, mi riferisco al "adpcm", va ricodificato.
Adesso ti accenno a un caso leggermente piu' difficile, che
mi e' proprio capitato recentemente.
Torniamo all'esempio che ti ho fatto sopra.
Quando ho individuato i frame prima dei titoli di coda ho
scoperto che la differenza tra i due filmati non era piu'
la stessa che c'era all'inizio, ma differiva di 4 frames.
Per farti capire, e' come se i valori fossero venuti
175282 - 175029 = 253
In altre parole, un filmato aveva 4 frames in piu' dell'altro.
Allora ho controllato a circa meta', e la differenza era la
stessa che all'inizio (249).
Quindi ho controllato a circa 3/4 del film, e li' la differenza
era di 253, cioe' come alla fine.
Allora ho cercato tra la meta' e i 3/4 del film... e cosi'
via...
A un certo punto ho proprio individuato lo stacco di scena
esatto in cui uno dei due filmati ripartiva con i 4 frames
che all'altro mancavano!
Per chiarire meglio, diciamo che questo stacco di scena si
presentava alla posizione 92320 del primo filmato; questo
fotogramma allora corrispondeva alla posizione 92569 del
secondo filmato.
Pero' la posizione successiva del primo filmato (92321) non
corrispondeva alla posizione successiva del secondo (92570)
ma alla 92574.
Anche se un po' piu' complicato, questo caso e' ancora
abbastanza fortunato perche' l'unico ostacolo e' dato da
quei 4 frames che si trovano in una posizione ben precisa.
Dobbiamo notare che non possiamo tranquillamente ignorare
quella differenza di 4 frames, perche' corrispondono a
160 ms, e un'asincronia audio/video di 160 ms e' molto
fastidiosa!
Si potrebbe pensare di shiftare l'audio di 80 ms in modo
da avere un'asincronia di 80 ms in anticipo su una parte
del film, e un'asincronia di 80 ms in ritardo sull'altra
parte. Ma questo e' ancora peggio...
Ad ogni modo anche questo caso si riesce a risolvere in
modo da ottenere in pochi minuti un filmato finale
perfettamente sincronizzato, pero', per quanto mi riguarda,
ho dovuto scrivere sul momento programmini ad hoc, perche'
le utility esistenti che avevo a disposizione avevano
*tutte* qualche difetto che mi facevano ottenere
risultati in qualche modo difettosi.
Ad esempio, una tipica operazione necessaria per questo
tipo di lavoro e' quello di spezzare un MP3 (magari VBR)
in due parti, a una posizione ben precisa.
Non e' detto che quel MP3 lo si possa spezzare esattamente
in quel punto, ad ogni modo esistera' il punto piu'
vicino ad esso in cui si possa spezzare.
Ebbene, i programmi che ho provato fanno grandi casini:
o producono segmenti "monchi" (con frame che risultano
incompleti) oppure sbagliano il punto di taglio...
Quindi mi sono scritto questa bischeratina, che prende
in ingresso un MP3 e una posizione di taglio, e genera
due MP3 che sono la parte prima e dopo il taglio
(concatenando i due file ottenuti si riottiene il file
di partenza):
(defnet a ()
        (deflocal target f m cnt size dur pos g)
        (set target 3905.04)
        (set f (fopenro "input.mp3"))
        (<> f undef)
        (set m (mp3-create))
        (<> m undef)
        (set cnt 0)
        (opt*   (set size (- 65536 (mp3-buf-act m)))
                (mp3-parse-step m f size)
                (incr cnt size)
                (< (mp3-duration m) target)
                (set dur (mp3-duration m))
                (set pos (- cnt (mp3-buf-act m)))
                (gc) )
        (printout dur " (" pos ")" nl)
        (printout (mp3-duration m) nl)
        (set g (fcreate "parte-1.mp3"))
        (<> g undef)
        (fsetpos 0 f)
        (= (fcopy f g pos) pos)
        (close g)
        (set g (fcreate "parte-2.mp3"))
        (<> g undef)
        (set size (- (length f) pos))
        (= (fcopy f g size) size)
        (close g)
        (close f) )
Comunque, se tu riesci a trovare dei programmi adatti a fare
questo tipo di operazioni, non hai bisogno di fare come
faccio io :-)
Ti consiglio pero' di usare il mio programma avinaptic per
analizzare i file MP3 che devi manipolare, perche' non solo
ti dice la durata con molta precisione, ma ti dice anche se
il file contiene dei byte "extra", che possono dare fastidio.
Ad esempio, quando apri con avinaptic un MP3, ti dice una
cosa di questo genere:
Tipo di file                MPEG-1 Layer III
Encoder                     LAME3.97
MPEG frames                 7489
Durata                      00:03:16 (195.631020 s)
Bitrate                     192 kbps CBR
Frequenza                   44100 Hz
Emphasis                    none
Mode                        joint stereo
Padding                     Sě
Un MP3 adatto a essere muxato in un film deve essere "liscio"
come questo sopra.
In particolare, se ci tieni a evitare seccature, controlla
sempre che avinaptic non riporti il campo "Internal skip".
Buon lavoro :-)
-- 
Home page di Frank: 
http://fsinapsi.altervista.org
Home page di Giubbe e FAQ: 
http://giubbe.altervista.org

metterti in guardia sulle difficolta' che potresti incontrare. [CUT]
giusto per dare anche una soluzione piu' semplice (ma molto meno
professionale di quella proposta da frank), potresti prendere il divx
inglese, lo carichi con Cool edit pro2, questi ti apre una bella
finestra con video,flusso audio eng e sotto la possibilita' di
aggiungere le tracce che preferisci...in questo caso andresti ad
aprire quella ita che hai precedentemente salvato e la confronti con
quella eng, sistemandola nei punti che vedi non essere uguali.
Detto per inciso e' il medoto che uso io per creare gli audio da
muxare sulle varie serietv eng o sugli anime jappi xD
------------------------------------------------
Nike:"Non chiamatela fortuna ma potere della casualita'!"
Kill Bill e' il mio vangelo,Tarantino il mio profeta!
Captain Tsubasa 5...the best ever!

Sembra interessante questo metodo con il cooledit... in questo modo potrei 
syncare audio e video confrontando i due flussi audio... Interessante!
Cmq ho provato a dare un'occhiata con il metodo di frank, in effetti è più 
difficile del previsto, l'audio era perfettamente sincronizzato finchè non è 
arrivato ad un punto in cui il divx italiano (preso dalla tv) andava in 
pubblicità, li mancavano 62 frame che ho dovuto tagliare. Forse con il 
cooledit riuscivo ad inserire un silenzio in quegli istanti e tenere i frame 
(tanto effettivamente era una parte senza audio...).
Beh, grazie ad entrambi, mi sto adentrando in un mondo ben più complesso di 
quanto pensassi!!
Defra 

Ho dato uno sguardo a come funziona CoolEditPro 2, tuttavia quando faccio 
"Insert" e seleziono un video avi, inizia a caricarlo e quando arriva al 99% 
si inchioda il programma, insomma crasha di brutto!!
Tu che versione usi? 



Ho provato anche io per curiosità, ma con Adobe Audition 2.0 e 3.0,
che sono le versioni attuali di CoolEdit Pro (perchè usi ancora quello
Xenon?), mi succede circa la stessa cosa. Cioè non mi crasha, ma mi
dice che non è presente il codec del filmato, che in tutti i casi
provati è un banalissimo AVI/xvid/mp3. Inutle dire che i codec ci sono
tutti e non ho nessun problema del genere con nessun altro programma.
Defra, se a te invece crasha davvero tutto, forse hai le temporary
folder settate su partizioni con poco spazio...
-- 
Paradoxally,
Jan AxHell

Ho risolto la cosa, almeno in parte... Invece di caricare il video e i 
relativi flussi audio, carico solo l'audio e mi baso solo su quello per 
regolare bene il sync...
Ed è quello che ho fatto nelle ultime 2 ore, ho fatto metà film... Il 
problema è che ora questo file mp3 che ho creato con cool edit se lo vado a 
mettere come audio del divx mi sballa tutto! Intendiamoci, è perfettamente 
syncato con l'audio originale (almeno su cooledit) quindi non vedo perchè 
non dovrebbe riprodursi giusto... Volete che virtual dub mod (che gestisce 
direttamente l'mp3) non faccia bene il lavoro? 

No, ho verificato... Purtroppo l'errore sta da qualche altra parte, infatti 
ho 9 giga liberi. Comunque ho provato a mettere la cartella temp anche in 
una partizione con oltre 120 giga liberi, stessa storia. 



Ok, ma bisogna che impari a quotare, se no non si capisce niente, non
è un forum questo...
-- 
Paradoxally,
Jan AxHell



Cosa vuol dire che "è syncato"? Che è lungo uguale? E come si sballa?
Come fai a syncarlo senza vedere le immagini? 
-- 
Paradoxally,
Jan AxHell

 Come fai a syncarlo senza vedere le immagini?
Per syncato, intendo quando l'audio è in sincronia con le immagini...
Praticamente ho estratto il flusso audio dal divx e ho aperto flusso audio 
inglese e flusso audio italiano in cool edit... Poi basandomi sulla "forma 
d'onda", cioè dove c'erano picchi, silenzi ho regolato l'audio italiano 
inserendo pause (o copiando parti del rumore di fondo) o rimuovendo pezzi 
(nei momenti di silenzio...). Di fatto ero riuscito a fare un bel lavoro, il 
problema è che l'audio inglese che ho utilizzato non era quello estratto dal 
divx con virtualdub ma una versione che avevo ri-encodato per comodità. 
Utilizzando il flusso audio originale del divx, senza toccarlo in alcun 
modo, ce l'ho fatta!
Strano però che l'audio sia sfasato così tanto, ho dovuto intervenire in 
almeno 20-30 punti inserendo o rimuovendo parti...
Beh, comunque grazie a tutti per l'aiuto! 

almeno 20-30 punti inserendo o rimuovendo parti...
No, è normalissimo, è moooolto più raro riuscire a fare un mux liscio
senza interventi, le copie dei film passano per mille strade e
spessissimo sparisce un pezzetto qua e là. Per non parlare di censure
e/o versioni apposite per questo o quel paese. Solo con i film
recentissimi è più probabile trovare copie uniformi.
-- 
Paradoxally,
Jan AxHell

tutti e non ho nessun problema del genere con nessun altro programma.
lol...ammetto di essere per certe cose un abitudinario. Seguii al
tempo il consiglio di carletto (quello dei gemboy) che proponeva cool
edit pro2 come programma funzionale in fase di mux e vari....e visto
che mi ci sono trovato sempre bene non ho mai aggiornato xD
Io uso questa versione: Cool Edit Pro 2.00  build 2095.0 [CEPro2]
Se serve posso mettere il rarrone su rapidshare col programma e magari
provate anche voi...a me non ha mai dato alcun problema nel caricare i
video mpeg4+avi, mi sembra strano che invece ad entrambi dia grane
(per "strano" intendo "grande sfiga" xD...si sa che i pc vanno per
l'80% a magia)...controllato di avere i codec corretti per
visualizzare il filmato? beh si, immagino di si visto che lo aprite
con VDM...come non detto. Magari qualcosa va in conflitto...non saprei
mi spiace.
Adobe audition e' piu' performante? mi consigli un bell'upgrade?
Per quanto riguarda il problema letto sotto della sincronia col video,
quoto che spesso si debbano sistemare anche una decina e piu' punti
durante la riproduzione del filmato a causa di stacchi pubblicitari e
tagli...e' solo questione di fortuna nel cimentarsi in un lavoro piu'
o meno falcidiato in italia purtroppo xD


Adobe audition e' piu' performante? mi consigli un bell'upgrade?
Mah, io lo sostituii semplicemente perchè cambiai PC ed era appena
uscito Audition. Onestamente non vedo nessuna differenza come nella
maggior parte dei programmi famosi. Penso che siano bugfix e features
moolto specializzate, che io non uso mai. Di aspetto è praticamente
identico, cambia solo il nome.
-- 
Paradoxally,
Jan AxHell

Ringrazio tutti i contribuenti a questo thread... Grazie ad Adobe Audition 
sono riuscito a fasare perfettamente l'audio; ne ho approfittato anche per 
sostituire alcuni spezzoni di audio italiano con quello inglese (dove non 
c'erano dialoghi) dato che quest'ultimo risultava di qualità sicuramente più 
elevata., provenendo da un dvd :)
Missione compiuta!
Grazie!
Defra 

identico, cambia solo il nome.
oki, ti ringrazio...allora per adesso resto sul cavallo che mi
funziona a dovere...in caso di scleri imprevisti provero' ad
aggiornare ;)
