Ошибка загрузки с установкой 12.04, исправлена ​​путем обновления с 10.04

У меня есть shell-скрипт, который использует mplayer (поэтому он может конвертировать все, что может играть mplayer), чтобы извлечь аудио, а затем закодировать его с помощью lame. Вот код:

#! /bin/bash
# any2mp3.sh
# Converts to mp3 anything mplayer can play
# Needs mplayer amd lame installed

[ $1 ] || { echo "Usage: $0 file1.wma file2.wma"; exit 1; }

for i in "$@"
do
    [ -f "$i" ] || { echo "File $i not found!"; exit 1; }
done

[ -f audiodump.wav ] && {
    echo "file audiodump.wav already exists"
    exit 1
}

for i in "$@"
do
    ext=`echo $i | sed 's/[^.]*\.\([a-zA-Z0-9]\+\)/\1/g'`
    j=`basename "$i" ".$ext"`
    j="$j.mp3"
    echo
    echo -n "Extracting audiodump.wav from $i... "
    mplayer -vo null -vc null -af resample=44100 -ao pcm:waveheader:fast \
    "$i" >/dev/null 2>/dev/null || {
        echo "Problem extracting file $i"
        exit 1
    }
    echo "done!"
    echo -n "Encoding to mp3... "
    lame -m s audiodump.wav -o "$j" >/dev/null 2>/dev/null
    echo "done!"
    echo "File written: $j"
done
# delete temporary dump file
rm -f audiodump.wav

Сначала вам нужно apt-get install mplayer lame. После этого поместите код в файл с именем «any2mp3.sh», дайте разрешение на выполнение и поместите его в свой $ PATH, и вы сможете это сделать:

$ any2mp3.sh file.mp4 another-file.wma yet-another.file.ogg

It будет конвертировать каждый файл, переданный в mp3 с тем же именем.

Немного грубо, но выполняет эту работу.

0
задан 8 May 2012 в 01:44

0 ответов

Другие вопросы по тегам:

Похожие вопросы: