Il Css e il ripping dei DVD su Hard Disk: possibili applicazioni

 


Il Css  1

Software con capacità Decss   

 

La struttura dei DVD

Il ripping: possibili applicazioni

 

I settings di Smart Ripper
I links dei sw citati nell'articolo

Il Css 

Il CSS (Content Scrambling System) è uno schema di criptaggio e autenticazione creato per evitare la copia digitale dei film in DVD , ideato da Matsushita e Toshiba e applicato nella quasi totalità dei DVD video in vendita. 
Il DeCSS di riferisce al processo di attacco al CSS, ed in generale all'operazione compiuta da  tutti quei software che eliminano tale criptaggio quando copiano i contenuti audio-video dei DVD (i file con estensione vob) dal lettore DVD Rom del computer all'hard disk o quando convertono tali video in avi o mpeg prelevandoli direttamente dal DVD (vedi ad esempio il sw FlaskMPEGDecss). 
I file audio-video di estensione vob se letti direttamente dal DVD da sw non in grado di decriptarli (cioè non Decss) sono inutilizzabili perché contengono al loro interno degli errori creati dalla criptatura: al contrario dopo la decriptazione i file vob possono essere correttamente  visualizzati, elaborati e copiati. 

La decriptazione e la conseguente copia dei DVD su HD prende il nome di "ripping": per attuarla basta avere sul proprio PC un lettore DVD-Rom ed uno degli ormai  numerosi sw di "Ripping". 
In inglese i termini "criptato" e "non criptato" sono tradotti in "scrambled" e "unscrambled".

Alla base della presunta sicurezza del CSS c'è, o meglio, c'era la assoluta segretezza di un set principale di 409 chiavi numeriche distribuite in licenza ad aziende di SW e HW che producono lettori di video in formato DVD ; player standalone, DVD-Rom, Player sw per PC.....

Per chiave,  nel caso del CSS si intende un numero a 40 bit, ovvero un qualsiasi numero intero a 12 cifre compreso tra
0 e  1 099 511 627 776, dove l'ultimo numero (circa pari a millecento miliardi) è ovviamente 2^40 (2 elevato a 40)  . Per comodità ciascuna chiave la si esprime in esadecimale tramite 5  gruppi di otto bit (5 byte) ovvero  tramite 10 cifre (es. E7 13 B7 96 4B).

Da notare come la lunghezza di 40 bit deriva dal limite massimo concesso dal governo americano per i metodi di criptatura legalmente riconosciuti: in pratica se il metodo fosse rimasto inviolato,ovvero se tutte le chiavi fossero rimaste segrete, il governo degli Stati Uniti, tramite i propri computer sarebbe in grado in poche ore di trovare a casaccio la chiave giusta, cosa che oggi viene compiuta dai sw di Decss in pochi secondi grazie al fatto che le chiavi segrete sono state rese  note. Al contrario se si fosse usata una chiave a 400 bit, molto probabilmente la decriptatura a casaccio sarebbe durata più dell'intera vita dell'universo !!!!

Tali precauzioni del governo americano, (il limite dei 40 bit sulle chiavi è ovviamente imposto a qualsiasi altro metodo di criptatura, internet compreso ) nascono dalla preoccupazione che all'interno dei messaggi criptati e quindi nel nostro caso nei DVD, possano essere memorizzate in maniera criptata informazioni illegali potenzialmente dannose per i cittadini o a rischio terroristico!!! 

L'unica maniera per poter visualizzare correttamente, elaborare o copiare il video di un DVD è quella di conoscere la chiave giusta per quel disco e di procedere alle opportune correzioni del flusso audio video: ovviamente procedere a casaccio tra millecento miliardi di possibili chiavi è impossibile. Senza tale chiave il video sarà inutilizzabile perché alcuni dei bit dell' mpeg sono appositamente memorizzati in maniera errata ed è possibile correggerli solo se è nota la chiave di decriptatura di quel disco.

Ecco la tipica immagine che appare se ad esempio si visualizza un file VOB  copiato da un DVD sull' Hd del computer e pertanto non decriptato: gli evidenti artefatti derivano dal fatto che il flusso mpeg video è in alcuni bit errato. Poiché il player non può sapere se i dati che legge sono corretti o errati, decodifica il flusso mpeg che trova con i risultati che vedete.

 

Non voglio dilungarmi sul funzionamento del CSS, classico metodo a doppia chiave di criptatura; semplificherò al massimo le sue caratteristiche. 
Nella pratica ogni DVD venduto contiene al suo interno 409 chiavi a 40 bit ciascuna delle quali scritta in funzione di una delle 409 aziende che possiedono una licenza valida. 
Consideriamo l'esempio della decodifica fatta da un lettore Pioneer DV535: il lettore sa di possedere la licenza es. 205 ottenuta dalla Pioneer per i suoi Hw e al suo interno in qualche ROM ha memorizzato la chiave relativa alla licenza 205. (le 409 licenze sono state distribuite gratuitamente in cambio di precise garanzie dall'organizzazione chiamata DVD CCA, facente capo agli "The Studios and Matsushita Engineering, Inc") 

Appena il DV 535 legge il DVD, va a leggere dal disco, la chiave n.205 scritta per quel particolare DVD (che come detto ne contiene in tutto 409) , la combina con la propria chiave n.205 (che ovviamente è sempre la stessa) e ricava la chiave che serve per decriptare e quindi correggerei i dati del video per quel film. Cambiando disco il procedimento si ripete e analogamente si ricava la chiave di decriptatura e si compiono le opportune correzioni.

Un Philips 711 che ad esempio possiede la licenza n.333, legge dal DVD la chiave 333, la combina con la propria chiave segreta memorizzata nel lettore e ricava la chiave di decriptatura per la correzione dei dati di quel disco.

PER OGNI COPPIA DISCO E HW (e quindi licenza) ESISTE UNA CHIAVE CAPACE DI DECRIPTARE CORRETTAMENTE IL DISCO: se il Pioneer DV535 per decriptare il film "Mulan" ricava e utilizza la chiave 88 77 77 88, inserendo lo stesso DVD in un Philips 711 verrà utilizzata un'altra chiave diversa dalla 88 77 77 88. Ovviamente per il Pioneer DV535 la chiave  88 77 77 88 non funziona per altri DVD diversi da Mulan.

Ma perchè 409 chiavi? Il motivo è semplice: se la Philips ad esempio svela o si lascia sottrarre qual'è la chiave segreta n.333 che immortala in tutti i player che produce, oltre che a pagare non so quali o quanti danni perderà i diritti sulla licenza 333. In pratica da quel momento in poi, tutti i DVD prodotti nel mondo non avranno più la chiave 333 e i Philips  diventeranno presto spazzatura. E' per questo motivo che la Philips farà di tutto per nascondere nei propri player la famosa chiave 333. ( ovviamente i numeri che sto dando sulle licenza sono inventati!!!).

Un metodo del genere funziona alla grande poiché se viene svelata una chiave, l'unica cosa da fare è "avvisare" i produttori di video DVD di eliminare tale chiave nei futuri dischi.

Il problema comunque nasceva per i DVD player software per computer che si devono adattare a tutte le 409 chiavi, poiché in un computer è possibile montare lettori DVD-Rom di una qualsiasi marca ( Philips, Pioneer,Yamaha,....) ciascuno con una chiave e licenza diversa. 
Per questo motivo ogni applicazione del pc che deve decodificare i files di un DVD, prima di accederci effettua  la autenticazione del Dvd-Rom, ovvero legge dall'HW del DVD-rom la sua marca e quindi il numero della sua licenza (tra 0 e 408) . Per questo motivo lo stesso film su pc diversi ha una chiave di decriptatura diversa.

Dopo le fortissime pressioni delle software house a cui all'inizio era stato nascosto il set delle 409 chiavi verso la fine di maggio del 1997, le licenze CSS sono state finalmente concesse per la decodifica software. Dopo appena 2 anni e 5 mesi, nell'ottobre del 1999, l'algoritmo CSS è stato violato ed inviato su Internet grazie ad una operazione di ingegneria inversa sul software DVD player della X-ing grazie al quale in un sol colpo sono state svelate le 409 chiavi segrete. Non sto qui a citare i guai che la X-ing ha poi dovuto passare: non a caso dopo tale vicenda, persa la propria licenza,  la X-ing ha abbandonato il mondo dei DVD e si è dedicata alle compressioni audio mp3.

Mi fermo qui aggiungendo solo che in realtà il meccanismo di decriptazione è leggermente più complesso poiché possono esistere chiavi di decriptatura diverse ciascuna relativa ad un capitolo o cella in cui si divide il video di un DVD.

Riguardo poi il tentativo, in realtà fallito , di bloccare la diffusione dei programmi di Decss, riporto quello che è scritto sulle FAQ sul  DVD :

"Poco tempo dopo la comparsa del DeCSS, la DVD CCA ha intentato una causa e ha richiesto una ingiunzione temporanea nel tentativo di evitare che dei siti Web possano inserire (o anche mettere dei collegamenti ! ) le informazioni DeCSS. La richiesta è stata respinta da un tribunale della California il 29 dicembre 1999. Il 14 gennaio 2000 le sette principali case cinematografiche americane (Disney, MGM, Paramount, Sony [Columbia/TriStar], Time Warner, Twentieth Century Fox e Universal), sostenuti dal MPAA, hanno intentato cause in Connecticut e New York in un ulteriore tentativo di fermare la distribuzione del DeCSS nei siti Web di quegli stati. Il 21 gennaio, il giudice della causa di New York ha accordato una ingiunzione preliminare. In ambedue i casi, i giudici hanno dichiarato che l'ingiunzione si applica soltanto ai siti che contengono le informazioni DeCSS, non ai siti che inseriscono i link.  La causa CCA è basata sulla appropriazione indebita di segreti commerciali (alquanto infondata), mentre le cause MPAA sono basate sul raggiro del copyright. Il 24 gennaio 2000, il sedicenne Jon Johansen, il programmatore norvegese che ha diffuso per primo il DeCSS, è stato interrogato dalla polizia locale che ha fatto irruzione nella sua casa ed ha sequestrato il suo computer e il cellulare. Johansen dice che il vero lavoro di pirateria è stato fatto da due programmatori anonimi, un tedesco e un olandese, che si autodefiniscono Masters of Reverse Engineering (MoRE)."

In pratica oggi è possibile trovare ovunque sulla rete i software di decriptazione, che appaiono sempre più complessi e pieni di caratteristiche interessanti: la cosa curiosa è che le diatribe legali sul Decss non sono ancora terminate: attualmente (gennaio 2001) la " District Court in the Southern District of New York " ha intimato, senza però riuscirci, alla rivista on line 2600 Magazine (www.2600.com) di rimuovere ogni link e informazione sui sw e procedimenti di Decss. Ovviamente non riuscendo nell'intento verso un solo sito, il tentativo poi di rimuovere tali informazioni dai tantissimi siti sparsi in tutto il mondo, sembra pura utopia. Oggi a tutti gli effetti i SW Decss sono considerati di fatto legali: a prova di ciò, lo studio di come il CSS è stato violato, è diventato interessante argomento di discussione su noti siti "specialistici", tutt'altro che illegali, sui quali è possibile trovare dettagli tecnici sui vari metodi di Decss: è recente la presenza di un algoritmo Decss super ottimizzato, che è tanto breve da essere stato stampato su di una maglietta, liberamente acquistabile tramite internet.

Se siete interessati, anche solo per pura curiosità, al codice Decss incriminato e alla complessa licenza CSS che viene fornita alle aziende che desiderano acquisire i diritti sulle "chiavi Css", potete scaricare i due documenti qui: css.zip (28 Kbyte) . Vi rimando alla sezione links per ulteriori approfondimenti

In tutti i casi, ecco la tabella delle chiavi violate, dalla quale con un algoritmo neanche troppo complesso è possibile decriptare ogni DVD: è un astruso e freddo elenco di numeri che sarebbe dovuto rimanere segreto ma che ormai è di dominio pubblico. 
Spero di non venire arrestato per averla pubblicata !!!!!! (scherzi a parte la trovate ovunque sui siti che trattano le questioni di criptatura): i curiosi sono accontentati.

const static byte csstab1[256]=
{
0x33,0x73,0x3b,0x26,0x63,0x23,0x6b,0x76,0x3e,0x7e,0x36,0x2b,0x6e,0x2e,0x66,0x7b,
0xd3,0x93,0xdb,0x06,0x43,0x03,0x4b,0x96,0xde,0x9e,0xd6,0x0b,0x4e,0x0e,0x46,0x9b,
0x57,0x17,0x5f,0x82,0xc7,0x87,0xcf,0x12,0x5a,0x1a,0x52,0x8f,0xca,0x8a,0xc2,0x1f,
0xd9,0x99,0xd1,0x00,0x49,0x09,0x41,0x90,0xd8,0x98,0xd0,0x01,0x48,0x08,0x40,0x91,
0x3d,0x7d,0x35,0x24,0x6d,0x2d,0x65,0x74,0x3c,0x7c,0x34,0x25,0x6c,0x2c,0x64,0x75,
0xdd,0x9d,0xd5,0x04,0x4d,0x0d,0x45,0x94,0xdc,0x9c,0xd4,0x05,0x4c,0x0c,0x44,0x95,
0x59,0x19,0x51,0x80,0xc9,0x89,0xc1,0x10,0x58,0x18,0x50,0x81,0xc8,0x88,0xc0,0x11,
0xd7,0x97,0xdf,0x02,0x47,0x07,0x4f,0x92,0xda,0x9a,0xd2,0x0f,0x4a,0x0a,0x42,0x9f,
0x53,0x13,0x5b,0x86,0xc3,0x83,0xcb,0x16,0x5e,0x1e,0x56,0x8b,0xce,0x8e,0xc6,0x1b,
0xb3,0xf3,0xbb,0xa6,0xe3,0xa3,0xeb,0xf6,0xbe,0xfe,0xb6,0xab,0xee,0xae,0xe6,0xfb,
0x37,0x77,0x3f,0x22,0x67,0x27,0x6f,0x72,0x3a,0x7a,0x32,0x2f,0x6a,0x2a,0x62,0x7f,
0xb9,0xf9,0xb1,0xa0,0xe9,0xa9,0xe1,0xf0,0xb8,0xf8,0xb0,0xa1,0xe8,0xa8,0xe0,0xf1,
0x5d,0x1d,0x55,0x84,0xcd,0x8d,0xc5,0x14,0x5c,0x1c,0x54,0x85,0xcc,0x8c,0xc4,0x15,
0xbd,0xfd,0xb5,0xa4,0xed,0xad,0xe5,0xf4,0xbc,0xfc,0xb4,0xa5,0xec,0xac,0xe4,0xf5,
0x39,0x79,0x31,0x20,0x69,0x29,0x61,0x70,0x38,0x78,0x30,0x21,0x68,0x28,0x60,0x71,
0xb7,0xf7,0xbf,0xa2,0xe7,0xa7,0xef,0xf2,0xba,0xfa,0xb2,0xaf,0xea,0xaa,0xe2,0xff
};

I tentativi da parte delle case produttrici di DVD di creare dischi non decriptabili continuano, anche se i margini sulle possibili modifiche e trucchi da applicare per scavalcare "l'intelligenza" dei sw di Decss sono chiaramente limitati dovendo essere garantita la compatibilità con tutti i DVD player: in parallelo continuano gli aggiornamenti dei sw Decss che puntualmente riescono a violare i nuovi metodi di criptatura.

Vediamo in breve i due sw che ritengo in assoluto i più completi e "intelligenti": Smart Ripper e DVDdecripter. La loro superiorità rispetto agli altri sta nella scelta intelligente sul metodo da usare per la decriptazione : quello utilizzato dal sw DeCSSPlus o il metodo utilizzato da  VobDec. Sempre rispetto agli altri Decss sono numerose le opzioni disponibili.

Prima di vedere delle possibili applicazioni, è importante chiarire come tramite questi sw è possibile un utilizzo illegale del video copiato: rimane la mia ferma convinzione che chi desidera arricchirsi illegalmente non ha certamente bisogno degli articoli del mio sito !!! Tali soggetti ovviamente non dovranno dar conto a me dei loro reati, ma alle loro coscienze e alla legge che è punisce penalmente chi utilizza e crea copie a scopo di lucro.

Al contrario, le applicazioni che ritengo legittime sono tantissime: un esempio tra tanti la classica copia in SVCD del DVD della Disnay, da consegnare al proprio figlio o nipotino, per preservare l'originale pagato 59000 lire da graffi, pestaggi ... e ditate alla nutella!!!! Seguono applicazioni "al limite dell'illecito", tipo memorizzazione su HD di un film noleggiato, per avere poi tutto il tempo per vederlo ed eventualmente per convertirlo: anche in questo caso non mi sento ne di condannare e ne di assolvere al 100% un atteggiamento direi così al limite. 
Personalmente i film che ritengo interessanti e degni di essere visti più di una volta, li acquisto in DVD; per gli altri il noleggio ( o il prestito da amici) basta e avanza !!!

 


Software con capacità Decss

Smart Ripper

 DVD Decripter
 FlaskMpeg Decss

 Vstrip 

DVD2AVI 

I software che contengono al loro interno algoritmi di Decss sono tantissimi: alla base di tutti ci sono i due programmi pionieri del Decss: il nativo  sw DeCSS e VobDec . Tali sw utilizzano metodi diversi per la ricerca della chiave e i nuovi sw di Decss utilizzano automaticamente entrambi gli algoritmi per ottenere la chiave corretta.

Tra i sw dotati di capacità Decss presenti sulla rete ecco i miei preferiti il cui uso sarà descritto nel proseguo dell'articolo : per scaricarli una serie di links li trovate nella sezione relativa. Osservo come i sw che sto per elencare sono in continuo aggiornamento da parte dei loro autori : i 2 sw che consiglio sono  Smart Ripper e DVD Decripter. 

Smart Ripper

Software di ripping: permette la decriptazione e copia su HD di interi DVD, singoli vob, capitoli o celle. Attua l'autenticazione del DVD-rom all'avvio. 

Dotato di capacità di elaborazione dei file vob: eliminazione di flussi indesiderati, Demacrovision  e demultiplexing dei singoli contributi. 

Numerose informazioni sul contenuto dei vob: lingue, durate, struttura dei capitoli, bitrate,......

Per la installazione di Smart Ripper.exe basta semplicemente copiare il file SmartRipper.exe in una directory.

NB: le caratteristiche di cui parlo nell'articolo sono relative alle versioni 2.25 e successive: le versioni precedenti alla 2.23  hanno problemi sull'autenticazione del DVD-Rom e pertanto sono INUTILIZZABILI su molti sistemi. 

 DVD Decripter

Software di ripping, più semplice di Smart Ripper: permette la decriptazione e copia su HD di interi DVD o singoli vob. Attua l'autenticazione del DVD-Rom all'avvio. 

Tra le capacità di elaborazione è possibile il demultiplexing ma solo a livello di vob.

Come per Smart Ripper.exe non esiste una vera e propria procedura di installazione: basta semplicemente copiare i file (DVDDecrypter.exe Dodsrip.exe ) in una directory che può essere anche la stessa di Smart ripper.

 

 FlaskMpeg Decss 

Software di conversione dei DVD e in generale file VOb, Mpeg1 e 2 in file AVI o Mpeg 1/2 grazie alla compatibilità con i plug-in per Premiere.

Le capacità Decss sono presenti solo in alcune versioni o tramite il  plug-in css.mism.flask  nella versione 06. Tramite tali capacità è possibile fare delle conversioni direttamente da DVD-Rom senza decriptare preventivamente il DVD su Hd.

Un approfondimento sulle diverse versioni lo trovate nell'articolo Le diverse versioni di FlaskMPEG: velocità reali, opzioni iDCT, errori, caratteristiche e confronto con i metodi alternativi

Tra le versioni di Flaskmpeg dotate di caratteristiche Decss esistono 2 modi per accedere ai DVD criptati: il primo è quello automatico in cui la chiave è ricavata direttamente e in maniera trasparente all'utente (non sono comunque rari i casi in cui tale riconoscimento fallisce!!); l'altro consiste nel fornire manualmente la chiave che deve essere ricavata tramite DVD Decripter o Smart Ripper inserendo ovviamente lo stesso DVD. 

Dopo aver indicato all'interno di Flaskmpeg il file *.ifo da decriptare occorre inserire nella finestra  che appare la chiave relativa a tale disco.
Osservo come la chiave contiene valori numerici esadecimali, 0,1,2,...9,A,B,C,D,E,F e pertanto attenzione a non confondere la cifra 0 (zero) con la lettera o che ovviamente non centra niente!!  

Tutte le versioni ufficiali di Flaskmpeg (compreso quella presente su sito ufficiale  http://go.to/flaskmpeg  http://flaskmpeg.sourceforge.net ) possono decodificare e convertire solo DVD non criptati ( la quasi totalità dei DVD in vendita nelle edicole ed eccezioni quali "Die Hard 3" e "Al di là dei sogni" e "Casper: il film") o ovviamente DVD rippati su HD.

 

 VStrip

Software di ripping e analisi, molto simile a Smart Ripper come caratteristiche ma leggermente meno intuitivo. E' disponibile in modalità Dos o è utilizzabile con una interfaccia grafica. 

 DVD2AVI

Software di decodifica mpeg2 (DVD, SVCD, ...) capace di creare avi virtuali e di rendere qualsiasi SW di editing o compressione video, compatibile in lettura con l'mpeg2. La capacità Decss è ottenibile tramite un plug-in esterno, non fornito con il pacchetto ufficiale.

Per approfondimenti, vi rimando all'articolo che ho scritto, dedicato a tale SW.

 


La struttura dei DVD

 

Prima di continuare vorrei ricordare brevemente come è strutturato un DVD video: per elencare con precisione tutte le diverse possibilità occorrerebbe un articolo intero; cercherò di essere il più sintetico possibile.
In breve dal punto di vista dell'organizzazione dei propri contenuti, questi  sono suddivisi in
titoli ciascuno dei quali coincide con una sezione indipendente; il primo filmato o schermata che appare dopo l'inserimento del disco, il film principale, il menu principale, il menù degli inserti speciali, i trailers, i Making off,........: i titoli sono collegati tra loro tramite le scelte nella navigazione dei menù da parte dell'utente o in altri casi in maniera automatica (il classico susseguirsi forzato della schermata introduttiva con il menù principale o l'inizio del film)

Molti dei titoli sono poi divisi in capitoli (lo è sempre il film princiale e in certi casi anche alcuni inserti speciali), tra i quali ci si sposta con il telecomando reale o virtuale del lettore. In certi casi ciascun capitolo è suddiviso in una o più celle che sono però "invisibili" all'utente (non esiste sul telecomando l'avanzamento per cella): le celle sono utilizzate per cose più complesse quale il multiangolo, il film in versioni alternative....

Se invece osserviamo come sono organizzati i diversi contributi sul DVD, questi sono memorizzati nella Directory Video_ts ed esistono 3 tipi di file: i *.VOB, i *.IFO e i *.BUP.

I file *.VOB sono gli unici che possono essere criptati e che quindi vanno decriptati per essere visualizzati correttamente ; i VOB contengono i flussi video mpeg2, audio, sottotitoli e le informazioni di sincronizzazione di tali contributi. Per l'esattezza si parla di contributi multiplexati nel file vob.

I file *. IFO, che non sono mai criptati, contengono le informazioni su come i vari VOB devono essere trattati e contengono al loro interno tutta "l'intelligenza" dei DVD: la possibilità o meno di scegliere le lingue, i sottotitoli, le informazioni relative ai menù su come passare da un contributo video al successivo, ......

Ciascun file IFO contiene un file assolutamente identico con lo stesso nome ma con estensione BUP, che viene letto dal lettore nel caso in cui il corrispondente IFO, per un problema di disco risulta danneggiato: un bit sbagliato su di un VOB può causare un errore di visualizzazione invisibile; al contrario un analogo errore su un IFO può rendere i DVD inutilizzabile. Tali copie di backup sono inserite anche grazie al fatto che gli IFO e i BUP occupano pochissimo spazio.

Vediamo con un esempio pratico come sono legati tra loro i diversi contributi: consideriamo il film "Al di là dei sogni" che per la cronaca per quanto mi risulta è uno dei pochi film distribuito dalla Major a NON essere criptato con il Css !!!!

Tale DVD contiene oltre al film, una sigletta introduttiva della Universal, una schermata iniziale per la scelta della lingua dei menù, un trailer, un servizio speciale (intervista agli attori) e la consueta serie di menù per la scelta dei capitoli, sottotitoli, trailer,......

All'interno della directory Video_ts ogni DVD contiene  la tripletta Video_ts .ifo, bup e vob che contengono le prime informazioni relative alla struttura dell'intero DVD, regione compresa: Video_ts.ifo e Video_ts.vob sono caricati dal player all'inserimento del DVD nel player e automaticamente forzano la lettura del primo contributo video che è normalmente un filmato introduttivo o la scelta della lingua dei menù o il menù principale o in certi casi l'insieme di uno o più trailers pubblicitari (vedi gli ultimi Disney). Se provate a decriptare (copiandolo su HD tramite un SW di Decss) e a visualizzare il Video_ts.vob tramite un player,  spesso non vedrete nulla poichè normalmente tale vob non contiene nessun filmato.

Curiosando tra i video_ts.vob di alcuni DVD ho scoperto che ci sono dei casi in cui tali VOB contengono come contributo video un mpeg2 composto da un solo fotogramma che non viene mai visualizzato: ecco cosa ho scovato nel video_ts.vob del film Disney Bug life: 

il logo SPRUCE TECHNOLOGIES, del sw utilizzato per realizzare l'authoring del DVD !!!!!!!!

Continuiamo nella analisi dei file:

Se si elimina la tripletta Video_ts .ifo, bup e vob tutti gli altri file sono divisi in gruppi Vts_XX_Y: nell'esempio Vts_01, Vts_02 e Vts_03. (a destra vedete cosa contengono tali gruppi di file vts, schermata presa dal sw Smart Ripper)

Consideriamo il gruppo dei file Vts_01 che nel nostro caso contengono il film e l'insieme dei menù principali: è strutturato così;          

Vts_01_0.ifo   Le informazioni riguardo la struttura del film e dei menù del DVD
Vts_01_0.bup   Copia di backup del file Vts_01_1 .ifo
Vts_01_0.vob  L'insieme delle schermate fisse ed eventualmente animate dei menù + audio
Vts_01_1 .vob
Vts_01_2 .vob
Vts_01_3 .vob
Vts_01_4 .vob
Vts_01_5 .vob
 Il film: è suddiviso in 5 file separati la cui massima dimensione  è
 di 1 073 741 824 byte (1024*1024*1024).
 I file non sono divisi secondo una vera logica , poichè il flusso audio_video viene a tutti gli effetti  visto come un unico file.

I VOB contengono multiplexati i contributi video, audio (tutti i flussi audio disponibili), i sottotitoli e i codici di temporizzazione e sincronismi.

Gli altri VTS (Vts_02 e Vts_03) sono strutturati nella medesima maniera; ovviamente se il contributo video non supera i 1 073 741 824 byte non sarà suddiviso in più vob.

Normalmente il film è contenuto nel gruppo Vts_01, ma  non mancano le eccezioni:

nel DVD "IL SESTO SENSO" ad esempio il film è contenuto nel gruppo VTS_23: basta dare una occhiata alla dimensione dei file ed è facilissimo trovare i Vob corrispondenti al film che normalmente occupa almeno 4 file da circa 1 Giga (1073565696 nell'esempio).

Normalmente tra tutti i Vts_XX_Y.ifo, quello relativo al film è caratterizzato dalla dimensione maggiore.

Rimane da vedere il legame che c'è tra i diversi file e i titoli contenuti nel DVD: a questo viene in aiuto il SW Smart Ripper che nell'esempio visto di "Al di la dei sogni" da la seguente visualizzazione.

Il gruppo di file VTS_01 contiene il film contenuto nel titolo 1 la cui durata è di 1 ora 48 minuti e 44 secondi: i titoli 2 e 3 contengono altro materiale diciamo "di passaggio" (normalmente anche una singola immagine fissa tipo l'elenco dei doppiatori nelle diverse lingue, contributo ovviamente non presente sulla pellicola originale, immagine che è bloccata per un fissato numero di secondi grazie all'intelligenza memorizzata nel corrispondente file *.ifo : è per questo motivo che Smart Ripper indica una durata pari a 00:00:00 ).

Il gruppo VTS_02 contiene il breve documentario del film (5:52) e il trailer (2:18) divisi rispettivamente nel titolo 1 e 2 di tale gruppo.

Conclude il gruppo VTS_03 che contiene la sigletta della "Universal".

Ovviamente NON è possibile sapere da Smart Ripper cosa contiene ogni singolo titolo: la durata indicata è un chiaro indizio del tipo di contributo, e decriptato il vob relativo è possibile visualizzarlo e controllare a vista. (inoltre i player hanno la possibilità di forzare la visione di un particolare titolo)

 

 


IL ripping: possibili applicazioni

Decriptazione dell'intero DVD su HD e successiva visualizzazione

Decriptazione e successiva conversione in altri formati: SVCD, XVCD, DivX;-)...

Decriptazione e utilizzo di un singolo VOB o di una sua parte.

Visualizzazione di un singolo vob o capitolo

Estrazione dei soli contributi video (mpeg2) o audio (ac3)

Conversione ac3--->Wav 44100 16 bit Stereo

 

Ricerca della chiave di decriptazione

 

Prima di elencare delle possibili applicazioni, mi preme ricordare lo spazio massimo occupato da un DVD

 DVD-5      SS/SL  4.38 GByte (4.7 G)   4 700 000 000 byte
 DVD-9      SS/DL  7.95 GByte (8.5 G)  8 500 000 000 byte
 DVD-10    DS/SL  8.75 GByte (9.4 G)  9 400 000 000 byte
 DVD-18    DS/DL  15.90 GByte (17 G)  17 000 000 000 byte

Gran parte dei DVD oggi in commercio sono DVD-5 e sopratutto DVD-9 : gli altri due casi li si deve praticamente considerare come due DVD distinti;  un leggero incremento dei costi di produzione e lo stupido fattore psicologico "due DVD-9 sono meglio di un DVD-18", ha fatto si che i DVD-10 e 18 sono più unici che rari.

Visti gli spazi occupati, fino a poco tempo fa era impossibile avere a costi ragionevoli HD capaci di "ospitare" copie di DVD; oggi invece gli HD capienti 30 GB stanno diventando la norma e il costo dei 45 GB sta scendendo rapidamente. Dati alla mano un HD da 45 Gb può parcheggiare tranquillamente 5 DVD-9 !!l

Per i "pirati" incalliti voglio ricordare come attualmente la pratica illegale di copiare interi DVD su DVD-R è fattibile solo in certi casi ma assolutamente sconveniente: non esistono attualmente DVD scrivibili aventi capacità superiore ai DVD-5 e per motivi tecnologici e di guerra alla pirateria penso verranno realizzati solo nei prossimi anni. Attualmente se i DVD 5 possono essere copiati grazie alla decriptazione sui costosissimi DVD registrabili (il cui costo si aggira sulle 50 000 lire), per i DVD-9 occorre addirittura rifare l'authoring del film dividendo il tutto su 2 DVD registrabili.

E' ovvio che il mantenimento dei prezzi elevati dei DVD scrivibili in parallelo ad una graduale diminuizione dei costi dei DVD in vendita sono l'unica arma sicura per combattere la pirateria. E' comunque scontato che parlando di copie di materiale digitale sono in presenza di veri cloni: copie perfettamente identiche agli originali.


 Decriptazione dell'intero DVD su HD e successiva visualizzazione

La prima applicazione che esamino, molto dispendiosa in termini di spazio è la decriptazione dell'intero DVD su HD e visualizzazione di questo tramite un player software dall' Hard disk invece che dal DVD-rom.

Per far ciò occorre avere lo spazio libero necessario su HD, un lettore DVD-Rom da cui fare la copia,  un sw di Ripping, un player SW capace di visualizzare film da HD ( ho provato WinDVD 2000 che funziona sempre e il Cinemaster 99 che in solo rari casi si blocca).

I motivi di una tale operazione possono essere diversi (non mi pronuncio sulla legalità o meno della cosa):

- comoda visione di un film che si è noleggiato o avuto in prestito e che pertanto deve essere restituito.
- copia del film (DVD-5) su DVD registrabile magari dopo averlo trasformato in "region free" (ad esempio l'originale  è un Regione 1 incompatibile con il proprio lettore) e aver eliminato la protezione macrovision che ricordo in certi rari casi disturba la normale visualizzazione (oltre che impedire le copie analogiche)
- conversione in XVCD, SVCD, DivX;-) o in generale in AVI o WMV tramite software quali DVD2AVI o le versioni non DECSS di flaskmpeg.

Il procedimento è semplice: utilizziamo ad esempio  il sw Smart Ripper . Dopo aver inserito il DVD nel lettore DVD-Rom, basta selezionare Rip-Method/Files
Selezionare tutti i file presenti sul disco

Creare su HD una directory con il nome Video_ts e poi selezionararla come in figura 

Se lo spazio libero a disposizione su HD è sufficiente apparirà il pulsante Start e si potrà avviare il ripping.

Stessi risultati se si sceglie l'opzione Backup (in tal caso non è possibile escludere nessun file)

A operazione ultimata , sempre nelle ipotesi in cui si è rippato il DVD nella directory Video_ts, è possibile visualizzazzare il film con un player che è in grado di operare su file presenti su HD: ho testato WinDVD 2000 con successo mentre con il Cinemaster 99 delle volte il programma non "aggancia" le corrette traccie. Niente da fare per il PowerDVD 3

Per utilizzare il cinemaster basta semplicemente eseguirlo, poichè tale sw visualizza sempre il film presente nella prima directory video_ts che trova in ordine crescente di drive: c: d: e: f: g:,...... per poter poi  leggere un film dal DVD-Rom occorrerà rinominare la directory Video_ts con un nome diverso (tipo d:\BAK_Video_ts).

Per utilizzare WinDVD 2000 si deve andare in  Proprietà/generale e se è presente su HD una directory video_ts è possibile selezionare  l'HD come "sorgente video": nel caso dell'esempio in cui ho memorizzato il film nella partizione D: ho selezionato tale lettera.

 


Decriptazione e successiva conversione in altri formati: SVCD, XVCD, DivX;-),...

Una secondo possibile utilizzo del ripping è quello di decriptare e copiare il materiale  presente sul disco per poi convertirlo in un altro formato quale il SVCD, XVCD, DivX;-) o altri  tramite:
1) versioni di Flaskmpeg che non contengono al loro interno il modulo Decss (tra queste tutte le versioni "ufficiali " e quindi legali).
2) i film per i quali le versioni  FlaskmpegDecss producono risultati errati o vanno in crask.
3) utilizzo del sw DVDtoAvi  che richiede esplicitamente i vob decriptati
su HD.
4) utilizzo di tutti quei sw normalmente freeware che stanno nascendo come funghi sulla rete e che in forma diversa operano conversioni partendo dai file vob.

I metodi da utilizzare sono decritti nelle pagine della sezione Digital Video.

Nell'ipotesi in cui si vuole decriptare solo il film e per risparmiare spazio si vuole rinunciare al ripping degli altri filmati (trailer, dietro le quinte,...) occorre ovviamente procedere come visto sopra: l'unica differenza sta nel fatto che occorre identificare e poi selezionare qual'è il gruppo di vts relativo al film. Normalmente questo è il VTS_01 ed è  quello che contiene i VOB che occupano in genere almeno 3-4 Giga; in tutti i casi utilizzando Smart Ripper basta osservare le durate associate  ai vari VTS per fugare ogni dubbio. Nell'esempio qui sotto, il film avente la durata di 1:48:44 (109 minuti) è contenuto nel vts_01

Osservo come Flaskmpeg richiede che sia copiato anche il relativo file IFO dal quale preleva le informazioni sulle caratteristiche del video: 

Per iniziare la conversione di un DVD con Flaskmpeg occorre infatti selezionare il file *.IFO relativo al video che si vuole convertire (normalmente Vts_01_0.ifo tranne rare eccezioni )
Con Smart Ripper, il metodo più semplice per copiare solo il film è quello di settare l'opzione Files 

e dopo aver identificato il VTS da rippare , (vts_01 nell'esempio) occorre
 selezionare tutti i file che iniziano per VTS_01, come in figura
 

Attenzione ad includere anche
il relativo VTS_XX.ifo.

Dopo aver scelto la directory su cui copiare il film , se c'è sufficiente spazio libero nell'HD, si può iniziare la decriptazione e pertanto la copia su HD cliccando su

 


Decriptazione e utilizzo di un singolo VOB o di una sua parte.

Un'altra possibile applicazione è quella di decriptare un intero vob o una sua parte (tipo un capitolo o una cella), per poi visualizzarlo singolarmente e/o elaborarlo liberamente: ottenuto un file vob sarà poi possibile ad esempio estrarre i contributi audio o video (ed eventualmente poi convertirli in altri formati), utilizzarlo per creare una collezione di video preferiti su CD-R o anche per realizzare un proprio MiniDVD con tanto di Menù e capitoli (utilizzando un sw di authoring). Le elaborazioni possibili sono tantissime: io da patito di computer grafica sto estraendo alcune sezioni di video per realizzare la mia personale collezione di scene in CG: dai dinosauri di Jurassic Park al Titanic in computer grafica, passando per la  memorabile creatura d'acqua di Abyss. Ovviamente all'occorrenza si devono utilizzare altri software per montare o estrarre  spezzoni ancora più piccoli... ma questo discorso prescinde dall'articolo che state leggendo.... e mi fermo qui.

Riguardo l'audio è possibile sia realizzare delle "compilation" di musiche in formato ac3 (sw quali WinDVD 2000 e PowerDVD3 sono i grado di decodificare flussi ac3 ed eventualmente inviarli ad un amplificatore multicanale), e sia fare una conversione ac3---> WAV PCM 16 bit stereo 44100 per poi eventualmente creare dei normalissimi CD audio stereo.

Vediamo in pratica come procedere.


Visualizzazione di un singolo vob o capitolo 

Uno dei problemi più grossi legati all'estrazione di un vob o di un suo pezzo, sta nel fatto che quando viene visualizzato tramite sw quali Windvd o PowerDVD, spesso non si riesce ad ascoltare l'audio o in tutti i casi ci si deve accontentare di quello originale. Altre volte sono sovraimpressi i sottotitoli senza possibilità di escluderli e il video appare a scatti. 
Il motivo è semplice: ciascun Vob contiene al proprio interno multiplexati i diversi contributi: le diverse lingue audio, il video, i sottotitoli ed eventuali altri flussi. 
Il DVD player, quando è utilizzato per visualizzare un film in DVD, in base alle scelte fatte quando si naviga tra i menù del DVD (certe impostazioni sono comunque di default) sceglie di decodificare un particolare video, una lingua audio ed eventualmente i sottotitoli.
Se al contrario si visualizza tramite un DVD player un singolo vob "rippato" da un DVD, il player non avendo indicazioni sui flussi audio e video da mostrare, in maniera più o meno arbitraria cerca di utilizzare i primi flussi che trova con risultati che variano di volta in volta: riguardo l'audio o non viene decodificato nulla o viene utilizzato il flusso ac3 0X80. A volte il video procede a scatti poiché il player ha difficoltà ad organizzare i flussi da decodificare ed impiega parte della potenza di calcolo del processore per operazioni quali sincronismo audio - video, buffer dei dati,......

Per ovviare al problema occorre creare un nuovo vob che contenga il flusso video 0xE0 e il flusso audio ac3 0X80. (sto ipotizzando un vob con audio ac3). Per far ciò occorre un sw che nella creazione di un nuovo vob non solo riesca a scartare i flussi inutili (le altre lingue audio, i sottotitoli...) ma che rinomini il flusso audio desiderato (normalmente la traccia ac3 in italiano) nel flusso 0X80. Si dice in gergo "rimappare" la traccia audio nella traccia 0x80.

Il Vob ottenuto è così visualizzabile da qualsiasi DVD player per PC in maniera perfettamente analoga ad un file avi, ma con la qualità video e audio del DVD.

I due sw capaci di fare ciò sono Smart Ripper e Vstrip: consiglio Smart Ripper tutte quelle volte in cui voglio creare direttamente su HD un vob con le caratteristiche viste (video + 1 flusso audio compatibile con i DVD player ) facendo una conversione diretta DVD-Rom---> Vob modificato; Vstrip viene in soccorso tutte quelle volte che  dispongo di un file vob completo su HD (magari presente sull'HD da una vecchia operazione di ripping) che voglio modificare nella stessa maniera. L'esistenza di un "metodo alternativo" è sempre comoda per ovviare ad eventuali incompatibilità di Smart Ripper con certi VOB).

Desidero ad esempio estrarre il terzo capitolo del film "Star TreK primo contatto", (è il capitolo che inizia con una lunga inquadratura della  Enterprise-E  nello spazio) e creare un file vob che contenga il video e la traccia italiana. Dopo aver caricato Smart Ripper e selezionata la modalità "movie"
seleziono il film (VTS_01/ title 1/angle1) e il solo capitolo 3 come in figura (tramite all e none è possibile selezionare o deselezionare tutti i capitoli) e la cella 1 (normalmente ogni capitolo è formato da una singola cella)

Osservo come anche in questo caso il film corrisponde al VTS_01.
Smart Ripper fornisce le caratteristiche del video selezionato: lunghezza, dimensione, inizio e fine dei blocchi logici in cui è memorizzato il capitolo sul disco (LBA start  - LBA stop utilizzabili in certi sw di elaborazione di Vob), bitrate Massimo , minimo e medio. 

Selezionando Stream processing sono indicati tutti i flussi (audio, video e sottotitoli) multiplexati nel vob che si è selezionato.

Prendo nota del fatto che la traccia italiana è la 0X83, cosa che può servire se desidero elaborare il vob con altri software (vedi ad esempio il metodo alternativo con Vstrip). Osservo come  sono sempre indicati 8 stream audio gli ultimi dei quali, indicati come Audio English, sono vuoti. Nell'esempio l'ultima traccia audio è l'italiana 0X83. 
  
Se
deseleziono enable Stream Processing ( come in figura ) nel momento in cui si clicca su viene rippato su HD il/i vob selezionato senza alcuna elaborazione; come detto, se visualizzo tale vob  avrò molto probabilmente audio inglese e video a scatti.

Se seleziono enable Stream Processing ( come in figura ) è possibile elaborare il vob.

Per ciascuno dei flussi elencati e in maniera indipendente dagli altri è possibile:

- ignorare o elaborare il singolo flusso (per utilizzare il flusso indicato occorre selzionarlo )
- inserire il flusso nel Vob da creare (Direct Stream copy) ed eventualmente rimapparlo (Map to)
- Demultiplexare il flusso creando ad esempio un file ac3 o mpeg video (Demux to extra file)
- Inserire il flusso
in un'altro VOB ed eventualmente rimapparlo (Extract to new vob)

Come esempio  partendo dal vob in figura, con una sola operazione è possibile contemporaneamente creare un vob contenente il video e audio italiano rimappato da 0x83 a 0x80; creare un file ac3 con audio inglese; creare un altro VOB con nessun video (video nero) e audio francese rimappato . Per fare ciò basta indicare per ciascun flusso presente il "trattamento" da avere. 

Nel nostro caso per creare un vob con video + audio ac3 italiano rimappato 0x80 occorre;
- deselezionare tutti i flussi

- selezionare , evidenziare il flusso 0xE0 Video Pal ... e a destra  settare 
- selezionare , evidenziare il flusso 0x83 audio italiano....... e a destra settare 

Dopo aver scelto la directory su cui creare il vob , si può iniziare la elaborazione e copia su HD cliccando su . Il vob creato conterrà video e traccia ac3 italiana impostata come audio principale (0x80). 

Il file ottenuto nel mio sistema è decodificato correttamente da WinDVD2000 v2.3 , PowerDVD3 e dalla Creative DXR-2: l'unico problema può essere quello del mancato riconoscimento del formato anamorfico che si verifica con WinDVD; per ovviare occorre deselezionare in proprietà/visualizzazione l'opzione "blocca proporzioni"

  e ridimensionare la finestra nel formato corretto.

 


Nel caso in cui desidero ottenere lo stesso risultato su di un vob ad esempio già presente su HD, il mio consiglio è di utilizzare il sw Vstrip.

Il metodo che propongo è immediato, e può essere eseguito sia "a linea di comando" (modalità DOS) e sia tramite una interfaccia grafica.

Il programma da utilizzare è vStrip che trovate nel mio sito vstrip.zip (331 KB) ; per gli aggiornamenti vedi la sezione links . Non occorre alcuna installazione; basta decomprimere i file presenti in vstrip.zip in una directory.
Il software in modalità grafica, è dotato di capacità Decss ; è quindi anche in grado di fare elaborazioni di vob direttamente presenti su DVD-Rom, esattamente come Smart Ripper.

Vediamo prima come procedere in modalità "Dos - linea di comando"

Ipotizzo di aver rippato e quindi copiato su HD il file vts_01_1.vob nella directory es. appoggio; tale vob,  il terzo capitolo del film "Star TreK primo contatto" contiene tra le varie tracce audio quella italiana che è il flusso 0xbd 0x83.

Per elaborare il file occorre :

1) copiare il programma vStrip.exe  nella directory appoggio

2) posizionarsi in tale directory e scrivere nella sezione "indirizzo"

vStrip vts_01_1.vob -!onuovo.vob 0xe0 0xbd 0x83 =0x80 

e poi premere "invio". Sarà prodotto così il file nuovo.vob che potrà poi essere visualizzato correttamente e con audio italiano con un  qualsiasi player per PC compatibile con i vob.

E' fondamentale non lasciare spazi vuoti dopo -!o ( punto esclamativo e lettera "o" non numero "0" zero) 
va bene
-!onuovo.vob  mentre NON va bene -!o nuovo.vob 

Altra cosa importante: attenti agli spazi anche nella sintassi 0x83 =0x80 in cui lo spazio  va inserito dopo il primo numero: non vanno bene
0x83=0x80 e neanche 0x83= 0x80 ma solo  0x83 =0x80

La sintassi è: vstrip a cui segue il nome del vob da convertire e   -!o a cui segue attaccato alla o il nome del file da creare. Seguono 0xe0 che indica il fatto che si vuole estrarre  il flusso video e 0xbd 0x83  che invece indica che si vuole estrarre il flusso audio ac3 0X83. 
Ovviamente in base a quanto indicato da smart ripper

se volessi lasciare solo l'audio francese avrei dovuto scrivere 
vStrip vts_01_1.vob -!onuovo.vob 0xe0 0xbd 0x82 =0x80 mentre per l'audio spagnolo 
vStrip vts_01_1.vob -!onuovo.vob 0xe0 0xbd 0x81 =0x80

L'opzione  0x83 =0x80 indica di rimappare il flusso 0x83 (l'italiano in questo caso) nel flusso 0X80 che è quello principale, l'unico che i player per PC sono in grado di far ascoltare.

Pertanto se si vuole estrarre solo l'audio 0x80 i non serve inserire tale opzione ma basta 
vStrip vts_01_1.vob -!onuovo.vob 0xe0 0xbd 0x80


Vediamo come procedere in modalità grafica: cerchiamo di ottenere la elaborazione
vStrip vts_01_1.vob -!onuovo.vob 0xe0 0xbd 0x83 =0x80 
che come visto crea un vob con video (0xe0) e audio ac3 0x83 mappato come primo flusso audio (= 0x80).

In modalità grafica è possibile facilmente avere i file (vstrip, il vob di origine e il vob di destinazione) in directory diverse senza alcuna complicazione nel digitare i parametri..

Eseguito il programma vStrip_gui.exe, basta andare in input/Add 
 

e caricare il vob di origine (nell'esempio il file vts_01_1.vob). E' possibile (facoltativamente) cliccare su per vedere elencati i diversi flussi presenti nel vob.
Come seconda operazione, si deve selezionare output e indicare il nome del vob da creare , nel nostro caso nuovo.vob 

Come ultima operazione si devono selezionare i flussi da inserire nel vob che si vuole creare: conviene in ordine procedere così:
- Deselezionare tutti i flussi disponibili (audio, video, sottotitoli,...) cliccando su None
- Con SubStreams DESELEZIONATO , cercare e selezionare il flusso 0xE0 (video stream 0) come in figura: verificare che a destra nella colonna "remap to"  si evidenzi  0XE0  
- Con SubStreams SELEZIONATO , cercare e selezionare il flusso audio da inserire (nell'esempio 0x83 ) : come visto è importante rimappare tale flusso in 0X80 per garantire la compatibilità con i player DVD; per fare ciò occorre subito dopo cliccare su  0x80 nella colonna (remap to) a destra. 


 

Per avviare la conversione, verificare che i parametri siano come in figura

e click su  

Ovviamente con vStrip è possibile fare altro; accenno solo al fatto che grazie alle caratteristiche di Decss si può operare direttamente sui file del  DVD senza bisogno di decriptarli su HD (occorre solo preventivamente autenticare il lettore, visualizzando per qualche secondo il DVD con  un qualsiasi player SW o eseguendo DVD Ripper o Smart Ripper dotati di capacità di autenticazione).

Pertanto ad esempio è validissima una conversione diretta da DVD in cui il vob d'origine è presente su DVD-Rom;

Segnalo la comoda opzione per dividere il vob in celle; in pratica ogni capitolo è inserito in un vob diverso; tramite "demux" è possibile suddividere i flussi audio e video selezionati in file separati.

Riporto le opzioni possibili in modalità "dos", gran parte delle quali è utilizzabile in modalità grafica.

Usage:
vStrip [@]In [-Options] [[=]IDs]

In denotes the input-file and has to be the first argument. If a '@' is prepended to the name, it is read as a streamlist (textfile).

Options:
-! defaults to strip everything,
-d enables demux mode (not producing a VOB anymore),
-g only keeps GOP-Headers of the Video-Stream(s),
-l lists the CELL-Positions parsed from the IFO-file,
-c splits the VOB by CELL-ID,
-v splits the VOB by VOB-ID,
-oO sets the output filename to O (add '+' in front to append),
-iP sets the IFO-file filename to P,
-pQ selects program-chain (PGC) Q (from IFO-file) and enables IFO-Parsing,
-$R splits output-file(s) after R megabytes (1024KB chunks),
-aS changes the aspect-ratio to S,
-fR changes the frame-rate to T,
-sU seeks to LBA U (2048 byte sectors),
IDs hex stream-ids (e.g. 0xe0), seperated by a space. If a '=' is prepended to the id, the last stream is remapped to this id.

Hints:
- Demux mode can split, too (but "c" and "v" are exclusive),
- All the options w/o an argument can be combined (e.g. "-!dc")
- Try a test-run on the VOB first (only filename as parameter),
- Frame-rates:
[1] 23.976 (24000/1001) fps [NTSC encapsulated film rate],
[2] 24 fps [Standard international cinema film rate],
[3] 25 fps [PAL (625/50) video frame rate],
[4] 29.97 (30000/1001) fps [NTSC video frame rate],
[5] 30 fps [NTSC drop-frame (525/60) video frame rate],
[6] 50 fps [double frame rate/progressive PAL],
[7] 59.94 (60000/1001) fps [double frame rate NTSC],
[8] 60 fps [double frame rate drop-frame NTSC],
- Aspect-ratios:
[1] square pixels,
[2] 4:3 display,
[3] 16:9 display,
[4] 2.21:1 display,

Examples:
To get a list of the streams in a VOB:
vStrip in.vob

To keep video and AC3 stream 0x81 mapped to 0x80 using PGC 0 and 1GB chunks:
vStrip @in.lst -iin.ifo -p0 -$1024 -!oout.vob 0xe0 0xbd 0x81 =0x80

To demux the video-stream:
vStrip in.vob -!doout.m2v 0xe0

 


Estrazione dei soli contributi video (mpeg2) o audio (ac3)

Se si è interessati ad estrarre i singoli contributi audio e video dal vob e a memorizzarli su file separati, è possibile utilizzare sia DVD Decripter  che Smart Ripper : il metodo di estrazione dei flussi audio e/o video prende il nome di Demultiplexing.

Utilizzando Smart Ripper è possibile estrarre uno dei qualsiasi flussi presenti in un DVD, sia riferendosi ad uno o più vob, sia limitandosi ad un solo capitolo o cella ; al contrario con DVD decripter è possibile operare solo su uno o più vob.

Vediamo come procedere con Smart Ripper: 

Desidero ad esempio estrarre i flussi audio ac3 italiano e video mpeg2 del terzo capitolo del film "Star TreK primo contatto", (l'esempio di prima).
Il metodo è perfettamente analogo a quanto visto
prima : dopo aver caricato Smart Ripper e selezionata la modalità "movie"
seleziono il film (VTS_01/ title 1/angle1) e il solo capitolo 3 come in figura (tramite all e none è possibile selezionare o deselezionare tutti i capitoli) e la cella 1 (normalmente ogni capitolo è formato da una singola cella)

i

Selezionando Stream processing sono indicati tutti i flussi (audio, video e sottotitoli) multiplexati nel vob che si è selezionato.

- selezionare "enable Stream Processing " 

- deselezionare tutti i flussi

- per indicare che si desidera estrarre il flusso video , basta selezionare ed evidenziare il flusso 0xE0 Video Pal ... e a destra  settare 
- per indicare che si desidera estrarre il flusso 0x83 audio italiano....... basta selezionare , evidenziarlo e a destra  settare 

Dopo aver scelto la directory su cui copiare i files , se c'è sufficiente spazio libero nell'HD, si può iniziare l'operazione di demultiplexing cliccando su . Al termine si otterranno due file, con estensioni m2v (video mpeg2) e ac3 (audio).

Ovviamente è possibile selezionare anche un intero film o DVD, utile per esempio nel caso di estrazioni di flussi ac3
. Un ac3 5.1 di un film di 2 ore  nel caso di bitrate 384 kbits/s occupa 338 MB : se il bitrate è di 448 kbits/s lo spazio occupato è di 394 Mbyte. In media è possibile copiare su di un CDR i flussi ac3 di 2 film, concerti, colonne sonore.....  !!!

Ricordo che i DVD player sw quali Windvd2000 e Powerdvd possono tranquillamente leggere ed eseguire audio ac3: ovviamente se si possiede una scheda audio con spidif e un impianto ac3 è possibile ascoltare correttamente audio a 5.1 canali. (cosa che faccio senza difficoltà con la mia SB live! e l'impianto Cambridge Soundworks DTTA- 2500 ). Negli altri casi l'ac3 sarà convertito i 2 o 4 canali a secondo delle opzioni di WinDVD e PowerDVD (vedi l'articolo sui player software)

Per chi desidera ascoltare audio ac3, in stereofonia con winamp, basta scaricare dal mio sito il file ac3dec.zip e copiare il file in_ac3.dll nella directory "plug-in" di winamp.

Da osservare come nell'ipotesi in cui il l'audio ac3 estratto risulta incompatibile con certi sw (alcuni sw di authoring richiedono necessariamente degli Header particolari all'inizio del file) è possibile fare la correzione tramite il sw freeware ac3fix (per scaricarlo vedi la sezione Links)  . La sintassi è semplice: sempre nella directory in cui è copiato il programma basta digitare  nella sezione "indirizzo" (in analogia a quanto visto con vstrip):

ac3fix  nome_file.ac3   nome_file_corretto.ac3 
(ad esempio  ac3fix    c:\test.ac3  c:\test_fixed.ac3)


Vediamo come estrarre i flussi audio e video con DVD decripter, che come visto può operare solo sugli interi vob e non è in grado di limitarsi a celle o capitoli.  Prima di tutto osservo come per selezionare o deselezionare più vob occorre cliccare su questi insieme con SHIFT o CTRL
 .  

Per decriptare uno o più vob così come sono basta semplicemente selezionarli e click su

Nel caso in cui voglio estrarre solo i flussi video o audio separatamente dopo aver selezionato il vob di interesse, click destro e "Rip Stream"

Appare una finestra in cui selezionare il o i flussi audio o video da decodificare: anche in questo caso occorre selezionare i flussi d'interesse mantenendo premuto SHIFT o CTRL per selezioni o deselezioni multiple.

Nell'esempio ho selezionato la traccia video e 2 tracce audio, che verranno separatamente copiate su HD.

Se si selezionano più vob, verrà chiesto se creare dei file separati ( uno per vob) o se unire in un unico file: in tal caso il limite massimo sono i 4 Giga se si utilizza Win 95/98. Ad esempio se si vuole creare un unico file ac3 contenente tutto l'audio di un film , basta selezionare tutti i vob del Film (ad esempio 7), Rip Streams, ac3 stream (ad esempio 0x80) e rispondere si alla domanda  

Dvd decripter  permette tra le altre cose, l'elenco delle caratteristiche dei flussi audio ac3 e di quelli video.
Basta un click destro sul vob da analizzare e click su 
; appariranno le informazioni richieste.  

Riguardo la corrispondenza flusso audio (0x80, 0x81, 0x82...) e lingua relativa, occorre cliccare sul file vts_0x.ifo per ricavare l'elenco delle lingue relative, ovviamente nell'ordine dei flussi ac3.

E' possibile estrarre i contributi ac3 e video anche con il software Tmpeg, operando in tal caso non direttamente sui vob presenti sul DVD-Rom (Tmpeg non contiene capacità  Decss), ma su quelli rippati su HD.
Eseguito Tmpeg si deve selezionare file/mpeg tools/demultiplex/input Browse e caricare il  file vob precedentemente rippato su HD.  

(osservo che occorre selezionare All files *.* per poter caricare un file vob)
Appaiono indicati i diversi contributi che sono presenti, multiplexati, all'interno del vob: i private_stream1 (0x20, 0x21, 0x22, 0x23) sono i sottotitoli, il padding stream e private_stream_2 i flussi di sincronismo.

Il video è ovviamente  il video_stream_0x00, mentre gli private_stream1 (0x80, 0x81, 0x82, 0x83) sono i flussi audio ac3.

Per risalire alla lingua occorre riferirsi a quanto indicato da Smart ripper
Per memorizzare il contributo, basta un doppio click su quello desiderato e l'indicazione del nome (es audio.ac3 o video.mpv)

 


Conversione ac3--->Wav PCM 44100 16 bit Stereo

Ac3---> wav con Px3 converter

Ac3---> wav con DVD2avi

Ac3---> wav con Ac3decoder

Ac3---> wav con flaskmpeg 06 preview

Esistono numerosi modi, concettualmente identici, per una conversione del genere, utile ad esempio per convertire video musicali o parti di film. 

Sono sempre più numerosi i DVD che contengono clip musicali tra contenuti speciali e non dimentichiamo le musiche relative ai titoli di coda, spesso veri gioiellini da collezionare !!! 
Volendo è anche possibile eliminare dei canali dal flusso AC3 5.1; in certi casi con l'eliminazione del canale centrale si può estrarre la colonna sonora sopprimendo del tutto i dialoghi. Ottenuto il file Wav PCM (non compresso) 16 bit stereo 44100 Hz è possibile creare con un programma di masterizzazione un normalissimo cd-audio.

Ricordo come l'ac3 del DVD è a 48000 Hz e pertanto per creare un CD audio il sw di conversione dovrà decodificare gli eventuali 5.1 canali in un flusso stereo e poi convertire la frequenza di campionamento da 48000 a 44100.

Tralasciando i sw commerciali, tra cui l'ottimo Sonic Foundry’s Soft Encode (dotato di capacità di compressione oltre che di decompressione ac3), il mio consiglio è di utilizzare i sw freeware Ac3decoder, DVD2AVI, PX3 Convert o flaskmpeg 06 preview ciascuno dotato di caratteristiche diverse. 

software  decodifica flussi ac3 presenti nei file Vob  decodifica file ac3  capacità Decss  elaborazione audio  conversione 48000--> 44100  ascolto    scelta posizione iniziale e finale 
PX3 Convert

no 

si no  amplificazione e normalizzazione no no no
DVD2AVI

si 

no  no  normalizzazione si no si
Flaskmpeg 06 preview

si 

no  si  amplificazione, normalizzazione, compressione dinamica, volume singoli canali si si no
Ac3decoder

si 

si no  amplificazione, volume ed eventuale eliminazione dei singoli canali si si si

Come visto solo Flaskmpeg 06 preview è dotato di capacità Decss ; con gli altri software non è possibile operare direttamente sui DVD protetti da CSS, ma occorre prima decriptare i vob o i flussi ac3 su HD e poi operare su questi .

Ipotizziamo di voler convertire l'audio del video musicale di Phil Collins "Strangers Like Me" presente ne DVD Tarzan. Tale video è inserito nel titolo 10 (come si vede ad esempio in WinDVD 2000 o lo si deduce dalla durata, 2:52, in  Smart Ripper).

Ipotizziamo di non essere interessati a successive conversioni del video e pertanto ci interessa solo il flusso audio ac3 che desideriamo convertire: in questo caso conviene estrarre l'audio ac3 copiandolo  su HD. Utilizziamo uno dei metodi visti nel capitolo precedente, ad esempio utilizzando l'opzione "Rip streams" di DVD Decripter. Essendo il video di nostro interesse relativo al titolo 10 ( ovvero il vts_10) occorre estrarre il flusso ac3 dai vob relativi, nel nostro caso il solo vts_10_1.vob.

Nell'ipotesi in cui fossimo interessati a successive conversioni anche del video, in questo caso converrebbe estrarre l'intero vob HD con DVD Decripter (click su vts_10_1.vob e ) o con Smart Ripper (selezione di vts_10_1.vob e click su ).

Conversione ac3--> wav tramite  PX3Convert.


Occorre prima di tutto scaricare dal mio sito il file Px3convert.zip (239 KByte) decomprimerlo in una directory e da lì eseguire PX3Convert.exe. Con Px3 convert è possibile operare solo sui file ac3 e non su vob.

Dopo aver caricato il file ac3 da convertire (ac3file) occorre indicare il nome del wav da creare (wav file): è importante scrivere anche l'estensione .wav che non viene aggiunta automaticamente (va bene pippo.wav ma non solo pippo).

Le opzioni possibili sono:
- DS : nel caso in cui il flusso audio è ac3 Dolby Surround, selezionando DS il sw cerca di mantenere la compatibilità con gli amplificatory Dolby Pro logic; tale opzione è ininfluente con i flussi 5.1 e sconsigliabile se non si possiede un amplificatore compatibile.
- Normalize WAV : selezionando tale opzione viene amplificato il wav al massimo possibile prima delle distorsioni. : possibile ma rischiosa la amplificazione "manuale" in dB, "amplify the wav...." poichè sono probabili le distorsioni e non esiste nessun modo di controllarle. 

Cliccando su start convert inizia la conversione: allo stato attuale PX3 convert non consente la conversione 48000--->44100 che verrà implementata nelle prossime versioni, insieme alla possibilità di variare i volumi dei diversi canali. Nella finestra di selezione è pertanto possibile solo creare wav del tipo PCM 48000 16 bit stereo.

Per fare una nuova conversione conviene chiudere e riavviare il programma.

Nel momento in cui si desidera convertire la frequenza di campionamento del Wav da 48000--> a 44100 si può utilizzare un qualsiasi sw audio o anche l'ultranoto Tmpeg.

Nel caso in cui si utilizza Tmpeg, basta caricare il wav in Audio Source (video source e tutte le opzioni relative al video sono assolutamente ininfluenti)
 

e file/output to file/, audio setting e nel caso in cui si desidera creare un Wav PCM 16 bit 44100, basta selezionare.
In alternativa è possibile scegliere di comprimere l'audio con uno qualsiasi dei codec installati nel sistema, mp3 compreso.

 

Conversione ac3--> wav tramite  DVD2AVI 

Per installare i due sw occorre scaricare e decomprimere in una directory il file dvd2avi v1.76 (430 KB): per installare il software basta eseguire il file vifpset.bat.

Gli aggiornamenti li trovate sul sito ufficiale http://hiroko.ee.ntu.edu.tw/: basta sostituire i file DVD2AVI.vfp e DVD2AVI.exe con le nuove versioni. 

Con DVD2AVI è possibile operare sui flussi ac3 dei file VOB mentre non è possibile operare direttamente sui file ac3.

La premessa è che DVD2AVI è specializzato nella decodifica del video oltre che dell'audio: in questa sezione mi occuperò solo della decodifica flusso audio ac3--->WAV non compresso 44100 16 bit: per le conversioni video vi rimando all'articolo relativo a DVD2avi.

Dopo aver decriptato ad esempio il file Vts_10_1.vob su HD ed eseguito DVD2AVI occorre caricare tale vob (F3 o File/Open) e click su OK alla finestra file list.

Osservo che nel caso di lunghi filmati che occupano più Vob, la cui massima lunghezza è di 1 GB, saranno caricati automaticamente gli eventuali vob successivi (Vts_10_1.vob, Vts_10_2.vob, Vts_10_3.vob,...): non è il caso dell'esempio.

Dopo il click su OK, appare la schermata principale del programma  
con il video al centro, e in basso i controlli con i quali,  se si desidera convertire solo una parte
di filmato, è possibile tramite e   settare i punti di inizio e fine.

Tralasciando le parti relative al video, per l'audio i parametri da settare sono:

Selezione del flusso audio: nel caso del video musicale in cui c'è una sola traccia audio, questo è certamente il primo: negli altri casi (vedi le diverse opzioni audio di un film) ci si deve riferire al numero indicato ad esempio da Smart Ripper  :attenzione a non confondere le tracce, numerate a partire da 0 in Smart ripper e da 1 in DVD2AVI.

0x80-->track1
0x81-->track2
0x82-->track3......

Facendo il preview (F5) del filmato , viene indicato il tipo di audio selezionato: ad esempio

AC3 5.1 384Kbits/s AC3 Dolby Sourround
 2.0 192Kbits/s

Tipo di traccia audio, Dolby Digital nel nostro caso: va anche bene se si inserisce "auto select"
 

 

Occorre selezionare DECODE per forzare la conversione da ac3-->WAV.

Se si è interessati ad estrarre il flusso ac3, senza alcuna conversione basta selezionare Demux per estrarre la traccia selezionata o Demux All track per tutte le traccie disponibili

 

 

 

 

Tramite Dynamic Range control è possibile modificare la dinamica dell'audio così da aumentare il volume nei punti in cui questo è basso e attenuarlo  quando è forte. Per i film in cui ci sono dialoghi conviene settare Normal (light è la regolazione più blanda e Heavy la massima). In  tutti gli altri casi (colonne sonore, video musicali,...) conviene settare OFF ad evitare inutili elaborazioni
 

 

Selezionando Dolby Surround Downmix è possibile forzare la conversione ac3 5.1 in Wav stereo con codifica matriciale Dolby Surround.
 

 

Dalla versione 1.75 è presente l'opzione "Pre-scale decision" che se selezionata  dopo una analisi di tutto il vob (analisi che può durare parecchio in proporzione alla durata del video selezionato)  ottimizza la quantizzazione del flusso ac3 e produce un audio migliore. I miglioramenti sono quasi sempre inavvertibili, per cui consiglio di deselezionare tale opzioni a meno di necessità qualitative particolari.
L'opzione Dolby Surround Downmix va settata nel momento in cui si possiede un amplificatore compatibile Dolby Sourround- Dolby Pro-Logic, (uno tra tutti il Creative Desktop Theatre Dtt2500), poichè un audio creato con Dolby Surround Downmix ascoltato con un normale amplificatore stereo appare qualitativamente inferiore.

Ricordo come la codifica  Dolby Surround inserisce 4 canali distinti nel normale flusso stereo che se amplificato con un decoder compatibile Dolby Pro-Logic ricrea i 4 flussi distinti (ovviamente con una separazione non perfetta come succede nel caso delle codifiche non matriciali come l'ac3)

Con l'opzione deselezionata il wav stereo è creato così (cost1 e cost2 sono due numeri costanti, L' e R' sono i canali stereo che sono creati, mentre L,R,C,Ls,Rs, LFE  (canali destro, sinistro, centrale, posteriore sinistro, posteriore destro, basse frequenze) sono i 5.1 canali discreti dell'ac3.

5.1 Canali discreti --> stereo 
L' = L + cost1*C + cost2*Ls + cost3*LFE
R' =
R + cost1*C + cost2*Rs+ cost3*LFE

Con l'opzione selezionata 

5.1 Canali discreti --> audio stereo contenente 4 canali con codifica matriciale Dolby Surround 
S = Ls + Rs filtrati con un passa basso avente freq. di taglio 7KHz
L' =
L + cost1*C - cost2*S + cost3*LFE
R' =
R + cost1*C + cost2*S+ cost3*LFE

In fase di decodifica l'amplificatore Pro-Logic ricostruisce i 4 canali L, R, C, S elaborando l'audio stereo così codificato.

Il modo più banale di inserire i coefficienti è il seguente:
per la creazione del flusso stereo
con codifica matriciale Dolby Surround

S = Ls + Rs filtrati con un passa basso avente freq. di taglio 7KHz
L' = L + C -S
R' =
R +C +S

In fase di ricostruzione l'amplificatore Pro-Logic elaborando L' e R' può ricavare i 4 canali L1, R2,C1, S1
L1 = L'
R1 = R'
C1=
0,5*(R'+L')= C+ 0,5 L+ 0,5 R ( sul centrale appaiono attenuati del fattore 0,5 i canali R e L)
S1= 0,5*(R'-L')= S- 0,5 L+ 0,5 R ( sul canale surround appaiono attenuati del fattore 0,5 i canali R e L)

Nella pratica l'amplificatore Pro-Logic realizza una decodifica "più intelligente" analizzando le caratteristiche del canale stereo; concettualmente parte sempre dalle operazioni viste.  Come ultima cosa per creare un effetto sourround soddisfacente invia il flusso surround S1 ai 2 canali posteriori in maniera sfasata di 180 gradi.

 

Conversione da 48000 Hz del DVD al 44100. Ricordo che se si desidera creare dei CD audio occorre convertire la frequenza di campionamento a 44100. Se si setta None, al contrario  sarà creato un file 16 bit PCM 48000 hz stereo.

E' possibile scegliere la qualità della conversione: migliore qualità comporta un incremento dei tempi di conversione; per la massima qualità ovviamente occorre settare High o UltraHigh. Ecco i tempi impiegati per la conversione di 1 minuto di audio 5.1 con il mio P2 400Mhz: riporto inoltre il parametro "real time" cioè il fattore da moltiplicare per ottenere i tempi di decodifica (es.  0.73 real time ---> 30 minuti di audio convertiti in 30 X 0.73= 22 minuti circa) 

Low  26 sec 0.38 real time
Mid  44 sec 0.73 real time
High  76 sec 1.26 real time
UltraHigh  106 sec 1.76 real time

 

Cliccando su Normalization è possibile inserire una amplificazione globale all'audio: con volume 100 e opzione selezionata il file wav viene amplificato al livello massimo possibile prima della distorsione.

Ovviamente ad esempio con 75 si intende il 75% del volume massimo consentito prima delle distorsioni.
Il sw esegue una prima conversione e in base ai livelli raggiunti, moltiplica il Wav ottenuto per un fattore che garantisce il livello scelto: lo svantaggio è legato al tempo impiegato per questa operazione.

Una operazione analoga può essere realizzata con un qualsiasi sw audio dotato di capacità di normalizzazione ( praticamente tutti)

Fissati i parametri per ricavare il file wav occorre selezionare file/save project (F4) e indicare il nome del progetto (che in realtà contiene anche indicazioni sul flusso video come descritto sull'articolo su DVD2avi )

Viene creato un piccolo file (test.d2v nell'esempio) e nella stessa directory il file wav con il nome esplicativo del flusso audio convertito (AC3 T01 3_2ch 384Kbps 44.1KHz.wav nell'esempio)

 

Conversione ac3--> wav tramite Ac3decoder .

Tale sw  lo si può utilizzare in modalità DOS inserendo manualmente i parametri di conversione, o è possibile sfruttare una interfaccia grafica quale la ultranota MPEG2AVI/AC3DEC/vStrip GUI. 
Ac3decoder permette le conversioni sia a partire da file ac3 e sia selezionando uno dei flussi ac3 di un file vob: è inoltre possibile modificare i volumi delle diverse tracce di un flusso ac3 5.1

Vediamo brevemente come utilizzare la modalità a line di comando: dopo aver scaricato dal mio sito il file ac3dec.zip , basta copiare il file ac3dec.exe (128 KB) nella directory in cui è presente il file ac3 o vob da convertire.

La sintassi è banale: 

ac3dec.exe  nome_origine.ac3 -pcmwav  nome_destinazione.wav

Se ad esempio ho decriptato nella directory appoggio il file stream1_0x82.ac3 , dopo aver copiato ac3dec.exe sempre in appoggio, basta posizionarsi in tale directory, nella sezione "indirizzo" scrivere

ac3dec.exe stream1_0x82.ac3 -pcmwav audio1.wav

e premere invio.

Per chi ha un minimo di dimestichezza con il dos ricordo come non è necessario avere il file ac3 e ac3dec.exe nella stessa directory: pertanto ad esempio una sintassi del tipo

C:\rip\ac3dec.exe d:\appoggio\stream1_0x82.ac3 -44100 -pcmwav d:\audio1.wav

va altrettanto bene.

Nel caso si utilizzano file vob la sintassi è la stessa: occorre in più indicare il flusso audio da convertire 0x80, 0x81,.... (in caso contrario viene convertito il primo disponibile) tramite il tag -substream : ad esempio per convertire il flusso 0x82 del vob video1.vob occorre scrivere.

ac3dec.exe video1.vob -substream 0x82 -pcmwav audio1.wav

Ac3decodor ha numerosissime opzioni, tra cui la possibilità di scegliere un codec audio tra quelli installati nel computer (mp3 compreso) per convertire direttamente ac3--->mp3 ; per farlo basta non scrivere -pcmwav. In tal caso apparirà la finestra con la quale scegliere il codec di compressione.
  

Termino questa carrellata dei metodi di conversione vob o ac3---> wav con una breve guida all'uso di  ac3decoder con l'interfaccia grafica MPEG2AVI/AC3DEC/vStrip GUI : tramite questa è possibile modificare tutti i parametri che offre ac3secoder, in maniera molto intuitiva.. 

Prima di tutto occorre scaricare il file gui.zip (1185 KByte) decomprimere i file e copiare il tutto in una directory avente un nome breve (es. c:\rip): tale limitazione deriva dal fatto che il sw utilizza programmi di tipo Dos per i quali nomi aventi più di 8.3 caratteri creano dei problemi. Anche in questo caso mi limito a trattare la sezione relativa all'utilizzo grafico di ac3 decoder.

Seconda operazione fondamentale è verificare la presenza del file Command.com nella directory principale in cui è installato il sistema operativo, ovvero nel 99.9% dei casi la directory c:\  

Se Command.com non è presente in c:\ occorre copiarlo prelevandolo dalla directory di windows (c:\windows) o se non è lì dalla directory in cui è presente (basta una banale ricerca, Start/Trova/File o cartelle,  command.com )

E' ovvio, ma è meglio non darlo per scontato che il file command.com VA LASCIATO DOVE STA (normalmente c:\windows ) OLTRE CHE copiarlo in c:\. Se lo si cancella o lo si sposta da dove sta senza copiarlo, c'è il rischio che all'accensione,  il PC non si avvia !!!!

Eseguito il file gui.exe, occorre (solo per la prima volta) indicare al programma dove si trovano gli eseguibili MPEG2AVI, AC3DEC, vStrip e Virtual Dub, tutti compresi nel file gui.zip. Ipotizziamo di aver copiato tutti i file nella directory c:\rip.

Per indicare alla interfaccia grafica la posizione dei programmi :  

click su mpeg2avi
click su locate file 1.1 mpeg2avi
click su mpeg2avi.
A questo punto occorre indicare la posizione del file mpeg2avi, selezionando la directory in cui si sono decompressi i vari file (c:\rip nell'esempio) e doppio click su mpeg2avipx3.exe.
a conferma della corretta indicazione si legge in basso il percorso indicato.....
....e la versione di mpeg2avi

Analogamente si deve procedere per localizzare i file ac3dec.exe, VirtualDub.exe e Vstrip: per i nostri usi (ac3-->wav) ciò che conta è localizzare correttamente ac3dec.exe.

Terminata l'operazione di localizzazione dei file, da fare come detto solo la prima volta, click su per ritornare al menù principale.
Per convertire gli ac3 o i flussi ac3 dei vob, occorre selezionare in alto , indicare 

il file da decodificare (click su input) e il nome del file wav da creare (click su output).
Riguardo il file da decodificare dopo aver cliccato su Locate files 1.2 Input .......
 

 ....... click su input (in giallo) e occorre scegliere se si desidera decodificare 
audio ac3 o l'audio ac3 presente nei vob (mpeg2 vob).
Per il nome del wav da creare occorre cliccare su output e in alto dopo aver selezionato la directory in cui creare il file audio, occorre
scrivere il nome desiderato, ad esempio test.wav e premere invio

Riguardo i parametri disponibili è fondamentale , nel caso si desidera poi realizzare cd audio,  selezionare la conversione di frequenza di campionamento (convert the 48000 stream to 44100) 
Segnalo tra le altre, la possibilità di convertire solo un numero fissato di secondi (Limit Lenght of the Decode to), di selezionare il punto di inizio conversione (Seek to File Megabyte Position o VOB LBA Position.) e la possibilità di escludere o regolare i volumi dei singoli canali del flusso ac3 (ottimo per eliminare i dialoghi e lasciare la musica)

Se si vuole convertire l'audio presente su più vob consecutivi  (ad esempio Vts_01_1.vob, Vts_01_2.vob, Vts_01_3.vob) il tipico caso di un intero film o concerto su  DVD, basta caricare (input) il primo (VOB Vts_01_1.vob nell'esempio) e selezionare

Per ascoltare il flusso audio senza convertirlo basta un click su : dopo aver selezionato la finestra dos che si sarà aperta, con i tasti è possibile regolare in tempo reale i parametri: tramite "Q" è possibile terminare l'ascolto.

Nel caso si converte uno dei flussi ac3 dei vob, è possibile indicare il flusso audio da convertire tramite

Come ulteriore possibilità c'è  quella di forzare la conversione in wav 16 bit non compresso : in caso contrario verrà richiesto prima della conversione il formato da utilizzare in uscita, tra i codec installati nel sistema (mp3 compreso)

Dopo aver scelto i parametri ed eventualmente ascoltato con  il risultato occorre iniziare la conversione.

Ci sono 3 possibili metodi per fare la conversione

1) Il metodo più banale è cliccare su 
Nel caso in cui la conversione non si avvia è probabile che la causa sia la mancanza del file command.com in c:\  o che  si è copiato l'insieme dei file della gui in una directory avente un percorso maggiore degli 8.3 caratteri (non a caso ho consigliato di copiare la gui in c:\rip !!) 

E' comunque possibile che la conversione non si avvii ugualmente;  in tal caso occorre utilizzare uno dei seguenti metodi alternativi.

2) - Apertura di una finestra DOS (Start/programmi/)
    - Selezione nella GUI del testo a destra di "command line" (evidenziare il testo con il tasto sinistro del mouse)    
    - cntr - c (copia del testo evidenziato nella clipboard)
    - Click su incolla nella finestra DOS e Invio

3) Esiste un  terzo metodo che evita l'uso della finestra DOS:
   - Selezione del testo a destra di "command line" (evidenziare il testo con il tasto sinistro del mouse)    
    - cntr - c (copia del testo evidenziato nella clipboard)

  - "incolla" del testo all'interno della sezione Indirizzo (ctrl - v)


  - eliminazione dei primi due simboli  "  " ; nel nostro caso occorre eliminarli da "c:\rip\ac3dec.exe"  come in figura

  e invio.

Conversione Ac3---> wav con flaskmpeg 06 preview

La versione presente 06 preview prevede la possibilità di convertire in Wav uno dei flussi ac3 presenti nei vob, ma sembra proprio che tale caratteristica sia stata "appiccicata" all'ultimo momento e presenta, al di là di un meccanismo della scelta dei parametri tipico delle opzioni "appiccicate",  2 difetti:

1) Impossibilità di convertire solo una parte del vob o del film selezionato (cosa invece possibile per il video)
2)
I Wav prodotti sono incompatibili con il Windows media player, mentre sono letti correttamente da sw quali Winamp, Virtualdub, WaveLab,.....  

Riguardo la 06 preview, dopo averla scaricata (ad esempio la versione FlaskMpeg 0.60 preview presente sul sito  Doom9  http://go.to/doom9  http://doom9.org/ ) in fase di installazione, se sul sistema è già presente una versione precedente di flaskmpeg (es la 0594), quando richiesto, conviene scegliere una directory diversa da quella in cui sono installate le varie 0594 ad evitare conflitti tra le varie versioni.

Dopo aver installato il sw, per garantirsi le capacità Decss occorre copiare nella directory in cui è presente flaskmpeg.exe, il plug_in css.mism.flask (165168 byte) che trovate zippato sul mio sito mism1.zip  o presente su Doom 9 (css_mism.zip

Come seconda operazione occorre verificare se nella directory in cui c'è flaskmpeg.exe sono presenti  uno o più dei seguenti plug-in  (dipende dalla versione scaricata)

decss.mism.flask  ( 135.168)
thunder.mism.flask  ( 163.840)
dvd.mism.flask  ( 159.744)

In caso affermativo questi andranno cancellati poichè sono delle versioni meno recenti della css.mism.flask o non dotate di decss.

Verificate che nella directory in cui c'è flaskmpeg.exe, tra i diversi plug-in installati del tipo  nome.mism.flask  siano presenti contemporaneamente solo i due plug-in css.mism.flask e null.mism.flask

Eseguito flaskmpeg click su File/apri e selezione del singolo Vob da cui estrarre l'audio ( il file vts_10_1.vob nel caso del video musicale di Phil Collins ) o nel caso di conversioni dell'audio di interi film , il relativo file ifo. Nel caso in cui si seleziona un file presente su di un DVD protetto, occorre inserire la chiave di decriptazione ricavata con Smart Ripper o DVD decripter. . Ovviamente nel caso di conversione di vob rippati su HD basta cliccare su "Unscrambled Vob file".

Per selezionare l'audio da convertire e modificare i parametri disponibili,  click su .

A questo punto è possibile tramite play e stop ascoltare l'audio e in tempo reale modificare i seguenti parametri.

- regolazione del " Dinamic Range Compression". Metodo di amplificazione "intelligente", una specie di compressore di dinamica che aumenta il volume nei punti in cui è basso e lo attenua quando è forte. Non conviene mai eccedere nei livelli ( il cursore deve essere posto verso il basso) poiché è facile introdurre delle distorsioni.

- regolazione dei volumi del canale centrale , dei frontali e dei posteriori. L'ampiezza è espressa in dB:

ampiezza in dB  amplificazione 
+1 dB 1.12 (+12%)
+2 dB 1.26 (+26%)
+3 dB 1.41 (+41%)
+4 dB 1.58 (+58%)
+6 dB 2 (+100%)
+10 dB 3.1 (+210%)
+12 dB 4 (+300%)

- amplificazione globale: è possibile inserire manualmente un valore (100%= lascia il volume originario, 200% raddoppia il volume totale,.....) o far calcolare il volume massimo che non introduce distorsioni (search).

Ovviamente una amplificazione eccessiva crea distorsioni e in generale  non conviene superare il 200%. Le eventuali  regolazioni dei singoli canali e il dinamic range compression influenzano il volume generale e pertanto il valore ricercato. Nel caso si seleziona un dinamic range compression eccessivo, la ricerca si blocca con l'indicazione 100% che indica l'insorgere di distorsioni. Per un Bug del SW se si applica la ricerca dopo aver selezionato e poi deselezionato "dinamic range compression" e/o "multichannel volumes" si ottengono risultati errati: basta comunque uscire dalla sezione audio player e poi ritornarci per riattivare correttamente il "search" automatico.

- compatibilità : se selezionata,  l'audio ac3 5.1 sarà compatibile con il formato Dolby Sourround, (4 canali in codifica matriciale da estrarre dal flusso stereo prodotto con un amplificatore o player compatibile): non ci sono indicazioni sulle caratteristiche di tale opzione, anche se è probabile che è utilizzato l'algoritmo visto per DVD2AVI.
- scelta del flusso audio da convertire 0x80, 0x81,...

Terminata la eventuale regolazione dei parametri visti, click su OK e opzioni/opzioni globali progetto/settaggio film/audio e selezione della frequenza di campionamento 44100 o 48000. Per modificare il nome del file da creare , dopo aver scelto la frequenza di campionamento, si deve selezionare "Copia direttamente il flusso ..." e scegliere il nome nella sezione opzioni/opzioni globali progetto/ files  

Per iniziare la conversione "Esegui/ extract audio to Wav"


Ricerca della chiave di Decriptazione

Una altra possibilità offerta dai DVD ripper è quella di indicare la chiave per decriptare il DVD, chiave che per quanto visto viene ad esempio richiesta da alcune versioni di Flaskmpeg con l'apparizione della seguente finestra:

Il metodo più semplice e diretto lo si ha utilizzando DVD Decripter: se sono interessato a convertire con flaskmpeg il film che è presente nel VTS_01,  per conoscere la chiave di decriptazione basta selezionare ad esempio VTS_01_1.vob e tramite click destro occorre scegliere l'opzione "Find Key"

Apparirà la chiave e il metodo utilizzato per trovarla  

Se si utilizza Smart Ripper occorre selezionare il file vob di cui si è interessati a conoscere la chiave , iniziare il ripping, premere stop e appuntarsi la chiave che è indicata nella finestra
  .

L'unico inconveniente è che occorre poi cancellare manualmente il vob copiato (sempre se non serve)

E' ovvio che flaskmpeg fallisce in tutti i DVD assai rari, in cui la chiave è diversa per ogni vob: in tal caso occorre decriptare il film copiandolo su HD e da li fare la conversione.


I settings di Smart Ripper

Ecco una  breve analisi dei settaggi (settings) di Smart Ripper.

Le opzioni che valgono quando si fa il ripping in modalità Movie si selezionano tramite settings/movie

- Key- Check: si sceglie quante volte il sw deve cercare una nuova chiave di decriptazione: normalmente basta fermarsi ad ogni vob: per i DVD più ostici, quelli in cui sono applicate chiavi diverse per ogni capitolo, magari multiangolo,  conviene selezionare every chapter o  cell-id o vob-id , da fare normalmente solo se il ripping non riesce con l'opzione  every vob (sono casi più unici che rari). Analogo discorso per "Search - Intensity" legato all'algoritmo di ricerca della chiave: conviene lasciare il valore pari a 1 a meno di esiti negativi del ripping..

- File-Splitting: si sceglie,  nel caso di ripping in modalità movie,  se e come suddividere in più file  quelli rippati: se si sceglie every vob-file si rispetta la suddivisione dei file vob originali presenti su DVD; nel caso di every chapter si crea un vob per ogni capitolo; idem per vob-id e cell-id;

Curiosa la possibilità max-filesize, utile ad esempio per l'estrazione di flussi ac3: è possibile dividere i file creati  fissando un limite massimo alla dimensione (Max-file size espresso in Megabyte) invece che dividendoli in coerenza con la suddivisione originaria in vob o celle. Se ad esempio si utilizzano elevati valori di "max-filesize", è possibile unire più vob decriptati in uno solo, ad esempio unendo tutti i vob di 1 GB che compongono un film . Il limite max è dettato dal sistema operativo; Win98 limita le dimensioni dei propri file a 4GB (non a caso il default è Max file-size = 4000 MB); al contrario con Windows NT-2000 non c'è limite alla massima dimensione, ed è per esempio possibile compattare anche i 7-8 gigabyte di un film presente in un DVD-9 in un solo file vob.

Con Div=0 il limite massimo è quello fissato manualmente; con Div = 1,2,3..... max file coincide con la dimensione dei flussi selezionati diviso il valore div impostato, per dividere così in parti uguali.

Option 
Unlock drive
: serve ad autenticare il DVD all'avvio del programma ; tale opzione , inutilizzabile a causa di un bug nelle versioni  2.20-2.21-2.22-2.23 è implementata correttamente a partire dalla 2.24. Se si dimentica tale opzione ( di default ) appare il seguente messaggio, all'avvio del SW, che invita ad autenticare il DVD con un altro SW (DVD Ripper) o con un player per PC.  


Demacrovision
: elimina nei vob rippati, il bit che dice ai player di inserire il Macrovision sull'uscita analogica ( Il macrovision è il segnale di disturbo che impedisce le copie su Vhs ).
Copy IFO file : nel caso di ripping in modalità movie forza automaticamente la copia del relativo file IFO, quando si seleziona un vob (conviene sempre lasciarlo inserito).
Create Index-file: 
crea ad ogni operazione di ripping un file che descrive la struttura dei Gop del flusso mpeg2: molto istruttivo per vedere "l'intelligenza" dell'encoder usato (molti DVD contengono GOP fissi a 15, mentre altri ne variano la dimensione a secondo della sequenza, introducendo I frame dove opportuno)
Create list-file crea ad ogni operazione di ripping un file di testo che descrive i Vob decriptati: il suo uso è legato al sw MPEG2AVI insieme con la "mpeg2avi/ac3dec/vstrip gui". Ecco un esempio classico :

d:\vts_01_1.vob
d:\vts_01_2.vob
d:\vts_01_3.vob
d:\vts_01_4.vob
d:\vts_01_5.vob

Analoghe le opzioni nel caso di modalità Files/Backup.

Ignore Lowdiskspace: se selezionato è possibile avviare il ripping anche se lo spazio richiesto sull'HD non è disponibile: utile nei casi in cui si demultiplexano dei flussi, ad esempio il solo audio ac3, in cui l'indicazione dello spazio richiesto NON tiene conto del fatto che lo spazio occupato sarà inferiore rispetto a quello relativo ai vob selezionati.

Ad esempio l'intera traccia ac3 di un film, si aggira sui 300-400 MB rispetti ai 3-9 GB di un film. 

Interessante l'opzione "Region Free" che modifica il file "video_ts" così che il DVD se copiato su un DVD-R diventa region free.

 


I links dei sw citati nell'articolo

 

Ecco la serie di links per scaricare i sw di cui ho parlato.
Le versioni di DVD Decripter e Smart Ripper che ho analizzato e descritto nell'articolo le trovate sul mio sito:
DVD_Decripter.zip SRipper.zip : su geocities li trovate qui (DVD_Decripter.zip e SRipper.zip ) Per gli aggiornamenti ecco una serie di links:

DVD Decripter

http://www.flexion.org/dvddecrypter/ ((sito ufficiale)

DVD Decripter, Smart Ripper e  altri rippers 

Doom 9 net http://go.to/doom9 sezione downloads http://www.bangkokatnight.com/cgi/software.htm 
VcdSpain http://www.granavenida.com/vcdspain/vcdsp.html sezione downloads/ripeadores

Q-bert http://www.anti-mpaa.de.vu/    http://www.anti-mpaa.org
http://anti-mpaa.de.vu   http://anti-mpaa.dr.ag   http://antimpaa.cxa.de 

Apachez http://apachez.has.it  http://apachez.yi.org/ sezione tools  

Digital Digest   http://www.digital-digest.com/dvd/index.html http://www.digital-digest.com/dvd/downloads/index.html sezione ripping tools

AC3 Fix

Doom 9 net http://go.to/doom9 sezione downloads qui  
Tec Video http://www.media-video.com/ sezione  software 

Tmpeg Beta12

Links sezione Digital video http://web.tiscalinet.it/benis/dvd/dig_vid.htm

Vstrip

Sito Ufficiale http://www.maven.de/
Digital Video  
vstrip.zip

DVD2AVI

Sito Ufficiale http://hiroko.ee.ntu.edu.tw/  
Digital Video 
dvd2avi.exe

PX3 Convert

Sito Ufficiale http://go.to/px3  
Digital Video 
Px3convert.zip

MPEG2AVI/AC3DEC/vStrip GUI e software

Siti Ufficiali   http://members.nbci.com/DanniDin/GUI4mpeg2avi.htm  http://go.to/px3
Digital Video
gui.zip 

 

Approfondimento sul CSS

 http://www.cs.cmu.edu/~dst/DeCSS/index.html
 http://www.cs.cmu.edu/~dst/DeCSS/Gallery/index.html   
  
http://www.opendvd.org/

 

E' tutto: per qualsiasi commento e parere potete contattarmi al mio indirizzo di posta elettronica
benedettodue@tiscalinet.it .

Benedetto

25 gennaio 2001

ultimo aggiornamento 23 Giugno 2001

Ritorna all'indice della pagina 

Ritorna alla pagina digital video

Ritorna alla home page