Home > Guide > Script Nautilus per conversione audio / video

Script Nautilus per conversione audio / video

Diverse volte mi sono trovato nella necessità di convertire rapidamente dei file video (es. file FLV) in formati adatti a lettori multimediali, quindi i classici MP3 per l’audio e AVI-Xvid per il video. Ho cercato e provato diversi programmi grafici per fare questo in Ubuntu (vedi miei post su WinFF), ma non mi hanno mai convinto del tutto.

Visto che le mie esigenze erano molto semplici, ho pensato quindi di farmi due script Nautilus da richiamare rapidamente dal gestore file, con il tasto destro:

Esempio di menu Nautilus script

In questi script ho utilizzato avconv per la conversione (il sostituto di ffmpeg in Ubuntu), ma se si usa ancora FFmpeg dovrebbe bastare sostituirne il comando “avconv” con “ffmpeg”.

Per avere un riscontro dell’esecuzione della conversione, che altrimenti avverrebbe in una shell senza alcun output, ho utilizzato Zenity, che si può installare con il comando seguente:

sudo apt-get install zenity

Questo lo script per la conversione in MP3, per cui non è necessario passare alcun particolare parametro ad avconv (il formato viene stabilito dall’estensione del file di output):

#!/bin/bash
NUMBER_OF_FILES=$#
PROGRESS=0
let "INCREMENT=100/$NUMBER_OF_FILES"
(for arg do
 echo "$PROGRESS";
 echo "# Conversione in corso: $arg";
 avconv -y -i "$arg" "${arg%.*}.mp3"
 let "PROGRESS+=$INCREMENT"
done
) | zenity --progress  --title="Conversione in MP3" --percentage=0 --auto-kill --auto-close

Questo lo script per la conversione video in AVI con codifica Xvid, per cui invece è necessario specificare il codec video MPEG4 (-vcodec mpeg4) e la codifica Xvid (-vtag xvid):

#!/bin/bash
NUMBER_OF_FILES=$#
PROGRESS=0
let "INCREMENT=100/$NUMBER_OF_FILES"
(for arg do
 echo "$PROGRESS";
 echo "# Conversione in corso: $arg";
 avconv -y -i "$arg" -acodec libmp3lame -vcodec mpeg4 -vtag xvid "${arg%.*}.avi"
 let "PROGRESS+=$INCREMENT"
done
) | zenity --progress  --title="Conversione in AVI-Xvid" --percentage=0 --auto-kill --auto-close

Gli script vanno inseriti in due file distinti nella cartelle seguenti (raggiungibile anche dal gestore file con tasto destro > Script > apri cartella degli script, che compare però quando c’è già almeno uno script):

Nautilus 3.4 o precedente: ~/.gnome2/nautilus-scripts
Nautilus 3.6 o successsivo: ~/.local/share/nautilus/scripts

Il nome dato al file sarà il nome della voce di menu, non è quindi necessaria l’estensione .sh.

Modifica 19 agosto 2014 – Mi è capitato di dover convertire dei video registrati con la TV (di marca Haier), che avconv non è in grado di leggere. Ho quindi creato una nuova versione dello script di conversione in AVI utilizzando Mencoder, che riporto di seguito. L’unica differenza è la sostituzione del comando avconv con mencoder. Non mi è risultato necessario specificare esplicitamente la codifica XVID, in quanto il default per l’output AVI.

#!/bin/bash
NUMBER_OF_FILES=$#
PROGRESS=0
let "INCREMENT=100/$NUMBER_OF_FILES"
(for arg do
 echo "$PROGRESS";
 echo "# Conversione in corso: $arg";
 mencoder "$arg" -o "${arg%.*}.avi" -oac mp3lame -ovc lavc
 let "PROGRESS+=$INCREMENT"
done
) | zenity --progress  --title="Conversione in AVI-Xvid" --percentage=0 --auto-kill --auto-close
Categorie:Guide Tag:, ,
  1. Non c'è ancora nessun commento.
  1. No trackbacks yet.

Lascia un commento

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: