Articoli con tag scansione

Controllare file video in GNU/Linux

Spesso ci troviamo file video che non vengono letti correttamente dai nostri lettori multimediali, però ce ne accorgiamo solamente dopo averli visti. Certo, sarebbe bello poterli controllare prima che sia troppo tardi e il nostro filmato venga interrotto sul più bello. Come fare questo in GNU/Linux ?

I formati più noti

L’errore che comunemente viene fatto è scambiare il formato di compressione audio/video per il contenitore multimediale, generando un po’ di confusione. Se già conoscete questa differenza, saltate questa spiegazione.

Alla domanda “come è compresso il filmato?” spesso si risponde “è un file AVI” oppure “è in MKV”. Questa risposta è parziale; infatti un file AVI può avere il video codificato nel formato MPEG-2 (il formato di compressione video dei DVD, per intenderci) e l’audio compresso in DTS oppure, come spesso succede, in DivX/Xvid e l’audio in MP3.

I media container oggi più diffusi sono OGG, AVI, QuickTime, 3GP, RealMedia, FLV, Matroska / MKV e WebM (basato su Matroska). Il media container è come una scatola: può contenere diverse cose di diverso tipo, ma non tutte né tutte insieme. Quelli che generalmente indichiamo con le estensioni sono, appunto, i contenitori multimediali; al loro interno trovano posto uno o più flussi tra audio, video, sottotitoli e suddivisione in capitoli (simili ai bookmark di un browser). Ognuno di questi flussi è codificato in modo diverso.

Il contenitore AVI

Realizzato da Microsoft nel 1992 ed aggiornato nel 1996 per rispettare lo standard OpenDML, può contenere fino ad un massimo di due tracce audio ed una sola traccia video.

Generalmente il video viene compresso nel formato MPEG-4 con i codec DivX o XVid (quest’ultimo formato è la controparte aperta e compatibile con il proprietario DivX) mentre l’audio in MPEG-1 Audio Layer III (meglio noto come MP3), Dolby Digital AC3 o DTS. Il formato si è diffuso come vero standard praticamente incontrastato per moltissimi anni. Poi, con l’avvento dei nuovi formati di audio/video digitale e soprattutto dell’alta definizione video e dello streaming su Internet, questo formato ha iniziato a rivelare i primi acciacchi. Esteso in modo più o meno compatibile grazie a diversi software per sopperire alle mancanze proprie del formato (ricordiamo quando è stato creato), sembra stia iniziando un lento declino.

Il contenitore MKV

Nasce nel 2002 come spin (come va di moda oggi dire :-) ) di un precedente progetto e, a tutt’oggi, è uno dei più utilizzati e diffusi. Estendibile, quasi aperto a livello di codice (alcune parti del software è licenziato in LGPL, mentre altre parti in BSD), a standard aperto, ottimizzato anche per la trasmissione in streaming e dalle caratteristiche molto avanzate, offre la flessibilità che il formato AVI non riesce a reggere.

Oltre a permettere l’inclusione di tracce video, audio e sottotitoli compressi praticamente in ogni formato (pochissimi i formati esclusi), è in grado di includere più tracce video, audio, sottotitoli e suddivisione in capitoli, proprio come i DVD o i Blu-Ray. Non è un caso che, oggi, sempre più frequentemente viene utilizzato il formato MKV.

Bene, passiamo allo scopo originale del post.

Controllare i file

Per i Linuxiani, i software di compressione audio/video vi sono e sono davvero di buona fattura (cito HandBrake e AVIDemux su tutti), ma mancano, secondo me, di una funzionalità piuttosto utile: il controllo della correttezza del filmato compresso.

Possiamo sopperire a questa mancanza con strumenti software che, con una semplice riga di comando, effettuano un controllo molto approfondito. I comandi sono differenti a seconda del contenitore multimediale.

Controllare un file AVI

Grazie al nutrito set di strumenti e librerie messi a disposizione dal progetto FFMPEG, possiamo eseguire un semplice comando per controllare i nostri filmati codificati nel contenitore AVI.

Il comando per eseguire il controllo completo sul nostro filmato è il seguente:

ffmpeg -v 5 -i il_mio_film.avi -f null -

Così si chiede ad ffmpeg di leggere tutto il filmato e di essere verboso nel segnalare problemi. L’ouput viene scartato, perciò il video non viene convertito né alcun’altra operazione viene eseguita. L’output è discretamente leggibile. Se desiderate avere dritte e dettagli su come interpretare più correttamente l’output ed eventualmente verificare gli errori, potrete trovare indicazioni in questa pagina.

MKV

Per quanto riguarda il formato Matroska, potete utilizzare lo strumento software sviluppato dal team stesso, cioè l’mkvalidator.

L’uso di questo programma è piuttosto  semplice, dal momento che esegue l’unico compito di eseguire un controllo su file in formato MKV:

mkvalidator --details il_mio_film.mkv

Dopo aver lanciato il comando vedrete scorrere dei punti, segno che il programma sta eseguendo la scansione di tutto il file. Attendete il completamento dell’operazione (a seconda della dimensione del file) e vedrete comparire il responso, compresi dettagli del file (grazie all’opzione –details).

Se avete una distribuzione derivata Debian (ivi compresa Ubuntu) AMD64, potete scaricare il programma già compilato da qui.

Conclusioni

Certo, sarebbe immensamente più utile che tali comandi possano essere eseguiti all’interno dei già citati programmi invece che utilizzare la riga di comando, ma nel frattempo abbiamo queste due alternative per testare i vostri video.

Chi avesse soluzioni alternative oppure da aggiungere, consigliate pure attraverso i commenti.

, , , ,

Nessun commento

Forzare la scansione di una partizione con fsck al successivo riavvio

Come sempre, ogni volta che ho un problema, riesco a scoprire qualcosa di nuovo. Questa volta riguarda la scansione del filesytem.

Ho notato, senza capirne ancora il motivo  (approfondirò), che, nonostante avessi superato (e di gran lunga) il numero di mount per far scattare il controllo del filesystem al riavvio del sistema, questa non avveniva.

Domanda: come faccio ad eseguire una scansione del filesystem contenente la root senza utilizzare una distribuzione Live ? Infatti, come qualcuno saprò, il comando che permette il check di una partizione, fsck, non è entusiasta di controllare partizioni montate, soprattutto se in lettura e scrittura. Questo, per la partizione di root, rappresenta un vincolo.

Ma niente paura, ecco la soluzione: per fare la scansione della partizione contenente la radice ( / o root) al successivo riavvio, è sufficiente creare il file forcefsck. Perciò:

sudo touch /forcefsck

Lo stesso effetto può essere ottenuto tramite il comando

sudo shutdown -rf now

, , , , , , ,

Nessun commento