VirtualDubMod/Introduzione
|
VirtualDubMod è il più diffuso branch del progetto open source VirtualDub, un software libero per il video editing.
Origini
modificaTrattandosi di un software a codice sorgente aperto, VirtualDub costituisce la base per diversi software secondari, che ne deviano le finalità e ne modificano le funzionalità. Il termine tecnico con il quale viene definita questa pratica nel mondo informatico è branching del codice sorgente.
Il progetto VirtualDubMod riunisce 6 di questi branch, o mod:
- Nandub
- VirtualDubAVS
- VirtualDubMPeg2
- VirtualDubNet
- VirtualDubOGM
- VirtualDubSync
Il team di sviluppo di VirtualDubMod comprende 7 persone, ai quali va aggiunto Avery Lee, autore di VirtualDub. È interessante notare come siano stati alcuni degli autori dei software modificati a riunirsi per costituire il progetto VirtualDubMod, compilandolo da un vero e proprio merge dei vari codici sorgente.
Nonostante lo sviluppo attivo del software sia fermo dal 2003, VirtualDubMod è ad oggi lo strumento più usato per l'editing video spiccio, e viene tipicamente considerato dalla comunità un coltellino svizzero dei DivX.
Ovviamente sue funzionalità non sono riservate a questo codec, ma è indubbio che la sua popolarità sia cresciuta di pari passo con quella del fenomeno del video digitale casalingo.
Obiettivi del programma
modificaVirtualDubMod, così come il suo capostipite VirtualDub, ha come obiettivo l'elaborazione audio/video orientata in particolare ai filmati digitali nei formati:
I codec video supportati all'interno di questi contenitori multimediali dipendono dai filtri DirectDraw installati sul sistema operativo ospite. I formati audio supportati dipendono invece dal contenitore scelto per il salvataggio, e includono:
- Waveform audio [1]
- MPEG-1/2 Audio Layer 1, 2 e 3 [1]
- MPEG-1/2 Audio Layer 3 VBR [2]
- Dolby Digital AC3 [2]
- Ogg Vorbis [2]
- DTS [2]
Ai 3 container gestiti vanno aggiunti in sola lettura i formati:
Vi è inoltre la possibilità di importare o esportare la parte video come sequenza di fotogrammi nei formati più diffusi.
VirtualDubMod non ha come obiettivo il video creativo, quindi le sue funzionalità potranno apparire limitanti viste da un'ottica di videoamatore. Tuttavia le sue specifiche funzioni non hanno eguali nei software più blasonati, permettendo di arrivare ad una profondità di dettaglio del singolo byte. Conseguentemente l'utente obiettivo del progetto VirtualDubMod è il cosiddetto homebrewer, lo smanettone che desidera poter modificare a livello chirurgico i propri filmati.
Tra i limiti di VirtualDub si cita l'impossibilità (legale, non tecnica) di gestire i container Advanced Streaming Format e Windows Media Video, entrambi di Microsoft. Il team di VirtualDubMod ha scelto di non forzare ad ogni costo il supporto a questi formati-contenitore.
Struttura di un file multimediale
modificaPrima di analizzare le possibilità offerte dall'applicativo, sarà utile rivedere velocemente come è costituito un file multimediale, senza entrare in eccessivi tecnicismi, che esulerebbero dalle finalità di questo testo.
Contenitori e flussi
modificaUn file multimediale generico è costituito da un contenuto multimediale rappresentato in uno o più codec, ovvero rappresentazioni che implementano uno o più standard di codifica, e da una serie di livelli di astrazione, che come matrioske incapsulano il contenuto in modo da fornire agli strati più esterni dei metodi facili e soprattutto standardizzati e documentati per accedere alle informazioni contenute.
Fornire l'adeguato livello di astrazione agli applicativi è il compito dei cosiddetti contenitori multimediali, dall'inglese multimedia container.
All'interno del contenitore trovano posto uno o più stream, ovvero flussi, che scorrono in parallelo grazie al sincronismo garantito dal contenitore, che anche di questo si occupa. I flussi possono essere di vario tipo, e tipicamente:
Alcuni contenitori multimediali supportano più stream dello stesso tipo, altri possono supportare o meno alcuni particolari formati. Dei 3 contenitori supportati da VirtualDubMod, il più completo è Matroska, che va addirittura oltre le possibilità stesse dell'applicativo, ad esempio formalizzando a livello container flussi video paralleli, variazioni di frame rate, variazioni di risoluzione, ed altro ancora. Viceversa, il contenitore più limitato è AVI, che supporta più tracce audio parallele, ma solo in formato a bitrate fisso (con l'eccezione fuori standard di MP3 VBR [2], non gestito da tutti i lettori multimediali). Anche i sottotitoli non sono gestiti da AVI, il che impone di salvarli all'occorrenza in un file di testo a parte.
Codec audio e video
modificaPer codificare e decodificare un particolare flusso è necessario che la macchina ospite lo riconosca e identifichi. In ambiente Windows questo è ottenuto mediante l'installazione una tantum di un codec, in grado di codificare e decodificare quel particolare flusso. Ciò è vero in particolare per i flussi video, in quanto VirtualDubMod si appoggia alle librerie DirectDraw di sistema per gestire il contenuto video di un file. Conseguentemente è possibile che un file non sia gestibile da VirtualDubMod per mancanza del filtro video DirectDraw corrispondente, nonostante qualche applicativo che non si appoggia a queste specifiche riesca a visualizzarlo. Il caso più evidente è rappresentato dal software VideoLAN Client, che non usa DirectDraw per riprodurre musica e filmati.
Se a livello di flusso video, qualsiasi codec video DirectDraw è fruibile dai 3 contenitori gestiti da VirtualDubMod, la stessa cosa non si può dire della parte audio. In questo caso, infatti, è il contenitore a limitare le scelte. Ecco quanto a disposizione dei vari container.
Microsoft AVI
modifica- WAV
- MP1
- MP2
- MP3
- MP3 VBR (fuori standard AVI)
- Dolby Digital AC3
Ogg Media
modifica- WAV
- MP1
- MP2
- MP3
- MP3 VBR
- Dolby Digital AC3
- Ogg Vorbis
- DTS
Matroska
modifica- WAV
- MP1
- MP2
- MP3
- MP3 VBR
- Dolby Digital AC3
- Ogg Vorbis
- DTS
Spesso nel linguaggio comune, il concetto di contenitore e quello di codec vengono mescolati tra loro creando confusione.
Quindi ad esempio per dire "ho un filmato AVI con video in DivX e audio in MP3" è diventato linguaggio comune dire semplicemente "ho un filmato DivX", anche se questa affermazione potrebbe anche identificare un file Ogg contenente video DivX e audio Vorbis.