Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Искусство: к звездам без миллиона в кармане" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Служба Рассылок Городского Кота
"Музыка на компьютере своими руками". Выпуск #11 Пятница, 19 мая, 2000 года.
Добрый день господа подписчики.
По своей сути оцифрованный звук довольно прост. Звук передается по проводу как изменяющееся аналоговое напряжение. Чтобы произвести цифровую обработку, вы дискретизируете звук, измеряя напряжение через равные промежутки времени и преобразуя его в цифровое представление с помощью аналого-цифрового преобразователя (АЦП). После чего можно хранить и обрабатывать полученные значения как обычные цифровые данные. Для воспроизведения звука вам потребуется преобразовать данные обратно в аналоговый сигнал с помощью цифро-аналогового преобразователя (ЦАП). Рисунок 1 иллюстрирует это преобразование. На качество получаемого в результате звука оказывают влияние два фактора. Первый - частота дискретизации (sampling rate) - показывает, как часто вы измеряете значение аналогового сигнала. Разрядность дискретизации (sample size) определяет точность замера. При увеличении частоты и разрядности дискретизации вы будете получать звук с лучшим качеством, но при этом будет увеличиваться количество данных, которые необходимо хранить. Так, одна секунда звука качества CD (44 100 измерений в секунду, 1б бит на канал, два канала) дает 172 килобайта данных. Для определения лучшей частоты и разрядности дискретизации необходимо найти компромисс между звуковым качеством и размером данных. К счастью, то, как влияет изменение этих двух факторов на качество, определить довольно просто. По частоте дис-кретизации можно определить самую высокую частоту воспроизведения. Так, в соответствии с законом Найквиста самая высокая частота воспроизведения равна половине частоты дискретизации. Например, звуковой диск CD хранит оцифрованный звук, дискретизированный с частотой 44100 измерений в секунду, который может воспроизводиться с частотой до 22050 Гц. Такая частота, перекрывающая диапазон звуков, воспринимающихся большинством людей, хорошо объясняет высокое качество звукового CD. В то время как многие современные телефонные сети используют цифровой звук, дискретизированный с частотой 8000 измерений в секунду. Так как человеческая речь в основном лежит в диапазоне 3000 Гц, такая частота дискретизации вполне подходит для этих целей. Разрядность дискретизации управляет фактором, представляющим собой отношение сигнала к шуму (signal-to-noise ratio). Любой метод хранения и воспроизведения звука вносит некоторые случайные потери, которые проявляются в виде шума. Для оцифрованного звука шум определяется точностью измерений. Чем точнее измерение, тем меньше зазор для шума. Хранение звука Наиболее очевидный способ хранения звуковых данных в файле - последовательная запись значений дискретизации. Эта простая схема известна как импульсно-кодовая модуляция (pulse code modulation, PCM). Такое причудливое название было заимствовано из старой электротехнической терминологии. Кроме того, хорошие файловые форматы также хранят в файле значения частоты и разрядности дискретизации, за счет чего разные звуки могут воспроизводиться различным образом. Из-за того, что звуковые файлы так велики в объеме, естественно возникает интерес к возможности их сжатия. К сожалению, с помощью стандартных алгоритмов звуковые данные сжимаются плохо. В данном случае возникает та же ситуация, что и с фотографическими изображениями, стандартные алгоритмы не могут справиться с шумами. Простейшая схема сжатия звука была разработана одной телефонной компанией, и случилось это много лет назад. Она позволяла компоновать несколько телефонных разговоров и передавать их по одному и тому же проводу. Исторически сложилось так, что телефонные компании интересовались только сжатием с фиксированной скоростью (fixed-rate compression). При сжатии таким способом все данные сжимались на одну и ту же величину. Этот подход отличается от обычно используемых в компьютерных программах методов сжатия, так как их зачастую не беспокоит то обстоятельство, что различные данные сжимаются по-разному. Кодирование пауз Когда люди разговаривают, часть времени их беседы, как это ни парадоксально, составляют паузы. При простом сжатии звука по алгоритму PCM требуется одинаковое количество места как для записи 10 минут тишины, так и для записи тяжелого рока. Простейший способ сократить размер большинства звуковых файлов - заменять такие паузы одиночным кодом, определяющим их продолжительность. Сжатие u-Law и A-Law Когда звуковая карта получает звуковые данные, она преобразует каждое значение дискретизации в соответствующее значение напряжения, которое затем усиливается и подается на динамик или наушники. При изменении значения оцифрованного звука меняется напряжение, а динамик преобразует изменение напряжения в изменение звукового давления, которое в виде звуковой волны распространяется в воздухе и достигает вашего уха. Какая же связь между значением оцифрованного звука и генерируемым звуковой картой напряжением? Наиболее очевидный подход заключается в использовании линейной связи, при которой, например, увеличение значения цифрового представления звука с 2 5 до 50 будет приводить к увеличению напряжения вдвое. Однако этот подход не очень эффективен. Ловушка заключается в том, что вы хотите воспроизводить звук в широком динамическом диапазоне, в то время как ваше ухо не воспринимает звук линейно. Разница между 0 и 1 может быть слишком велика для слабых звуков, в то время как разница между 49 и 50 будет слишком мала, чтобы ухо ее различило. Соотношение (J-Law используется, прежде всего, в Северной Америке и в Японии. Для преобразования значения линейной дискретизации m в дискретизацию Уц используется следующее уравнение: где т? - максимальное входное значение оцифрованного звука, ар- константа, обычно 100 или 255. A-Law используется в Европе. Оно также используется для преобразования значения линейной дискретизации m в дискретизацию^. А - это константа 87,6.
Что же надо сделать для того, чтобы маленькие значения (например, 1) дискретизации оставались маленькими, а большие (например, 50) - большими? В нашей ситуации хорошо работает логарифмическая шкала (logarithmic scale). По этой шкале значение дискретизации 50 по сравнению с 25 будет генерировать изменение напряжения больше чем в два раза. При использовании такого подхода диапазон громкости увеличивается, не требуя большого диапазона значений. Два общих уравнения задают точную связь. Соотношения u-Law и A-Law позволяют восьмиразрядные измерения представлять в том же диапазоне, что и линейные 12-разрядные. Таким образом, можно получить более чем 30 процентов сжатия! DPCM и ADPCM Другая простая схема сжатия с фиксированной скоростью преобразовывает последовательность измерений, сохраняя только разницу между предыдущим и последующим значением. Этот метод, известный как разностный РСМ (DPCM), сохраняет дисковое пространство за счет того, что значения разности обычно меньше самих измерений. Один из простых и наиболее эффективных методов сжатия для звука состоит в том, чтобы сначала вычислить разности, а затем сжимать полученные значения, используя алгоритм Хаффмана. Чтобы не искажать исходные значения, в некоторых случаях потребуется наряду с маленькими значениями разности хранить несколько довольно больших. Адаптивный разностный РСМ (ADPCM) применяет специальные коды для указания масштаба, который используется следующим набором разностей. Этот коэффициент масштабирования позволяет в некоторых случаях представлять большое изменение, используя относительно малые значения разностей. С помощью методов ADPCM можно с приемлемым качеством сжимать звуковые данные в четыре раза. Более сложные методы Более сложные методы сжатия были разработаны на основе, известных сведений о человеческом слухе. Этим подходом они напоминают JPEG, который, как известно, опирался на сведения о человеческом зрении. Эти методы избирательно отбрасывают некоторые звуковые данные, что приводит к довольно внушительному сжатию при сохранении высокого качества воспроизведения. Широкого распространения эти методы еще не получили, прежде всего из-за того, что они требуют большого количества сложных вычислений, а современные компьютеры зачастую не могут выполнять их с той скоростью, которая необходима для распаковки данных при воспроизведении звука. Некоторые методы сжатия были разработаны для использования на телефонных системах, включая сотовые телефоны. Эти методы основаны на модели человеческого голосового тракта. Они анализируют звук, используя специфические, созданные гортанью, горлом и ртом, образцы и передают только соответствующие им данные. Эти методы позволяют достигать внушительного сжатия человеческой речи. Более мощные схемы были разработаны для звуков, отличных от человеческой речи. MPEG определяет три более мощных и сложных метода сжатия звука. Компании, занимающиеся выпуском электроники, вложили много денег в разработку патентованных схем, позволяющих им упаковывать часы музыкальных записей на компактные цифровые ленты и диски. Разные люди интересуются разными видами сжатия звука. Те из них, кто обладает более быстрыми компьютерами и микросхемами DSP, используют MPEG и другие более сложные методы сжатия, в то время как пользователи с более медленными системами не могут использовать эти стандарты. Из-за такого разнобоя большинство современных систем обработки звука, в том числе пакет инструментальных средств QuickTime Macintosh, поддерживают замещаемые кодеки (модули кодирования/декодирования). Использование замещаемых модулей позволяет тому же самому базисному программному обеспечению легко приспосабливаться к специфическим ситуациям и облегчает переход на новые версии программного обеспечения, поддерживающего более современные методы сжатия и микросхемы DSP. (Продолжение в следующем выпуске...) Impuls Tracker
Disclaimer: Где можно скачать
свежую 1) www.mus.maker.ru Мы публиковали описание изготовления звукоснимателя, автором которого был Билли. Сегодня он обращается через рассылку ко всем подписчикам. Ознакомтесь, и если у вас есть мысли или идеи - то пишите ему, адрес и обращение ниже. Меня уже давно посетила идея заняться программулей для создания музыки. Я еще не садился писать, но идеи некоторые есть. Хотелось бы узнать, кто что видит, как все должно выглядеть. Нужно дать волю фантазии. Мне интересны самые безумные мысли и идеи. Обычно из таких можно взять много полезного. Эта программа должна выполнять все функции создания музыки с нуля: микширование аудио и миди, различные примочки для обработки звука и пр. Так что, если у кого есть идеи относительно интерфейса, функций, каких-то прибамбасов я буду очень рад. В общем, это должна быть программа (или пакет), сев за которую можно было бы написать полноценную композицию не прибегая к помощи других прог. Я понимаю, что раскатал губу. Согласитесь, что самые смелые идеи хоть и не воплощаются на 100%, но все же имеют шанс. Для начала хочу систематизировать всю полученную информацию, а потом, может быть договориться с другими программерами-любителями и сообща написать что-либо. По-моему все реально... Счастья. Билли. Если у вас есть комментарии к публикациям или свои соображения, если вы не против поделиться с остальными своими знаниями и опытом, если вы не против помочь начинающим и не только - пишите, мы с удовольствием опубликуем ваши соображения. Если вы бываете в Интернете, то на нашем сайте
вы найдете много полезной информации для себя. Он разместился на midi.ru
(можно зайти с главной странички midi.ru
по ссылке "Уроки музыки" или по адресу http://www.midi.ru/lesmus/). Обновления в разделах уроков музыки. О всех обновлениях, которые случаются почти каждый день - вы узнаете
очень подробно на первой странице
сайта - http://www.midi.ru/lesmus/ И не забывйте, если у вас есть мидишки, сделанные вами,
и вы не против выложить их для общего пользования на сервере midi.ru в
разделе Архив музыки
нашего сайта, присылайте. Все вопросы, комментарии, пожелания и отзывы направляйте по адресу: Mail: aserge@mailru.com Вопросы по урокам музыки направляйте по адресу gur@irk.ru Ждем вас на сайте и на форуме Web: http://www.midi.ru/lesmus/ |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
В избранное | ||