Я пишу скрипт bash для автоматического извлечения аудиодорожки из видеофайла с помощью avconv
. Этот скрипт должен обрабатывать любой видеоформат и извлекать звуковую дорожку без сохранения исходного кодека. Например:автоматически извлекает звуковую дорожку и файл имени из видео с помощью avconv
extract_audio name.flv
где звуковая дорожка файла FLV является mp3, должен производить файл с именем name.mp3
, но если она содержит и ААС трек он должен производить aumatically name.aac
Пока мой сценарий выглядит следующим образом это:
#!/bin/bash
dryname=${1%.*} #get remove video extention
avconv -i "$1" -vn -acodec copy "${dryname}.${audio_extension}"
Единственная часть, которая мне не хватает, как получить кодек, используемый в звуковой дорожки видеофайла. Я уверен, что это можно сделать с помощью команды avconv
, но я не могу понять это на странице справки.
Может 'avprobe' будет лучше, чем' avconv -i'. – v010dya
Оба «avconv -i» и «avprobe» дают идентичный результат о видео и аудио данных. Таким образом, не имеет значения, какой из них вы используете. – ajaaskel
Точно, но «avconv -i» выполняет больше операций, поэтому, если вам нужен только вывод, вы должны использовать правильный инструмент для задания. – v010dya