Я использую ffmpeg для преобразования домашнего видео в формат DVD и хочу рассчитать размер выходного файла перед преобразованием.
Мой входной файл имеет скорость передачи 7700 кбит / с и длится 114 секунд. Битрейт аудио 256 кбит (в секунду?) Размер входного файла 77 МБ. Чтобы получить эту информацию, я запустил:
mplayer -vo null -ao null -frames 0 -identify input.MOD
Итак, теоретически входной файл должен иметь (примерно) размер файла:
(( 7700/8) * 114) / 1024
То есть (7700/8) - это килобайты в секунду, умноженные на 114 секунд, а затем преобразованные в мегабайты. Это дает мне 107 МБ, что намного больше моих 77. Таким образом, я скептически отношусь к его формуле.
Тем не менее, после преобразования видео:
ffmpeg -i input.MOD -y -target ntsc-dvd -sameq -aspect 4:3 output.mpg
Кажется, цифры имеют больше смысла. Битрейт составляет 9000 кбит / с, и, применяя приведенную выше формулу, я получаю 125 МБ, а фактический размер выходного файла - 126 МБ.
Итак, два вопроса:
Как учесть битрейт звука в этом расчете? Является ли он аддитивным (размер видеофайла + размер аудиофайла)?
Всегда ли DVD имеют скорость 9000 килобит в секунду? Это определение DVD? Или это может измениться в зависимости от качества моего входного видео? Что гарантирует "-target ntsc-dvd" относительно моего видео?
Почему мой входной файл не "соответствует" расчету, а выходной файл соответствует? Есть ли другие переменные, которые я не учитываю?
Как правильно рассчитать размер файла?