1

Я пытаюсь конвертировать все видеофайлы разных форматов и качеств в один полустандартный формат. К счастью, avconv делает это достаточно просто. Это команда, которую я использую:

IFS=$'\n'; 
for i in *; 
    do avconv -stats -y -i $i -acodec ac3 -ab 192k -c:v libx264 -crf 23 -s:v 1136x640 converted/${i%%.*}.mp4;
done

Однако есть одна проблема: поскольку все исходные файлы имеют разные качества, иногда возможно, что исходные файлы имеют более низкое разрешение или качество звука, чем параметры, которые я использую (192k/1136x640). Мне кажется, что когда у нас есть исходный файл, например, 161k/640x480, avconv попытается увеличить разрешение и битрейт аудио. Хотя я могу ошибаться, если это так, пожалуйста, поправьте меня.

Мне интересно, есть ли простой способ (т. Е. Аргумент командной строки для avconv), который "сделал бы правильные вещи", чтобы исходный файл имел размер 256k/1920x1080 и преобразовал его в 192k/1136x640, но когда исходный файл будет 161k/640x480, тогда он просто конвертирует его в 161k/640x480 в указанном формате? На данный момент у меня просто есть скрипт на python, который использует mediainfo для получения информации, а затем автоматически выбирает правильный битрейт и разрешение звука перед передачей их в качестве параметров в avconv.

Заранее спасибо!

0