Что такое vbr в mp3
Что такое vbr в mp3
На сегодняшний день формат MP3 является самым популярным форматом кодирования аудио файлов из всех существующих. Общепринято считать, что качество звуковой дорожки зависит от её битрейта, поэтому самый оптимальный битрейт для звуковой дорожки — 192 кбит/сек. Это утверждение, однако, является однобоким, ведь помимо битрейта качество звука зависит от кодека, в котором аудиозапись была записана.
Выделяют три основных типа кодирования MP3 файлов — это CBR, VBR и ABR.
CBR (Constant bitrate) расшифровывается как постоянный битрейт, который был задан пользователем при записи или кодировании и который не меняется в дальнейшем. То есть, независимо от типа данных (пусть даже вы записываете тишину) за 1 секунду кодируется постоянно количество бит, указанное пользователем. Такой тип кодирования идеально подходит для данных, которые пропускаются через ограниченные мультимедийные каналы, позволяя использовать все возможности данного канала. Минусом такого типа кодирования является громоздкие объемы полученных данных, которые нерационально используют дисковое пространство.
VBR (Variable bitrate) с английского переводится как изменяющийся (переменный) битрейт. При кодировке в VBR мы получаем файл, битрейт которого изменяется в зависимости от густоты потока данных (то есть, к примеру, битрейт тишины будет ниже, чем битрейт какого-либо звука). Такой тип кодирования продолжает совершенствоваться, достигая новых показателей амплитуды изменения битрейта потока данных. Основным минусом является то, что невозможно предугадать будущий размер кодируемого файла. Несмотря на это, данный минус никак не омрачит общую картину: размер файла получается меньше, чем при кодировании по типу CBR. Это получается за счёт того, что битрейт тишины или тихих звуков меньше. Последние версии Lame имеют функцию кодирования в VBR, качество которого на порядок выше ABR, а размер меньше, чем CBR.
Третьим типом кодирования является ABR (Average bitrate), который представляет собой нечто среднее между предыдущими двумя типами кодирования. Расшифровывается как средний битрейт. Пользователь имеет возможность указать битрейт, а программа Lame подгоняет канал данных под эту частоту. Единственным минусом такого вида кодирования является то, что выходной файл будет иметь ухудшенное качество (однако лучше, чем CBR и хуже чем VBR). Используя такой тип кодирования, пользователь может выбирать как битрейт файла, так и его будущий размер — это основной плюс.
Выбор битрейта для записи мультимедиа
Битрейт (bitrate, англ.) — означает величину (численность) бит, которая используется для записывания или передачи мультимедийного материала, длящегося на протяжении одной секунды. При фиксации мультимедийного (аудио и видео) контента в формате МР3 происходит его поблочное сжатие с помощью определённых процедур (алгоритмов). А эти алгоритмы подразделяются на виды в зависимости от битрейта (его величины). На каждый из таких блоков (фреймов) отводится от тридцати двух до трёхсот двадцати бит.
Кодирование
Алгоритмы VBR, CBR и ABR, используемые для кодирования в МР3-формате, не обеспечивают полную сохранность качества — оно теряется. Впрочем, это можно ощутить только при просмотре (проигрывании) лишь на качественной аппаратуре.
Для непрофессионального взгляда материал, записанный с использованием механизмов VBR, CBR и ABR, будет выглядеть вполне качественно.
Проведём анализ различий в алгоритмах VBR, CBR и ABR, для того чтобы знать, каким из них правильно воспользоваться для записи и последующего хранения или передачи файлов. Какой из них лучше для качества или для решения других задач.
Constant bitrate
Как видно из названия (constant — постоянный, англ.), в этой разновидности алгоритма на одну секунду материала выделяется постоянное количество бит. Все блоки равны друг другу.
Благодаря использованию CBR есть возможность заранее знать размер исходного файла или ширину потока. Это важно для передачи информации по каналам, обладающим ограниченной шириной.
Алгоритм Constant bitrate
Применение такого кодирования не идеально:
Недостатки качества при записи «сложных» участков решаются повышением битрейта, например, до максимальных 320 кбит/с, но при этом увеличивается ширина потока передачи или размер файла.
Variable bitrate
Легко догадаться, что такая разновидность метода (VBR) является переменной (variable — переменный, англ.).
Для такой кодировки характерно то, что битрейт в этом случае изменяется в процессе самого кодирования программой-кодеком. И зависит битрейт в указанном случае от насыщенности звукового или видеоматериала.
То есть при выборе VBR-кодирования программой для записи пустой картинки будет выбран меньший битрейт, а для записи насыщенных картинок или быстро сменяющихся изображений — больший.
Алгоритм Variable bitrate
Отрицательным моментом этого алгоритма является трудность предвидения предстоящих изменений. Увеличение битрейта при записи будет реально происходить с опозданием.
Кроме того, фрагменты, звучащие тихо, воспринимаются при VBR-кодировании как фрагменты, не несущие важности, и под них на этом основании выделяется минимальный битрейт.
Поэтому CBR с максимальным значением в 320 кбит/с обеспечит большее качество.
Правда, в настоящее время появилась кодировка VBR 2 Pass.
Суть её в том, что программа сначала анализирует мультимедийный поток (в первый раз), а затем производит запись, сжимая её на основе данных, полученных при первичном сканировании. Это даёт лучший результат по качеству, и в этом смысле такая кодировка лучше.
Average bitrate
Average переводится с английского как усреднённый. Таковой является разновидность ABR, являющаяся в некотором роде помесью VBR и CBR.
Выбирая режим ABR, пользователь задаёт какое-то его значение в килобитах в секунду. Кодек же может изменять его в ту или иную сторону, придерживаясь установленного среднего значения.
Алгоритм Average bitrate
Метод ABR выгодно отличается от других назначаемым количеством бит в секунду. Вы можете выбирать абсолютно любой числовой параметр от 8 до 320. В то время как кодировка CBR может использовать только шестнадцатикратное значение.
Из вышеизложенного следует, что если для результата важен размер полученного файла, то для высшего качества лучше присмотреться к кодировке ABR или CBR.
В противном же случае обратить внимание на метод VBR 2 Pass.
В этой статье вы ознакомились с кодировками VBR, CBR и ABR. Теперь вы знаете, чем отличается каждая из них, какая лучше для вашей конкретной задачи и какую из них нужно выбрать.
Что такое битрейт? Какая разница между CBR и VBR?
Битрейт — основополагающий параметр сжатия видео. Он выражает общую степень сжатия потока и тем самым определяет размер требуемого канала передачи данных. Чем выше битрейт, тем больше деталей видеоизображения удается сохранить, и тем реалистичнее выглядит видео. При выборе битрейта всегда приходится находить баланс между качеством кодирования и размером канала.
Существует два основных подхода к распределению битов в потоке: постоянный (constant bitrate — CBR) и переменный (variable bitrate — VBR) битрейты. Под постоянным и переменным битрейтом инженеры могут подразумевать две разные вещи. При вещании имеется в виду постоянное или переменное количество бит, которое передается за 1 секунду. При кодировании — постоянное и переменное наполнение и опустошение буфера с одной или разной скоростью.
CBR показывает стабильный уровень битрейта независимо от сцены, не создает резких перепадов нагрузок. CBR не оптимален со стороны качества, потому что поток не изменяется в зависимости от динамики и сложности видео.
Позволяет в сложных местах повышать битрейт и снижать степень сжатия, чтобы получать более качественное изображение. Переменный битрейт регулируется в зависимости от скорости изменения картинки. Например, битрейт статичного видеофрагмента (заката) будет значительно ниже, чем битрейт движения (автомобильной погони).
Больше полезной информации о видео технологиях вы можете найти здесь.
Что такое CBR, ABR, VBR?
Автор: Александр Радзишевский (Alex Y. Radzishevsky)
Copyright (C) 1998-2007, Alex Y. Radzishevsky
Что такое CBR и VBR?
Как известно, результатом кодирования сигнала с помощью такого алгоритма, как, например, MPEG-1 Layer III (MP3) (и множества других алгоритмов), является бит-поток с фреймовой (блочной) структурой. Это объясняется тем, что кодирование исходного потока производится не целиком, а по частям. То есть фактически исходный поток разделяется на блоки определенной фиксированной длины, затем каждый блок (фрейм) в отдельности подвергается кодированию и результат (кодированный блок информации) направляется в результирующий поток (будь то файл или поток данных).
Каковы отличия режимов CBR, VBR и ABR применительно к кодеру Lame?
Прежде чем начать разговор, уточним две детали:
1. Кодирование в MP3 происходит поблочно: кодируемый файл разбивается на фреймы (кадры) с одинаковым интервалом, каждый кадр кодируется и записывается в выходной поток; таким образом, выходной поток также имеет кадровую структуру.
2. Фреймы могут быть закодированы не на любом битрейте, а только на одном из входящих в таблицу стандартных для MPEG1 Layer III битрейтов: 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320. Кодирование на любых промежуточных битрейтах («freeformat») стандартом не предусмотрено.
Люди, использующие VBR в Lame, обычно аргументируют это фразой: «я хочу получать постоянное качество, а не постоянный битрейт». Действительно, ведь в музыке бывают простые пассажи, на которые вполне хватает и 128 Кбит/сек (например паузы между песнями), а бывают и сложные, на которых человек с хорошим слухом, хорошей аудио картой и прочей аудиоаппаратурой услышит дефекты компрессии даже на 320 Кбит/сек. На самом деле такой аргумент не совсем правомочен.
Даже в режиме CBR, mp3-кодер может перераспределять биты во времени, выделяя большее или меньшее количество бит во время сложного или простого пассажей, что позволяет в целом улучшить качество звучания. Такое перераспределение бит делается за счёт так называемого резервуара бит: во время кодирования простых пассажей кодер тратит на них не весь заданный пользователем битрейт, а лишь около 90%, около 10% экономится в резервуаре для кодирования сложных мест (изначально резервуар пуст). При кодировании сложных пассажей кодер будет использовать все 100% указанного битрейта и добавлять дополнительные биты из резервуара (если таковые имеются, то есть если резервуар не пуст). К сожалению, в соответствии со стандартом, размер резервуара ограничен. Это означает, что если простой сигнал продолжается достаточно долго, резервуар накапливает свой объем до определенных максимально допустимых пределов и далее кодирование идёт уже с использованием всех 100% битрейта. И обратная ситуация: если сложный сигнал продолжается достаточно долго, из резервуара (постепенно) забираются все сэкономленные биты и далее кодирование идёт с использованием уже теперь всех 100% битрейта.
Главное отличие ABR от CBR в том, что в CBR все фреймы обязаны быть одного размера (то есть битрейт для всех фреймов должен быть одинаков), в ABR же это ограничение снято, соответственно, существует возможность вместо стандартного весьма ограниченного по размеру резервуара использовать практически бесконечный «виртуальный» резервуар. Выглядит это приблизительно следующим образом.
Простые пассажи кодируются меньшим количеством бит, на них берётся примерно 95% от указанного битрейта B, но теперь остаток не откладывается в резервуар, кодер просто берёт фрейм с меньшим битрейтом. Возникающая разница (оставшиеся биты) записывается в стандартный резервуар (не выбрасывать же оставшиеся биты. ). Пример. Допустим пришел «простой» пассаж. Тогда кодер берет все биты (если таковые есть) в резервуаре (настоящем), потом ищет ближайший стандартный битрейт, при котором суммарное количество бит, получившееся для этого фрейма (все биты из резервуара + взятый битрейт), составит 95% от заданного пользователем битрейта B, производит кодирование, а лишние биты (если они остались) снова сохраняет в резервуаре.
Методы оценки сложности сигнала
Таким образом, основное отличие CBR, ABR и VBR, как вы уже наверное поняли из сказанного выше, состоит в использовании разных методов подсчёта необходимого для кодирования каждого фрейма количества бит.
Методы оценки сложности сигнала: метод 1 (VBR)
Первый метод основан на вычислении «психоакустической маскировки» и «ошибки кодирования». Этот метод используется в VBR и теоретически должен был бы давать максимальное качество если бы психоакустическая модель Lame’а была идеальна. В основе этого метода лежит очень простая идея: на кодирование выделяется минимальное количество бит, необходимое для выполнения условия: [ошибка_кодирования]
Постоянный битрейт (CBR) против переменного битрейта (VBR) что выбрать?
Содержание:
Если вы хотите копировать музыку с компакт-дисков или иных носителей информации, на которых она хранится в не сжатом виде, в форматы с потерей качества, такие как MP3, WMA, AAC и другие вам нужно выбрать с каким битрейтом вы будете это делать, с постоянным (CBR) или переменным (VBR).
Метод кодирования с постоянным битрейтом (CBR)
CBR (Constant Bitrate) – при кодировании в CBR на всём протяжении музыкального файла битрейт будет оставаться неизменным и равным тому, какое значение вы выбрали.
Самыми распространёнными значениями являются следующие: 128, 192, 256, 320 кбит/с.
Преимущество кодирования CBR заключается в том, что файл будет обработан быстрее, что при кодировании, что при раскодировании. К тому же абсолютно любая программа или аппаратное средство, которые способно воспроизводить музыку из форматов MP3, WMA, AAC умеет это делать если она закодирована в CBR, чего нельзя сказать о переменном битрейте. Старое оборудование, или программы, не всегда поддерживают воспроизведение музыки с CBR.
Правда, нужно отметить, что музыка, закодированная в CBR, в итоге занимает больше памяти, чем та же музыка, но закодированная в VBR.
Чаще всего кодирование в CBR используют для тех случаев, когда она будет передаваться по сети, или когда заранее известно, что она будет воспроизводится на старом оборудовании.
Постоянный битрейт важен для музыки, которая будет передаваться по сети тем, что поток данных будет стабильным, и если он входит в рамки пропускной способности сетевого канала, то значит воспроизведение будет плавным, без рывков и прерываний. А вот если вещать музыку сжатую с переменным битрейтом, могут возникнуть трудности, когда кусок песни, который закодирован с максимальным битрейтом не будет проходить в пропускную способность канала, вызывая тем самым затыкания во время воспроизведения.
Вернуться к содержанию
Метод кодирования с переменным битрейтом (VBR)
VBR (Variable Bitrate) – при кодировании в VBR он не является константой, но постоянно меняется по мере воспроизведения.
Этот метод кодирования позволяет увеличить битрейт на сложных музыкальных участках, и уменьшать на простых, тем самым позволяя качеству оставаться примерно на одном уровне, но при этом экономя место в памяти.
VBR с успехом применяется и поддерживается большинством форматов и программного обеспечения.
Форматы, которые поддерживают VBR: MP3, WMA, OGG, AAC и другие.
Основным преимуществом переменного битрейта над постоянным заключается в экономии места в памяти для хранения музыки.
При кодировании в VBR используются более сложные и ресурсоёмкие алгоритмы, поэтому воспроизведение требует больших вычислительных мощностей от устройства. По этой причине некоторое старое оборудование может вообще не воспроизводить музыку с VBR.
Вернуться к содержанию
За счёт чего достигается экономия памяти при кодировании в VBR?
Алгоритмы сжатия анализируют не только сам звук, но и его сложность, раскладывая на элементарные составляющие. Таким образом, сложные участки музыки, где одновременно звучат множество инструментов, либо звук инструмента часто меняет свою тональность и громкость, кодируются с максимальным качеством. Но если в музыке появляются простые секунды, или вообще наступает тишина, эти кусочки кодируются с гораздо меньшим битрейтом.
За счёт этого подхода и достигается экономия памяти.
Но нужно всегда помнить о том, что основным недостатком VBR является невозможность воспроизведения музыки на старом оборудовании или на старом программном обеспечении.
Вернуться к содержанию
Какой тип кодирования выбрать: переменный или постоянный?
Если вы абсолютно уверены, что закодированная вами музыка будет воспроизводиться на современном оборудовании, то я рекомендую использовать переменный битрейт.
Если же ваша музыка будет воспроизводится на очень широком спектре оборудования, лучше подстраховаться и кодировать её с постоянным битрейтом.
Все телефоны, плееры и компьютеры, которые выпущены за последние 10 лет должны без проблем поддерживать воспроизведение в VBR, поэтому в подавляющем большинстве случаев я рекомендую использовать именно VBR.
Так музыка будет занимать меньше памяти, но в то же время сохранит высокое качество.
Особенно важно использовать VBR, если музыка будет хранится на портативных устройствах, вроде mp3 плееров или телефонов. Хоть в последнее время в них и встраивают довольно серьёзное количество памяти, её, всё же, желательно использовать экономно.
Вернуться к содержанию