Сжатие звука в формате mp3. Предпосылки написания данной статьи было невысокое качество некоторых mp3 файлов, которые мне доставались, или которые я сам создавал. Как оказалось, можно улучшить звук в формате MPEG1 layer3. Для специалистов в этой статье вряд ли найдется что-то новое, для начинающих же некоторые положения могут оказаться полезными. Формат mp3 при всех его ограничениях получил тем не менее широчайшее распространение (что собственно, и покрывает значительную часть его недостатков. (Я не касаюсь других звуковых форматов со сжатием с потерями, т.к. принципы их в целом похожи). Особенность сжатия состоит в разделении всего спектра сигнала на отдельные полосы, и последующему анализу по психоакустической модели слуха, с удалением "несущественных" частей спектра. Затем формируются фреймы (кадры), причем в MPEG layer 3 последующий фрейм связан с предыдущим. Этим объясняется, кстати, невозможность склейки двух последовательных файлов без паузы. При самостоятельном создании mp3-файлов всегда приходится решать компромисс между размером файла и качеством звучания. Тут нужно определиться, что важнее. Я намеренно не затрагиваю тему авторских прав, т.к. тут каждый должен сам решить, нарушать или не нарушать закон. Если не уверены,не сжимайте. :) Когда оправдано применение формата mp3. Это хранение музыки (или речи) оговоренного качества (не Hi-end) архивного хранения. Это подразумевает, что дальнейшей обработки mp3-файла не будет, за исключением DSP-процессоров устройств воспроизведения (плееров, дискманов). Редактирование (разрезание) возможно, но только до уровня фрейма (может быть довольно неточно). Если же требуется (или возможно) редактирование с точностью до отсчета (например 1/44100 сек) то тогда придется использовать РСМ (WAV) - хотя этот несжатый формат имеет большой объем. К сожалению, в некоторых устройствах (например, цифровые пишущие плееры, диктофоны) есть неотключаемое сжатие. Звук, записанный этим устройством, дальнейшей обработке уже не подлежит (зак исключением разрезания -склейки). Режимы сжатия. Разрядность. Как правило, используется 16 или 8 бит. 8 бит - это очень мало, и для музыки неприемлимо, дальше будем считать, что используем 16 бит. Частота дискретизации. Может быть от 6000 до 44100Гц. (более высокие частоты не рассматриваем). Чем выше частота - нем выше качество звучания (при прочих равных параметрах) и объем сжатого файла. Как правило, все воспроизводящие устройства поддерживают частоту 44100Гц (равна частоте дискретизации компакт-диска, CDDA). Применение других частот, например, 32000Гц также возможно, но некоторые устройства, на которых предполагается проигрывать файлы, могут их не поддерживать (например, мне встретился муз.центр Самсунг, который поддерживал только 44100Гц). Так что без особой причины изменять этот параметр не следует. (bitrate) Битрейт, скорость потока. Важный параметр, определяющих степень сжатия. При его малых значениях возможно появление хлюпания, пропадания низких и высоких частот в выходном спектре, и других искажений. При высоких значениях получается файл большего объема с незначительной разницей в качестве звучания. Изменяемая скорость (variable bitrate, VBR). Это в определеннной мере компромисс между качеством звчания и размером результирующего файла. Но не все устройства могут его воспроизводить (по крайней мере, с 2000г мне подобных не встречалось) Как правило, значение битрейта лежит в пределах 128-256 кбит/с, хотя некоторые проигрыватели могут воспроизводить файлы с битрейтом 6-320кбит/с. Тип стерео сигнала. Если кодируемый сигнал стерео, то объединение двух каналов может быть выполненио разными способами. Dual mono - оба канала кодируются независимо. Самое высокое качество, и самый большой размер готового файла. Можно применять для аналоговых оцифрованных магнитных записей. Stereo - оба канала кодируются раздельно, но имеется общая часть потока, которая делится между каналами в зависимости от потребности каждого канала. Хорошо применять для цифровых источников и хороших аналоговых на средних битрейтах. Joint stereo - оба канала суммируются, и вычитаются - кодируется сумма и разность каналов (с пониженным потоком). Пригодно для самого сильного сжатия цифровых источников. (Для аналоговых, особенно стерео с магнитной ленты - обычно не годится). Соображения по выбору параметров сжатия. Программы сжатия могут не иметь настройки всех вышеприведеных параметров (тогда они работают, как правило, в 16 бит, 128кбит/с, Joint stereo). В целом настройка параметров сводится к выбору правильного битрейта. Источники сигнала. Цифровые. Отличаются хорошей временнОй и фазовой стабильностью (профессиональные записи). В зависимости от задач могут применяться режимы сжатия с битрейтами:(стерео) ниже 128 кбит/с - Joint stereo, популярная музыка невысокого качества. Необходимо тщательно проверять, т.к. качество отдельных композиций будет сильно различаться в зависимости от характера сигнала. 128 кбит/с - танцевальная музыка, и спокойная (окружающая фоновая) музыка например, для прослушивания в автомобиле, или т.п. месте. Был широко распространен в интернете, на компьютерных колоночках лучшее качество было не получить. 160 кбит/с - промежуточный вариант, звучание лучше (но и объем файла тоже). 192 кбит/с - качество, достаточное для популярной танцевальной (электронной) музыки, и как правило, для рок-музыки. Часто встречается в интернете. 256 кбит/с - достаточное для не очень сложной симфонической музыки, и радиовещания. 320 кбит/с - максимально достижимое качество формата. Возможно, стоит оценить возможность использования несжатого звука, например, CD-audio. Аналоговые, оцифрованные. Оцифровка аналоговых записей - отдельная большая тема. Ограничусь общими рассуждениями. Записи с грампластинок. Качество звука с пластинок может быть разным, но в целом неплохим (сильно зависит от изготовителя, проигрывателя, износа пластинки и иглы и т.п. причин). Основная проблема - рокот и потрескивания при воспроизведении. Рекомендации - использвать наилучий из возможных проигрывателей. пластинку тщательно вымыть и высушить. Это опасная операция - если не умеете, лучше не рискуйте. настроить силу прижима и антискатинг (при наличии регулировок) на проигрывателе. использовать наименее изношенную иглу. во время оцифровки исключить вибрации (не ходить, не хлопать дверями, не включать громко контрольные мониторы). Записи с теле-радио эфира. Записи с телефэира во первых, моно (как правило), во вторых более низкого качества, чем с радио. Так что и кодировать в стерео режиме нет смысла. Внимание! Некоторые проигрыватели могут не понимать моно-запись! (хотя такие проигрыватели давно должны быть сданы в утиль). Звук с телеэфира в целом ровный (плотный), компрессор на студии уже поработал. Основная проблема телеэфира - шум и возможные искажения. Так что верояно, придется поработать с фильтрами и шумопонижением в редакторе. Запись с радио (ДВ,СВ,КВ) - шумная, с непостоянным уровнем и ограниченным частотным диапазоном. Прежде всего ее нужно в редакторе очистить от шума, "пройтись компрессором" и нормализовать. Запись с УКВ (FM) - высокого качества в зоне уверенного приема. Но следует помнить, что в настоящее время сигнал идет в эфир через цифровую обрботку, и подвергается сжатию. Поэтому качество записи с FM может быть не очень хорошим, хотя на приемнике "вроде бы звучало"... Записи с магнитной ленты. Хорошие профессиональные записи можно оцифровывать и сжимать в режиме Joint stereo. тем не менее, для источников, оцифрованных на бытовой аппаратуре, лучше применять режим Stereo , или Dual mono. Причина - в несовпадении азимута магнитной головки записи и воспроизведения (если запись делалась на другом магнитофоне). Особенно это актуально для кассетных магнитофонов. Собственные, любительские записи обычно изобилуют перепадами уровня, спектральной неравномерностью, повышенным шумом, нестабильностью фазовых соотношений между каналами. Сжатие такой записи в режиме Joint stereo может привести к искажениям ("плаванию", хлюпанию звука) и "интересным" эффектам вплоть до почти полного пропадания звука (каналы при сложении взаимно уничтожились). Общие рекомендации таковы - использовать самый качественный аппарат, какой только доступен. очистить и размагнитить ЛПМ магнитофона. настроить правильный азимут магнитной головки. ленту перемотать и выдержат не менее суток в нормальных условиях. Лучше всего при оцифровке не пользоваться динамическими системами шумопонижения, а провести программную обработку звука в программах - редакторах. Однако, если использовалась компандерная система шумопонижения- ее следует включить. Возможно несовпадение настроек компандерной системы, если запись производилась на другом магнитофоне. Программы сжатия. чтобы не устраивать обзор, отмечу программы, работающие в реальном времени, и "улучшенные" кодеки. В устройствах, пишущих файл "на лету" применяются упрощенные алгоритмы, дающие малое сжатие, или сильно искажающие звук. Хорошие программные кодеки делают двухпроходное сжатие - сначала анализируется исходный файл, затем выбираются наилучшие условия для кодирования (как правило при VBR). Рекомендации. Прежде чем сжимать весть альбом - попробуйте сжать "типовую" композицию с него, и прослушать на хорошей технике (лучшей той, на которй предполагается слушать). Этим можно проверить правильность выбранных параметров. Если сжимаются разноплановые композиции - хорошо бы устанавливать параметры для каждой индивидуально. "Ручная работа" в этом случае тоже ценится. Всегда нужно решить, важнее - размер файла или качество. Иногда стоит сделать 2 версии файла - для предварительного и нормального прослушивания. Если есть возможность, делайте нормализацию файла (приведение громкости к 100%) т.к. передача сигналов малых уровней - больное место цифровой звукозаписи. Если делаете самостоятельную оцифровку записей с микрофона- обратите внимание на начало и конец записи. Рекомендуется применять "ввод" и "увод" (fader). Так записи более благозвучны (нет впечатления обрыва звука в конце и начале). Ограничения Нельзя повторно сжимать файл (пережимать), если он уже был сжат ранее. Т.к. кодек при сжатии удаляет лишнее из спектра сигнала, он подобно Дирекции по кадрам, уберет "лишнее" даже там, где его нет - и звук будет искажен. Для предотвращения щелчков в начале файла рекомендуется тишина (нулевые отсчеты) длительностью не менее 100мс. Это обусловлено алгоритмом кодирования. 08.12.06.