grazie anticipatamente per le risposte
> Cosa significa che quel vob era "interlaced"?
che nel mpeg-2 c'e' un flag settato, che indica che e' codificato
in modo interlacciato (il decoder ne deve tenere conto, per poterlo
decodificare correttamente)
> Interlaced implica un
> decadimento della qualitą rispetto al dvd originario?
no.
La codifica interlacciata si usa per codificare filmati
interlacciati, cioe' i cui "frames" sono composti da
"semiquadri" che rappresentano istanti temporali diversi
(un "semiquadro" contiene righe pari, l'altro le dispari)
--
Home page: http://fsinapsi.altervista.org
> Quindi nulla a che vedere con gli mpeg4 e similari "interlacciati" (qui
> il termine è usato quindi per identificare una tecnica differente da
> quella che mi hai spiegato tu) nel senso che si vedono delle righe nere
> fra una e l'altra (tecnica usata anche sui monitor a tubo catodico [CRT]
> di grosse dimensioni 10 e passa anni fa)? Immagino che lo facciano per
> risparmiare spazio (a discapito della qualità video).
se ti riferisci ai monitor di vari anni fa, che venivano descritti da
note tecniche del tipo "1024x768 interlacciati", credo che si tratti di
una cosa diversa.
Il termine "interlacciato" e' usato anche nell'ambito delle immagini,
ad esempio una GIF o una JPEG puo' essere codificata in formato
interlacciato, e qui il termine ha un significato diverso.
Nell'ambito degli standard MPEG, una codifica interlacciata e'
caratterizzata dal fatto che i due "campi" ("top field" e "bottom field")
vengono elaborati separatamente.
Questo serve per codificare i filmati "realmente" interlacciati (ad
esempio, il filmato di una tipica trasmissione televisiva).
Puo' pero' capitare che un filmato progressivo venga codificato in
forma interlacciata: questa situazione e' simile a cio' che avviene
quando un'emittente trasmette un film progressivo in forma di segnale
PAL, o quando un lettore DVD costruisce un segnale PAL da un film
progressivo...
> E il motivo per cui un filmato reencodato in un vob tratto da un dvd non
> interlacciato viene reencodato interlacciandolo?
non c'e' nessun motivo per fare cio'
> Porta a risparmio di spazio?
no
> Scadimento dell'immagine?
forse un po' di degrado potrebbe esserci, ma in genere dovrebbe essere
basso...
Se un filmato e' progressivo, andrebbe codificato come progressivo.
Se, invece, viene codificato come interlacciato, e' stata commessa
un'imprecisione... (cio' puo' essere dovuto a un'impostazione di
default dell'encoder mpeg-2, che e' l'impostazione che in caso di
errore fa meno danni (*)). Comunque, in tal modo non viene risparmiato
spazio, e alla fin fine si ottiene un risultato simile
(*)
ci sono due tipi di errori:
1) il filmato e' progressivo e viene codificato interlacciato;
2) il filmato e' interlacciato e viene codificato progressivo.
L'errore 1) e' molto meno grave del 2)
> Frank Sinapsi wrote:
>> no.
non e' la stessa cosa.
Tu avevi chiesto se la codifica interlacciata dei DVD porta a un
risparmio di spazio. La risposta e' no.
Stasera ti forniro' qualche riferimento sugli standard MPEG e le
varie tecniche di codifica
Vedo che anche certi dvdr rilasciati su alcuni forum di p2p sono
criticati perchè interlacciati: ma in pratica hanno delle righe nere fra
una riga di informazione e l'altra? Perchè fanno ciò? Risparmiare
spazio? Oppure anche il dvd originale da cui sono stati creati era
interlacciato (nel senso negativo dell'interlacciatura)?
Esempio di ciò che suppongo sia l'interlacciatura criticata:
riga0
NERO
riga2
NERO
riga4
NERO
.....
NERO
rigan
ciao e grazie!!
> Ero rimasto sorpeso dal tuo commento in cui dicevi che non c'era qualità
> inferiore (parlavamo di 2 diverse interlacciature come tu hai precisato)
> perchè nei commenti a quel vob interlacciato ce n'erano molti negativi
> che sottolineavano di come le immagini fossero interlacciate.
> Chiedevo cosa implicasse l'interlacciatura perchè non avevo fatto in
> tempo a visionare quel VOB (rimosso dal sito) ed ero curioso.
mi sa che non ci stiamo capendo :-)
Adesso scrivi che c'erano commenti negativi su immagini interlacciate...
Questo mi da' l'idea che le immagini presentassero i "difetti"
caratteristici di _effettivo_ interlacciamento.
Nei post precedenti parlavi di VOB codificato interlacciato, ottenuto
da un filmato non interlacciato...
> Vedo che anche certi dvdr rilasciati su alcuni forum di p2p sono
> criticati perchè interlacciati: ma in pratica hanno delle righe nere fra
> una riga di informazione e l'altra? Perchè fanno ciò? Risparmiare
> spazio? Oppure anche il dvd originale da cui sono stati creati era
> interlacciato (nel senso negativo dell'interlacciatura)?
> Esempio di ciò che suppongo sia l'interlacciatura criticata:
> riga0
> NERO
> riga2
> NERO
> riga4
> NERO
> .....
> NERO
> rigan
non e' proprio cosi'.
Hai presente grosso modo come funziona una telecamera interlacciata
usata per riprendere una tipica trasmissione televisiva? Piu' o meno
effettua una doppia scansione orizzontale della scena ripresa (riga
per riga, dall'alto verso il basso); la prima scansione genera le
linee dispari, la seconda le pari, e viene fatta una scansione ogni
20 millisecondi (quindi 50 scansioni al secondo). Quindi le righe
dispari e le pari non si riferiscono allo stesso istante temporale,
ma sono "sfasate" di 20 millisecondi (se il presentatore della
trasmissione sta muovendo una mano, la posizione della mano nelle
righe pari non sara' proprio la stessa che occupa in quelle dispari).
Questo processo produce praticamente un segnale PAL, che e' quello
che viene trasmesso dall'emittente televisiva.
Quando acquisisci con una scheda un segnale di quel tipo, e vai a
visualizzare il risultato sul monitor del PC, in corrispondenza dei
movimenti noterai delle brutte righe orizzontali, dovute alla
differenza di 20 ms tra i due campi.
Se vuoi codificare tale filmato hai alcune possibilita': la piu'
seguita dai frequentatori di questo Ng e' quella di applicare un
apposito filtro video (deinterlacer) che interviene modificando
parzialmente alcune righe del filmato nel tentativo di minimizzare
le segmentazioni dovute alla differenza temporale tra i due campi;
in questo modo si ottiene un filmato "semi-progressivo" che poi
si codifichera' in divx o xvid.
Un'altra possibilita' e' quella di lasciare inalterato
l'interlacciamento originario (perche' si ha l'intenzione di
riguardare in seguito il filmato su un televisore), e usare una
apposita codifica interlacciata. In pratica questo non lo si fa
mai (o quasi) con i codec di tipo MPEG-4, ma si fa con MPEG-2 per
poi ottenerne un DVD (cosa che io non ho mai fatto, se non un paio
di volte per prova).
Perche' si deve usare una apposita codifica interlacciata per
codificare materiale interlacciato, invece di usare la stessa
codifica che si usa per filmati progressivi? Una risposta
esauriente a tale domanda sarebbe un po' complessa, ma posso
provare a spiegartelo solo se ci tieni molto :-)
Adesso veniamo ai DVD.
I DVD-Video che si trovano in vendita sono interlacciati o
progressivi?
Se si parla dei filmati in se', e se si tratta di film, sono
quasi sempre progressivi, perche' i film vengono ripresi a 24
fotogrammi al secondo, e i "DVD PAL" dei film vengono ottenuti
semplicemente velocizzandoli un po' (da 24 a 25 fps).
I DVD di documentari, alcuni di quelli musicali e altro tipo
di materiale, possono invece essere "nativamente" interlacciati.
Con il termine "nativamente" intendo dire che la telecamera con
cui e' ottenuto in origine il filmato riprendeva la scena in
modo interlacciato (nel modo che ho spiegato sopra).
Tuttavia i film in DVD-Video, pur essendo progressivi, sono
tipicamente codificati usando l'opzione interlacciata di
MPEG-2, perche' destinati a essere usati in un lettore DVD che
comunque deve produrre un segnale PAL da inviare a un
televisore PAL.
Questo dovrebbe rispondere anche alla tua domanda del perche'
per un filmato progressivo venga usata una codifica
interlacciata (cosa che altrimenti non avrebbe senso).
Quando si decodifica un filmato progressivo che e' stato
codificato interlacciato, rimettendo insieme i due campi
(operazione chiamata "weave") si riottiene il filmato
progressivo di partenza, quindi in linea di principio non c'e'
una perdita di informazione. Nessuna riga del filmato viene
buttata via. Credo che fosse questo che volevi sapere.
Non c'e' neanche un risparmio di spazio.
La codifica interlacciata servirebbe semplicemente a trattare
in modo speciale un filmato "nativamente" interlacciato.
ciao e grazie, rz
>> Questo mi da' l'idea che le immagini presentassero i "difetti"
>> caratteristici di _effettivo_ interlacciamento.
> Che difetti si presentano generalmente?
credevo fosse chiaro dal post :-)
Se prendi un filmato nativamente interlacciato, ogni frame e'
composto da due campi ("top field", "bottom field") che
rappresentano due istanti temporali diversi della scena.
Quindi, qualsiasi cosa si stia muovendo nella scena, occupa
posizioni leggermente diverse, e questo crea delle brutte
righe orizzontali...
Ecco, questa e' una tipica immagine interlacciata:
http://www.100fps.com/distortion2.jpg
Possibile che non abbia mai visto un effettaccio del genere?
Come vedi, l'asincronia tra le righe pari e dispari produce
delle brutte seghettature orizzontali.
Questo non e' esattamente un "difetto", ma una caratteristica
del modo (interlacciato) in cui e' stata ripresa la scena,
ed e' fatto apposta per essere visualizzato su un dispositivo
che usa la stessa tecnica di visualizzazione interlacciata
(per esempio, un televisore PAL).
Quando visualizzi un tale filmato su un televisore, quindi, lo
vedrai bene.
Quando visualizzi un tale filmato su un dispositivo progressivo,
lo vedrai male (con le rigacce), a meno che non venga applicato
un filtraggio (come avevo accennato nel precedente post).
Ora, non ho idea di quali fossero i commenti che hai letto, ma
forse si lamentavano di un effetto di questo tipo...
ciao e grazie ancora!
ciao e grazie ancipatamente per le risposte.
> In pratica, se guardo su di un TV a tubo catodico con l'impostazione
> "progressive scan" del dvd player un dvd-r che su di un PC si vede con i
> difetti dell'interlacciatura, come si vede?
se imposti "progressive scan" sul dvd player, bisogna che l'apparecchio
sia collegato a un sistema di visualizzazione progressivo. Se e'
collegato a un televisore PAL mediante scart, il segnale che arriva al
televisore e' interlacciato (e' un segnale PAL).
Naturalmente, un DVD nativamente interlacciato si vede bene su un tv PAL.
> E se lo guardo su di un TV plasma o lcd vedo i difetti come sull'lcd del
> pc se lo riproduco con un dvd da tavolo?
non ho mai provato, ma penso di no, perche', se un sistema progressivo
accetta un ingresso interlacciato, dovrebbe attivare un apposito
filtraggio video (con le stesse funzioni dei filtri di deinterlacciamento
che si usano in programmi come VirtualDub e simili)
> Cambia qualcosa se si imposta "progressive scan" o meno?
come ho gia' scritto sopra, avendo io soltanto televisori PAL comprati
diversi anni fa, e avendo collegato i lettori mediante cavo scart,
l'impostazione che devo usare e' sempre "interlaced".
Se pero' imposto "progressive scan", il comportamento dei lettori DVD
e' un po' diverso a seconda del modello: con alcuni resta tutto com'e'
(in pratica, l'uscita PAL su scart resta invariata), con altri non si
vede piu' niente, e bisogna reimpostare su "interlaced". Qualche anno
fa, su questo Ng, molte persone scrivevano che all'improvviso non
vedevano piu' niente, poi veniva fuori che avevano premuto il tastino
"P/I" del telecomando (bastava ripremerlo e tornava tutto a posto).
> Perchè mi sembra di aver capito che i film dvd normalmente non sono
> interlacciati ma questo fenomeno si verifica dopo che li si sono rippati
> col PC.
un film che e' nato progressivo non diventa interlacciato. Un film
progressivo su DVD, quando rippato, resta progressivo.
Se diventa interlacciato, si e' verificato qualcosa di molto strano.
Ad esempio, ci sono dei metodi di conversione di framerate che operano
a livello delle righe, e possono prendere in ingresso filmati
progressivi e produrre in uscita filmati che sembrano interlacciati.
Questi metodi presuppongono che i filmati andranno visti su un
televisore, non sul monitor di un pc.
Possono verificarsi altri casi di filmati progressivi che diventano
"simil-interlacciati", ad esempio mediante un'accidentale traslazione
dei campi: in questa pagina scritta da Donald Graft trovi descritti
tutti i casi che possono presentarsi quando si acquisiscono filmati:
http://tinyurl.com/lfaxp
Come ti dicevo, esistono DVD nativamente interlacciati. Io ne ho
diversi, ad esempio tutti quelli che venivano allegati alla rivista
"Quark": questi DVD, se li guardo sul pc, si vedono male: se non
attivo nessun filtro di deinterlacciamento (al volo), e' pieno di
"motion artefacts" (le tipiche segmentazioni orizzontali); attivando
un filtro al volo, migliora abbastanza, anche se la qualita' e'
decisamente inferiore rispetto a un tipico DVD che contiene un film.
Invece, guardandolo sul lettore DVD, si vede benone.
Il motivo e' ovvio: le riprese sono effettuate da una telecamera
PAL che funziona nello stesso modo di un televisore PAL: una doppia
scansione alternata ogni 40 millisecondi.
Eppure, leggiti questa cosa buffa:
http://tinyurl.com/yhksmg
Si tratta di un tizio che un paio di anni fa si lamentava di
vedere male il DVD di Quark sul monitor del PC, mentre altri gli
rispondevano "ma sulla TV lo vedo proprio bene" :-)
Il motivo, come dicevo, non e' nella bassa qualita' del TV rispetto
al monitor del PC, ma nel fatto che le riprese sono state fatte
(all'origine) per essere visualizzate con il metodo del
televisore...
> Dici che i dvd film normalmente non sono interlacciati eppure noto da
> un forum di un tracker (demonoid) che un utente dice, riferendosi ad
> una release di un noto film di un paio di anni fa,
se mi dai il link o il titolo del film, ci do' un'occhiata, poi forse
sapro' essere piu' preciso
> che è interlacciato come interlacciati sono quasi tutti i film dvdr
> che trova su quel tracker (sfortunatamente dice lui): critica quelle
> release dicendo quindi implicitamente che NON è normale che siano
> interlacciate.
non ho mai scaricato un film in dvd da Demonoid, e quindi non so che
dirti...
Da Demonoid ho scaricato dei DVD di materiale acquisito da TV,
come una coppia di trasmissioni della BBC presentate dal noto biologo
Richard Dawkins, sulle religioni come "complessi memici" dannosi per
l'umanita' (The Root of All Evil? The Virus of Faith) :-)
> Non capisco allora la ragione per cui qualcuno debba interlacciare
> qualcosa che nativamente, come dici tu, non lo è.
Nel caso dei film, non e' proprio normale che siano interlacciati,
pero' possono esserlo se si tratta di DVD fatti per essere visti
sui televisori americani NTSC 29.97 fps. In tal caso, il film,
nativamente progressivo, viene sottoposto a qualche tipo di
processo (tipo "3:2 pulldown") che lo trasforma in
"simil-interlacciato", fatto a posta per essere visto sui
televisori NTSC...
Maggiori info puoi trovarle anche qui:
http://en.wikipedia.org/wiki/Telecine
Oppure qui:
http://www.benis.it/dvd/pal/pal.htm
Quindi possiamo concludere che normalmente le release di dvdr ntsc sono
interlacciate dato che applicare il deinterlacing, mantenendo il formato
ntsc a ~30 fps, si procurerebbero dei difetti in riproduzione coi TV ntsc?
Ora che mi hai illuminato :) sui dvd interlacciati noto che il player
VLC ha un sistema di deinterlacing in riproduzione (anche se con un
mozzicone di vob [un vob troncato] non sono riuscito ad apprezzarne la
funzionalità). Ho notato che ci sono molti sistemi di deinterlacing uno
diverso dall'altro (un po' come per le tecniche di resizing di un
bitmap): dove posso trovare documentazione relativa ai metodi per
scegliere la tecnica più opportuna a seconda del tipo di filmato che si
riproduce? Sempre che non sia un discorso semplice che si può fare anche
qui...
Ma toglimi una curiosità: questa cultura nelle tecniche di codifica
video te la sei fatta perchè sono cose che hai dovuto studiate per
lavoro/università o è pura passione da hobbysta? Se non sono indiscreto...
ciao e grazie ancora!
> Quindi possiamo concludere che normalmente le release di dvdr ntsc sono
> interlacciate dato che applicare il deinterlacing, mantenendo il formato
> ntsc a ~30 fps, si procurerebbero dei difetti in riproduzione coi TV ntsc?
penso che il motivo sia semplicemente che il releaser possiede il DVD
originale in quella forma, e lo lascia com'e'.
Non mi intendo di release di film in DVD (mai presi), ma credo che chi
le fa segua queste regole:
- se il DVD originale entra in un DVD da 4.7 GB, allora crea il torrent
mettendoci la directory VIDEO_TS e i VOB in chiaro, senza fare altro;
- se il DVD originale supera i 4.7 GB, usa un programma apposito per
rimpicciolire il film in modo da rientrare nei 4.7 GB (tipo
"DVD Shrink").
Non vedo perche' dovrebbe deinterlacciare, se ha intenzione di
rilasciarlo in forma di DVD...
Quello che si fa, in genere, quando si vuole ricodificare un film che si
ottiene in quella forma (NTSC 29.97, ottenuto mediante 3:2 pulldown), e'
cercare di applicare un procedimento "ivtc" (inverse telecine), per
riportarlo a 25 fps, possibilmente progressivo... comunque, non e' detto
che questa operazione sia facile e priva di intoppi...
> Ho notato che ci sono molti sistemi di deinterlacing uno
> diverso dall'altro (un po' come per le tecniche di resizing di un
> bitmap):
si', perche' la specifica del problema non e' definita in modo
rigoroso, ma abbastanza vago, quindi non c'e' un obiettivo univoco
da ottenere
> dove posso trovare documentazione relativa ai metodi per
> scegliere la tecnica più opportuna a seconda del tipo di filmato che si
> riproduce? Sempre che non sia un discorso semplice che si può fare anche
> qui...
secondo me ti conviene provare i vari algoritmi per tuo conto, in modo
che dopo un po' di tempo ti fai un'idea delle diverse caratteristiche.
La pagina che ti avevo indicato ( http://www.benis.it/dvd/pal/pal.htm )
e' un buon riferimento sull'interlacciamento, ma essendo scritta alcuni
anni fa non tratta molto dei vari algoritmi che si trovano oggi nei
programmi; un'altra pagina che ti consiglio di consultare e'
http://100fps.com
Credo che il primo "filtro popolare" di deinterlacciamento sia stato
scritto da Donald Graft, che, se non ho capito male, implemento' il
concetto di filtro "area based" o "motion based"; puoi trovare
maggiori dettagli qui:
http://neuron2.net/smart/smart.html
L'idea di base e' questa:
--------------------------------------
This filter provides a smart, motion-based deinterlacing capability. In
static picture areas, interlacing artifacts do not appear, so data from both
fields is used to provide full detail. In moving areas, deinterlacing is
performed.
--------------------------------------
Quindi, questo tipo di filtro ha un "test" (una specie di "edge
detection"), che viene applicato a segmenti di linea delle immagini
del filmato, e che cerca di rispondere a questa domanda: "il segmento
e' parte di scena in movimento?".
Se il test da' risultato negativo, il filtro non tocca quel segmento;
se e' positivo, interviene in qualche modo (tipicamente "miscelando"
il segmento con il corrispettivo della riga adiacente, oppure della
riga successiva all'adiacente; il primo metodo e' detto "blending",
il secondo "interpolating").
Naturalmente il test non e' perfetto, quindi qualche volta sbagliera':
ci saranno falsi negativi (seghettature che non vengono rimosse) e
falsi positivi (dettagli della scena che vengono erroneamente scambiati
per artefatti, e quindi sciupati).
Di solito, chi usa un filtro ha la possibilita' di modificare una
soglia, che modifica i risultati del test.
Sono stati teorizzati (e anche implementati, almeno parzialmente)
anche algoritmi di deinterlacciamento che usano le stesse tecniche
di "motion estimation" che si usano per le compressioni MPEG:
invece di usarle per comprimere, si usano come modello di previsione
del movimento...
Se ti interessa, puoi cercare qualche articolo qui:
http://citeseer.ist.psu.edu/
(tempo fa ci trovai cose interessanti).
Oppure dai un'occhiata anche a questo:
http://www.compression.ru/video/deinterlacing/index_en.html
Questo dovrebbe essere un filtro del tipo che dicevo, ma il
problema e' che gli autori non forniscono molte informazioni
sul loro modello teorico...
> Ma toglimi una curiosità: questa cultura nelle tecniche di codifica
> video te la sei fatta perchè sono cose che hai dovuto studiate per
> lavoro/università o è pura passione da hobbysta?
pura passione da hobbysta :-)
Un paio di anni fa ne sapevo poco o niente... comunque anche adesso
non e' che ne sappia poi molto
> E per quanto riguarda gli mpeg4? Se la sorgente dvd o altro č
> interlacciata si deve procedere con il deinterlacciamento perchč una
> volta encodati si vedano bene sui monitor da PC
si'
> (e sugli schermi
> progressivi in generale) o gli encoder piů diffusi lo fanno in
> automatico e l'utente medio non si occupa di questa ulteriore
> trasformazione?
non so se alcuni programmi lo fanno in automatico, ma di solito
e' l'utente che deve decidere quali filtri video debbano essere
applicati (e in quale ordine), e tra questi c'e' anche il
deinterlacciamento
> Se ti interessa, puoi cercare qualche articolo qui:
> http://citeseer.ist.psu.edu/
> (tempo fa ci trovai cose interessanti).
ad esempio, questi:
http://citeseer.ist.psu.edu/tourapis01advanced.html
http://citeseer.ist.psu.edu/207206.html
http://citeseer.ist.psu.edu/patti99robust.html
http://citeseer.ist.psu.edu/patti98new.html
Anche questo mi pare interessante, non riguarda il deinterlacciamento,
ma proponeva un'ottimizzazione dell'algoritmo di motion estimation di
un encoder MPEG4 (ADZS):
http://citeseer.ist.psu.edu/tourapis00optimizing.html
So che l'encoder di libavcodec usa (di default) un algoritmo che ha
per sigla EPZS
--------------------------
4 EPZS: size=1 diamond, size can be adjusted with the *dia
options (default)
--------------------------
ma non so che differenza ci sia tra queste varianti.