Я создаю регистратор данных с 3 камерами, которые выводят данные в виде кадров jpeg (o.79MB/jpeg @24bit/pixel) со скоростью 24 кадра в секунду. Я хочу взять эти изображения и преобразовать их в видео. Каждое
Для видео я пытаюсь оценить размер видео и формат кодирования, который мне следует использовать для получения качества видео 1080p? И как оценить время, которое потребуется для кодирования видео?
Существует ли формула для оценки окончательного размера данных, которого можно достичь?
решение1
Существует ли формула для оценки окончательного размера данных, которого можно достичь?
Нет. Размер во многом зависит от выбранных вами настроек кодирования, то есть режима управления скоростью, среднего битрейта или среднего качества, частоты кадров, компромисса между эффективностью сжатия и скоростью, конкретного кодировщика и т. д.
Конечно, если у вас есть тривиальный процесс кодирования с постоянным битрейтом, то размер выходного файла легко подсчитать. Но в большинстве случаев вы бы предпочли не задавать фиксированный битрейт.
Для видео я пытаюсь оценить его размер и формат кодирования, который мне следует использовать для получения качества видео 1080p?
1080p просто относится к разрешению 1080 пикселей по вертикали. Нет никакого неотъемлемого "качества", связанного с этими размерами. Когда вы говорите о качестве, вы обычно классифицируете его как:
- без потерь (математически без потерь)
- визуально без потерь (различия между исходной и закодированной версией не видны человеческому глазу)
- с потерями
При выборе кодека без потерь, такого как raw YUV, FFV1 или HuffYUV, единственное, о чем вы беспокоитесь, — это размер файла. При выборе визуального кодека без потерь, такого как ProRes или DNxHD, вы все равно можете столкнуться с большими размерами файлов, которые не подходят для потоковой передачи в Интернете.
Что касается потерь, вам следует подумать о своих требованиях. Быстрое кодирование важнее небольшого размера файла? Вас беспокоят артефакты сжатия или видео должно транслироваться через Интернет и, следовательно, сжиматься? Планируете ли вы просто архивировать поток, чтобы посмотреть его позже?
В зависимости от ответа на вопросы выше, вы можете предпочесть однопроходный быстрый предустановочный код с низким и ограниченным битрейтом для веб-трансляции. Или вы можете захотеть двухпроходный медленный предустановочный код с режимом постоянного качества (например,ИРК в x264), если вам важна точность воспроизведения, но вы все равно хотите довольно небольшой размер.
И как оценить время, которое потребуется для кодирования видео?
Это зависит от возможностей вашего процессора, размеров пикселей и частоты кадров видео, его пространственно-временной сложности и параметров кодировщика. libx264
Например, с помощью у вас есть различные предустановки на выбор. СмотритеРуководство по кодированию FFmpeg H.264для получения некоторых советов.