???
Математика на уровне МГУ

Показано с 1 по 25 из 379

Тема: FAQ по созданию фильмов

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #6
    . Аватар для Maximus_G
    Регистрация
    09.04.2002
    Адрес
    Владивосток
    Возраст
    46
    Сообщений
    10,064
    2 BeRuSa:

    Имхо, разрешение стоит ставить никак не меньше 320х240, это самый худший вариант. Оптимум, имхо - в районе 450-600 по горизонтали и 360-480 по вертикали - тогда получается достаточно детально (выигрывает восприятие) и не слишком тяжело для модемщиков.

    О битрейте.
    Всё взаимосвязано. Нет смысла оставлять большое разрешение, если видео придется ужимать сильно, вплоть до появления артефактов сжатия. С другой стороны, нужно не переборщить с битрейтом.

    Способ универсальной оценки оптимального битрейта есть. Как правильно заметил deSAD, нужно экспериментировать, но не так уж и много. В большинстве случаев можно с первого раза попадать в около-оптимальную точку.

    Так вот, способ очень простой. Качество картинки, сжатой выбранным кодеком, характеризуется количеством бит видеопотока, приходящимся на один пиксель в одном кадре видеопотока. Для краткости назову этот показатель БПК (бит/пиксель*кадр) (привет морякам )

    К примеру, у нас есть видео длительностью 10 секунд, со скоростью 25 кадров в секунду и разрешением 512х360, без звука, и этот файл занимает 3 мегабайта. Таким образом, БПК равен:

    БПК = 3мбайт * 1024 * 1024 * 8 / (25фпс * 10сек * 512x * 360y) = 0.546 бит/(пиксель*кадр).

    Проще говоря, мы считаем общее количество пикселей и делим его на количество бит во всём нашем видео.

    Далее. Кодеки характеризуются своей способностью сжимать видео с той или иной степенью сжатия. Т.е., мы можем взять 2 кодека и провести серию экспериментов, сжимая ими одно и то же видео так, чтобы результирующее качество было одинаковым. В конце концов, оказалось, что один из кодеков справился с задачей лучше - размер его видео меньше. И совершенно так же - мы можем сжимать это видео так, чтобы результирующие файлы этих двух кодеков были одинаковы по размеру. И мы увидим, что хоть размеры и одинаковы, но один из кодеков при этом обеспечивает лучшее качество картинки, нежели другой.

    Так вот, БПК нужен именно для того, чтобы оценивать способность кодека обеспечивать нам нужное качество. Например, ДиВКС 5.1.1 обеспечивает приемлемое качество средней по сложности картинки при БПК=0.15.

    Зная эту цифру, мы можем посчитать, каков будет оптимальный размер нашего файла-примера:

    0.15бпк * 10сек * 25фпс * 512x * 360y = 6912000 бит. Переводим в мбайты ( / 1024 / 1024 / 8) = 0.824 мбайта.

    Заметка. Приведенный мной БПК=0.15 для DivX5.1.1 относится именно к картинке средней сложности. Дело в том, что кодекам в силу своих свойств проще сжимать одни картинки, и сложней - другие. Если брать в примеры фильмы, то мелодрамы сжимаются легко (большинство сцен - медленные, статичные, в помещениях), экшены-боевики - тяжело (очень много движения и большие перепады яркости при взрывах и стрельбе) . Однако, все рекорды по сложности бьют передачи "В мире животных" - кадры природы содержат очень сложную текстурную структуру - чего только стоят трава, деревья, да всё это на ветру.

    При большом количестве движения, большой детализации и больших перепадах яркости показатель БПК для DivX5 составляет 0.2-0.3. Однако, превышать 0.4 в любом случае, имхо смысла нет.

    И наконец. Допустим, мы оценили будущий размер видеопотока. Это прекрасно, но нам-то нужны 2 другие цифры: битрейт, который мы укажем кодеку, и итоговый размер файла.

    Битрейт: берем посчитанный нами размер видеопотока и делим на длительность видео. Переводим из мегабайт в секунду в килобиты в секунду ( * 1024 * 1024 * 8) - и вуаля.

    Итоговый размер файла: это нам нужно знать (и подгонять), когда мы ограничены в дисковом пространстве и т.д. Чтобы его посчитать, вспомним, из чего складывается размер файла:

    1. Заголовок - 8 килобайт,
    2. Видеопоток,
    3. Аудиопоток,
    4. Синхронизирующий поток.

    С первыми 2 всё уже понятно.

    3. Просто решаем, с каким постоянным битрейтом будем сжимать (можно и с переменным, но не здесь ). Допустим 128кбпс. Это соответствует 16 килобайтам в секунду. Умножаем на длительность видео, получаем итоговый размер.

    4. Этот поток получается совсем разный, и конкретной зависимости его битрейта от параметров видеофайла я не обнаружил. Обычно его битрейт лежит в пределах 0.5 - 1 кбайт/сек.

    Складываем это всё, получаем итоговый размер. Не укладываемся? Уменьшаем БПК. Есть запас? Увеличиваем. Всё это делается заранее, 10 строками в Экселе.

    ---(сообщение исправлено: я неправильно посчитал порядок - все значения БПК в 10 раз меньше. Ох )---
    Крайний раз редактировалось Maximus_G; 22.12.2003 в 09:51.
    "Как говорит наш дорогой шеф, в нашем деле главное - реализьм!" (c) к/ф "Бриллиантовая рука"

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •