Введение
Техника сжатия видео Smart Bitrate Control, обычно называемая SBC, представляла собой метод достижения значительно улучшенной эффективности сжатия видео с использованием видеокодека DivX 3.11 Alpha или проприетарного видеокодека MPEG4v2 от Microsoft и видеокодера Nandub. SBC опирался на две основные технологии для достижения этой повышенной эффективности: многопроходное кодирование и переменные интервалы ключевых кадров (VKI). SBC перестал широко использоваться после того, как разработка XviD и DivX достигла такого уровня, что они включили те же функции, которые SBC впервые внедрил, и могли предложить еще более эффективное сжатие видео без необходимости в специализированном приложении. Файлы, созданные с помощью SBC, совместимы с DivX 3.11 Alpha и могут быть декодированы большинством кодеков, поддерживающих видео ISO MPEG4.
Smart Bitrate Control, commonly referred to as SBC, was a technique for achieving greatly improved video compression efficiency using the DivX 3.11 Alpha video codec or Microsoft's proprietary MPEG4v2 video codec and the Nandub video encoder. SBC relied on two main technologies to achieve this improved efficiency: Multipass encoding and Variable Keyframe Intervals (VKI). SBC ceased to be commonly used after XviD and DivX development progressed to a point where they incorporated the same features that SBC pioneered and could offer even more efficient video compression without the need for a specialized application. Files created by SBC are compatible with DivX 3.11 Alpha and can be decoded by most codecs that support ISO MPEG4 video.
Технические детали
Кодек DivX 3.11 Alpha позволял пользователю контролировать три аспекта процесса кодирования: средний битрейт, интервал ключевых кадров и выбор между более плавным движением и большей детализацией изображения. DivX пытался закодировать весь фильм с указанным пользователем средним битрейтом, изменяя качество видео для достижения целевого значения. Это означало, что простые фрагменты видео, такие как статичные изображения, выглядели бы очень хорошо, а сложные, например, динамичные сцены, – очень плохо. Размещение ключевых кадров в DivX также было очень простым: ключевые кадры размещались только через интервал, выбранный пользователем, по умолчанию – каждые 300 кадров (10 секунд при 30 кадрах/с). Многопроходное кодирование Nandub выполнялось в два этапа: на первом этапе видео анализировалось (и информация записывалась в лог-файл), а на втором – создавался выходной файл. Вместо изменения качества изображения для достижения среднего битрейта, это позволяло SBC изменять битрейт для достижения среднего качества, используя более высокий битрейт для сложных сцен и более низкий – для простых. VKI размещал ключевые кадры только там, где это необходимо, например, при смене сцены, а не через фиксированный интервал. Это значительно повысило как эффективность сжатия, так и визуальное качество результирующего видео. Также существовал патч VKI (называемый DivX Scene Detect Patch), который позволял использовать функциональность VKI без Nandub, но его производительность была ниже, чем у алгоритмов VKI, включенных в Nandub. Nandub представлял собой модификацию видеокодера VirtualDub с открытым исходным кодом, выполненную Nando, и включал в себя функции SBC.