Ogg Vorbis Audio & Ogg Media Streams

Forse avarai già sentito parlare di Ogg Vorbis, o semplicemente Ogg. Prima di tutto facciamo chiarezza sui termini perché c'è un po' di confusione su questo argomento ed io stesso prima di scrivere questa guida ero incerto. Dunque: Xiph.org è il sito di una collezione di strumenti multimediali open source per Internet, fra i quali vi è il Ogg Vorbis audio codec, che ha raggiunto lo status di release candidate, e Ogg Tarkin (un codec per la compressione video, ancora in fase di pianificazione). Ogg Vorbis è un codec audio open source e patent free che compete in qualità con i codec commerciali di nuova generazione, come AAC, MP3Pro e VQF, e che può superare l'audio MP3 e WMA. Attualmente Ogg Vorbis è arrivato allo stato di RC3, i che significa tutte le caratteristiche sono state implementate ma ci possono essere ancora numerosi errori da eliminare e varie ottimizzazioni da fare.

Il progetto Ogg definisce anche un media stream che incorporerà Ogg Vorbis e Ogg Tarkin. Di recente una prima implementazione di tale formato è stata distribuita. Ora è possibile unire una traccia video DivX o XviD (in effetti io ho utilizzato un video XviD per testare questa guida) ed una traccia Ogg Vorbis. Sarà possibile anche usare tracce MP3 in un media stream Ogg. L'audio Ogg può fornire un'ottima qualità a bitrates minori rispetto all'MP3 e ciò significa più spazio a disposizione per il video. Ogg Vorbis supporta l'audio multicanale ed il coupling (accoppiamento) dei canali che può aiutare a ridurre ulteriormente il bitrate quando si utilizzano colonne sonore multicanale. Attualmente i coupling dei canali non è stato ancora implementato. Una volta implementata, questa caratteristica potrebbe rendere i files Vorbis multicanale ancor più interessanti in quanto tiene conto delle similitudini tra i canali e comprime solo ciò che è assolutamente necessario per ricostruire i diversi canali durante la fase di decompressione.
Per quanto riguarda i media streams, ci sono due vantaggi principali rispetto al formato AVI: il primo è il seeking (avanzamento veloce). Il seeking sarà istantaneo. Non dovremo più aspettare davanti ad uno schermo nero fin quando il film non riprende a girare, o vedere il film che gira più veloce nel tentativo di sincronizzarsi con l'audio. Il secondo vantaggio è il multiplexing overhead. Non ho testato molto questo nuovo formato, ma giusto per darvi un esempio: per un film di 1h:54m con audio MP3 VBR ho ottenuto un muxing overhead di 6700KB. Utilizzando Ogg ho ottenuto un overhead di 2392KB il che in definitiva significa che ho avuto 5 MB in più per aumentare il bitrate del video. Un fatto interessante è che quando ho aggiunto una seconda traccia audio Ogg, il muxing overhead aggiuntivo e stato di 0KB.

Dopo questa introduzione andiamo dritto al dunque: per usare questa guida avrai bisogno dei seguenti programmi:

Ogg Vorbis Direct Show Filters
Ogg subtitle filter (necessario solo se volete i sottotitoli)
HeadAC3he oppure BeSweet e OggMachine
Ogg Cutter
OggMux

Do per scontato che usi DVD2AVI nel processo di encoding, dal momento che è il modo migliore. Alcune buone guide su come fare il video sono la GKnot guide for DivX3, la GKnot guide for DivX4 o la XviD guide. Ognuna di queste guide ti darà come risultato il file AC3 necessario che verrà processato come descritto in questa guida. Ovviamente, nelle suddette guide non devi eseguire i passi relativi all'encoding dell'audio ed al multiplexing delle tracce.

Punto  0: Setup iniziale

Clicca semplicemente sull'eseguibile dell'Ogg filter che installerà tutti i filtri di cui hai bisogno. Non devi neanche installare i filtri che ci sono nel pacchetto del Graphedit, non servono per questo tipo di applicazione.

Punto 1: Encoding dell'audio

Qui hai due opzioni a disposizione: HeadAC3he oppure OggMachine. Quale scegliere è solo una questione di gusti. HeadAC3he dovrebbe essere leggermente più veloce su installazioni RAID, d'altro canto scrive grossi file temporanei sull'HD. Supporta anche il downmix del Dolby Prologic 2 ed i file Ogg a 4 canali. 
OggMachine è un'interfaccia per il ben noto BeSweet ed offre tutte le opzioni di Vorbis incorporate in BeSweet.

Punto 2: Estrazione dei sottotitoli

Per riuscire a multiplexare i sottotitoli allinterno del tuo media stream Ogg devi innanzi tutto estrarli dai VOB files del film. Da notare che la guida a cui punta il link propone svariate opzioni, ma in questo caso segui il procedimento scritto nella prima pagina (usando Subrip).

Punto 3: Ottenere le informazioni sui capitoli

Se usi SmartRipper per fare il rip molto probabilmente hai già estratto queste informazioni. SmartRipper infatti scrive un file di testo con queste info nella directory dove sono salvati i tuoi VOB. Se ancora non hai questo file oppure usi un'altro ripper allora hai bisogno di ChapterXtractor.

Avvia ChapterXtractor, premi il bottone Open IFO e carica il file IFO che appartiene al tuo film. Nel caso di un film in NTSC imposta il FPS rate da 29907 a 23976.

Poi clicca sulla tab Format e seleziona e seleziona OGG dalla lista.

Questo per convertire i dati in qualcosa che OggMux possa digerire. Quindi usa il bottone Save data per salvare le informazioni sui capitoli su di un file di testo.

Punto 4: Multiplexing

Avvia OggMux.

Prima seleziona il tuo film e assegnagli un titolo (sebbene io non sia riuscito a vederlo scritto da nessuna parte durante il playback questo titolo).

Poi carica tutte le tue soundtracks, ed associa una lingua ad ognuna tramite le opzioni nella casella a discesa.

Ora carica i file con i sottotitoli ed associa una lingua anche ad essi.

Poi premi il pulsante Import list e seleziona il tuo file di info SmartRipper / ChapterXtractor. Cosi facendo importerai l'intera lista dei capitoli.

Infine scegli un nome per per l'output ed imposta la dimensione per lo split. Attenzione, come dice il programma, questa operazione non ha la precisione sul keyframe ma del resto OggSplit ha lo stesso problema. Ora puoi premere il pulsante e osservare la barra indicatrice che scorre lentamente a destra...

Qualche ultima considerazione

Sebbene a tuttoggi sia possibile il playback di file ogg a 6 canali, c'è ancora del lavoro da fare sul core Vorbis prima che questa opzione diventi realmente interessante per gli scopi del il ripping. Sfortunatamente la caratteristica dell'accoppiamento dei canali non è in cima alla lista delle cose da fare degli sviluppatori, percui bisogneà insistere un poco per vederla realizzata dal momento che gli sviluppatori Vorbis non sembrano pienamente a conoscenza dell'uso del loro formato per i fini del ripping.
Così come per il calcolo del bitrate, non conosco cifre esatte comunque ecco il muxing ovehead del mio esempio: lunghezza del filmato: 1:54:20, muxing overhead: 2392KB per un rip di 700MB il che corrisponde allo 0,3339% della dimensione finale. Solo l'esperienza ci dirà se questo valore va midificato quindi siete liberi di condividere i vostri risultati nel forum.

Da ultimo, ma non per importanza, poiché questi tools sono assolutamente nuovi, nuove scoperte su di essi avvengono giorno per giorno. Il modo migliore per essere sempre aggiornati e seguire  i dibattiti nel New A/V formats forum e nel Audio encoding forum.