Что такое cbr в mp3

Что такое cbr в mp3

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в 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). Используя такой тип кодирования, пользователь может выбирать как битрейт файла, так и его будущий размер — это основной плюс.

Источник

Что такое 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’а была идеальна. В основе этого метода лежит очень простая идея: на кодирование выделяется минимальное количество бит, необходимое для выполнения условия: [ошибка_кодирования]

Источник

Выбор битрейта для записи мультимедиа

Битрейт (bitrate, англ.) — означает величину (численность) бит, которая используется для записывания или передачи мультимедийного материала, длящегося на протяжении одной секунды. При фиксации мультимедийного (аудио и видео) контента в формате МР3 происходит его поблочное сжатие с помощью определённых процедур (алгоритмов). А эти алгоритмы подразделяются на виды в зависимости от битрейта (его величины). На каждый из таких блоков (фреймов) отводится от тридцати двух до трёхсот двадцати бит.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Кодирование

Алгоритмы VBR, CBR и ABR, используемые для кодирования в МР3-формате, не обеспечивают полную сохранность качества — оно теряется. Впрочем, это можно ощутить только при просмотре (проигрывании) лишь на качественной аппаратуре.

Для непрофессионального взгляда материал, записанный с использованием механизмов VBR, CBR и ABR, будет выглядеть вполне качественно.

Проведём анализ различий в алгоритмах VBR, CBR и ABR, для того чтобы знать, каким из них правильно воспользоваться для записи и последующего хранения или передачи файлов. Какой из них лучше для качества или для решения других задач.

Constant bitrate

Как видно из названия (constant — постоянный, англ.), в этой разновидности алгоритма на одну секунду материала выделяется постоянное количество бит. Все блоки равны друг другу.

Благодаря использованию CBR есть возможность заранее знать размер исходного файла или ширину потока. Это важно для передачи информации по каналам, обладающим ограниченной шириной.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Алгоритм Constant bitrate

Применение такого кодирования не идеально:

Недостатки качества при записи «сложных» участков решаются повышением битрейта, например, до максимальных 320 кбит/с, но при этом увеличивается ширина потока передачи или размер файла.

Variable bitrate

Легко догадаться, что такая разновидность метода (VBR) является переменной (variable — переменный, англ.).

Для такой кодировки характерно то, что битрейт в этом случае изменяется в процессе самого кодирования программой-кодеком. И зависит битрейт в указанном случае от насыщенности звукового или видеоматериала.

То есть при выборе VBR-кодирования программой для записи пустой картинки будет выбран меньший битрейт, а для записи насыщенных картинок или быстро сменяющихся изображений — больший.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Алгоритм Variable bitrate

Отрицательным моментом этого алгоритма является трудность предвидения предстоящих изменений. Увеличение битрейта при записи будет реально происходить с опозданием.

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

Поэтому CBR с максимальным значением в 320 кбит/с обеспечит большее качество.

Правда, в настоящее время появилась кодировка VBR 2 Pass.

Суть её в том, что программа сначала анализирует мультимедийный поток (в первый раз), а затем производит запись, сжимая её на основе данных, полученных при первичном сканировании. Это даёт лучший результат по качеству, и в этом смысле такая кодировка лучше.

Average bitrate

Average переводится с английского как усреднённый. Таковой является разновидность ABR, являющаяся в некотором роде помесью VBR и CBR.

Выбирая режим ABR, пользователь задаёт какое-то его значение в килобитах в секунду. Кодек же может изменять его в ту или иную сторону, придерживаясь установленного среднего значения.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Алгоритм 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 не оптимален со стороны качества, потому что поток не изменяется в зависимости от динамики и сложности видео.

Позволяет в сложных местах повышать битрейт и снижать степень сжатия, чтобы получать более качественное изображение. Переменный битрейт регулируется в зависимости от скорости изменения картинки. Например, битрейт статичного видеофрагмента (заката) будет значительно ниже, чем битрейт движения (автомобильной погони).

Больше полезной информации о видео технологиях вы можете найти здесь.

Источник

Внутри MP3. А как оно всё устроено?

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Однажды мне понадобилось решить простенькую (как мне тогда казалось) задачу – в PHP-скрипте узнать длительность mp3-файла. Я слышал о ID3 тегах и сразу подумал, что информация о длительности хранится либо в тегах, либо в заголовках mp3-файла. Поверхностные поиски в интернете показали что за пару-тройку минут решить эту задачу не получится. Поскольку от природы я довольно любопытен а время не поджимало — решил не использовать сторонние инструменты а разобраться в одном из самых популярных форматов самостоятельно.

Если Вам интересно, что там внутри – добро пожаловать под кат (трафик).

В данной статье мы не будем подробно останавливаться на извлечении ID3v2 тегов – это можно вынести в отдельную статью, так как там есть различные нюансы. А так же на фрагментах заголовков, которые практически не используются в настоящее время (например, часть Emphasis заголовка mp3-фрейма). Так же мы не рассматриваем структуру самих аудиоданных — тех самых, которые слышим из колонок.

ID3 теги

ID3 (от англ. Identify a MP3) — формат метаданных, наиболее часто используемый в звуковых файлах в формате MP3. ID3 подпись содержит данные о названии трека, альбома, имени исполнителя и т. д., которые используются мультимедиапроигрывателями и другими программами, а также аппаратными проигрывателями, для отображения информации о файле и автоматического упорядочивания аудиоколлекции.

Существует две абсолютно разных версии ID3-данных: ID3v1 и ID3v2.

ID3v1 – имеет фиксированный размер в 128 байт, которые дописываются в конец mp3-файла. Там можно хранить: название трека, исполнитель, альбом, год, комментарий, номер трека (для версии 1.1) и жанр.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Довольно быстро всем стало понятно, что 128 байт – очень уж небольшое место для хранения таких данных. И поэтому, со временем, появилась и успешно используется вторая версия данных – ID3v2.
В отличии от первой версии, теги v2 имеют переменную длину и размещаются в начале файла, что позволяет поддерживать потоковое воспроизведение. (Формат ID3v2.4 позволяет так же хранить данные и в конце файла).
Данные ID3v2 состоят из заголовка и последующих фреймов ID3v2. Например, в версии ID3v2.3 существует более 70 типов фреймов.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

В данном случае вместе с заголовком ID3v2 (10 байт) – данные ID3v2 занимают 1024 байта.

После ID3v2-заголовка идут собственно теги. Подробный разбор чтения тегов ID3v2, как сказано выше, я решил не включать в эту статью.

Теперь у нас есть информация о наличии и длине тегов ID3 и мы можем приступать в разбору mp3-фрейма и понять-таки – где же хранится длительность. А заодно понять и всё остальное.

MP3-фрейм

Весь mp3-файл состоит из фреймов, которые можно извлекать только последовательно. Фрейм содержит в себе заголовок и аудио-данные. Поскольку мы не ставим себе целью написать прошивку для магнитофона – нас интересует именно заголовок фрейма.

О нем подробнее (куча таблиц и сухой информации)

Размер заголовка – 4 байта.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Режимы сжатия данных или какой бывает битрейт

Существует 3 режима сжатия данных:

CBR (constant bitrate) – постоянный битрейт. Не меняется на всем протяжении трека.

VBR (variable bitrate) – переменный битрейт. При этом сжатии битрейт постоянно меняется на протяжении трека.

ABR (average bitrate) – усредненный битрейт. Это понятие используется только при кодировании файла. На «выходе» получается файл с VBR.

Длительность = Размер аудиоданных / Битрейт (в битах!) * 8

Например, файл имеет размер 350670 байт. Есть ID3v1 теги (128 байт) и ID3v2 теги (1024 байта). Битрейт = 96. Следовательно размер аудиоданных равен 350670 – 128 – 1024 = 349518 байт.
Длительность = 349518 / 96000 * 8 = 29,1265 = 29 секунд

Необходимо пояснить – как определить режим сжатия. Всё просто. Если файл сжат с VBR – то добавляется VBR-заголовок. По его наличию мы и можем понять, что используется переменный битрейт.
Есть два вида заголовков: Xing и VBRI.
Xing размещается со смещением от начала первого mp3-фрейма в позиции, согласно таблице:

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Например: у нас ID3v2 тег занимает 1024 байта. Если наш mp3-файл имеет режим канала «Стерео» — то заголовок VBR Xing будет начинаться со смещения 1024 + 32 = 1056 байт.

Заголовок VBRI всегда размещается со смещением +32 байта от начала первого mp3-фрейма.

Первые четыре байта в обоих заголовках содержат маркер ‘Xing’ или ‘Info’ для Xing. И ‘VBRI’ для VBRI.

Эти VBR заголовки имеют переменную длину и содержат различную информацию о кодировании файла. Подробнее о структуре заголовков VBR (и не только) можно почитать, например, тут.

Я же расскажу только о том, что нас интересует в данный момент. А именно – количество фреймов (Number of Frames). Это число длиной 4 байта.
В заголовке Xing оно содержится по смещению +8 байт от начала заголовка. В VBRI +14 байт от начала заголовка.

Используя таблицу Сэмплов на фрейм (Sampler Per Frame) мы можем получить длительность mp3-файла, закодированного с переменным битрейтом.

Что такое cbr в mp3. Смотреть фото Что такое cbr в mp3. Смотреть картинку Что такое cbr в mp3. Картинка про Что такое cbr в mp3. Фото Что такое cbr в mp3

Длительность = Количество фреймов * Сэмплов на фрейм / Частоту дискретизации

Например: из заголовка VBRI получили количество фреймов 1118, сэмплов на фрейм = 1152. Частота дискретизации = 44100.
Длительность = 1118 * 1152 / 44100 = 29.204 = 29 секунд.

На этом на сегодня всё. Если был кому-то полезен — спасибо.

Для тех, кто захочет немедленно поковырять внутренности mp3 — Тут лежат скрипт на php, которые я писал для себя одновременно с данной статьей и четыре небольших mp3-файла для теста.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *