



Senza ombra di dubbio l’operazione più snervante per me è convertire file MIDI in audio e poi scriverli su un cd. Il problema non si pone quando è un solo file ma quando devo passare un’intera compilation su cd… Da poco ho trovato una soluzione quasi magica a questo problema…
Allora come sistema operativo uso Kubuntu 7.10 e timidity++ come server midi.
Tramite la shell il comando con cui si converte un file MIDI in formato WAV-RIFF, adatto per l’incisione di un CD, è il seguente:
timidity -Ow -s 44100 file_midi -o file_wav
successivamente tramite shell o un programma grafico si possono trasferire i file su un cd vuoto. In questo modo la conversione dei file midi deve essere fatta sempre ad uno ad uno, cosa molto tediosa, possiamo fare in modo che vengano convertiti tutti i file MIDI presenti in una determinata cartella e trasferiti su cd in modo automatizzato. Per risolvere questo problema si può utilizzare uno script adatto allo scopo. Di seguito uno script commentato in ogni parte.
#!/bin/sh
##
## midi2cd MIDI_FILE...
##
#
# Modificare questa variabile per indicare le coordinate del
# masterizzatore.
#
DEV="0,0,0"
#
# Se si tratta di un masterizzatore ATAPI che non è riconosciuto
# da Cdrdao, conviene assegnare la stringa "--driver generic-mmc".
#
CD_DRIVER=""
#
# I file MIDI vengono forniti come argomenti della riga di comando.
#
MIDI_LIST="$@"
#
# Collocazione dei file temporanei.
#
TEMPORARY=`tempfile`
rm -f $TEMPORARY
mkdir $TEMPORARY
TOC="$TEMPORARY/TOC"
#
# Variabile usata per numerare sequenzialmente le tracce.
#
N="0"
#
# File correnti.
#
MIDI=""
WAV=""
#
# Inizia il file TOC di Cdrdao.
#
echo CD_DA > $TOC
#
# Si convertono i file MIDI.
#
for MIDI in $MIDI_LIST
do
#
# Incrementa N.
#
N=$(($N+1))
#
# Definisce il nome da dare al file WAV: usa il numero sequenziale
# e gli aggiunge l'estensione.
#
WAV="$TEMPORARY/$N.wav"
#
# Converte il file MIDI.
#
timidity -Ow -s 44100 $MIDI -o $WAV
#
# Aggiunge le informazioni necessarie nel file TOC di Cdrdao.
#
echo // Track $N >> $TOC
echo TRACK AUDIO >> $TOC
echo NO PRE_EMPHASIS >> $TOC
echo TWO_CHANNEL_AUDIO >> $TOC
echo AUDIOFILE \"$WAV\" 0 >> $TOC
#
done
#
# Incide il CD.
#
cdrdao write \
--overburn \
-v 2 \
--buffers 128 \
--speed 4 \
--device $DEV \
$CD_DRIVER \
$TOC
lo script seguente si potrebbe chiamare midi2cd ed eseguendolo in una qualsiasi cartella (es: midi2cd *.mid) converterà in automatico i file midi in audio e li scriverà su cd. Nell’utilizzare questo script bisogna considerare alcuni punti:






More Options ...
Categories
Tag Cloud
Blog RSS
Comments RSS

Void « Default
Life
Earth
Wind
Water
Fire
Light 