News / Live Journal / Information / Soft / Music / Forum / Links / About project




Powered by Google
Информация

 Железо
 Сжатие звука
 Трекеры
 Мьюзиком
 Renoise
 Энциклопедия стилей
 Мастер-класс
 Словарик
 Мысли

Добавить в избранное

Мысли

Живее всех живых

В последнее время на просторах Сети и даже в некоторых печатных изданиях стали появляться утверждения, иногда даже обоснованные, что модули - это прошлый век, они свое отжили и пора дать дорогу "молодым и прогрессивным" форматам. Давайте разберемся, насколько это правда. В качестве "закуски" и для более четкого представления вопроса - небольшое отступление или вступление.

Что такое музыка вообще? Музыка "вообще" - это упорядоченное сочетание звуковых волн разной амплитуды, частоты и длины. То есть, музыка это всего лишь способ представления звука, а звук надо каким-то образом довести до своих слуховых органов. За воспроизведение музыки отвечают разные программы, но все они извлекают звук из заранее записанных в файл данных. Эти самые данные могут представляться, по сути, в двух разновидностях: в виде заранее обсчитанных данных или в виде "нотного листа". В первом случае Вы слышите заранее обсчитанный звук и не можете его изменить. Во втором случае звук генерируется в процессе воспроизведения, то есть Вы можете его изменить. Здесь тоже нельзя однозначно сказать, какой же вариант из двух лучше - каждый имеет свои плюсы и свои минусы. Скажем, воспроизведение заранее обсчитанного (отрендеренного) звука отнимает гораздо меньше ресурсов у компьютера, тогда как Вы можете изучить "нотный лист" и посмотреть, как же это написано. А заодно и воспользоваться чужим опытом - например, мелодию украсть.

Некоторые люди свято верят в то, что "MIDI - это такой противный, дешевый и писклявый звук, который тошно слушать". Эти люди не правы по сути, ибо MIDI - это протокол передачи данных, обеспечивающий связь между музыкальными инструментами, по которому передается информация о различных действиях, производимых над этими инструментами. Таким образом MIDI - это не звук, а формат представления звуковых данных. Когда Вы, допустим, нажимаете клавишу на синтезаторе, то он преобразовывает Ваше действие в электронный сигнал на своем цифровом выходе. И далее этот сигнал передается в компьютер, а если быть более точным, то в секвенсор (sequencer). Секвенсор - это программа или отдельное устройство, контролирующее все подключенные к нему инструменты. Однако, через секвенсор можно контролировать лишь те инструменты, которые имеют цифровой выход (то есть электронные устройства). Например, "живую" гитару Вы контролировать не сможете - ее звучание (партию) придется предварительно записать в отдельный файл, а уже затем передать в секвенсор. Кстати, данный пример наглядно иллюстрирует, насколько условна грань между отрендеренным звуком и "нотным листом".

MIDI - это только последовательность нот, описание соответствующих им инструментов и директив, как эти ноты озвучивать. Сами звуки хранятся в отдельных файлах. И вот давным-давно одна светлая голова подумала: "А что если в MIDI-файле хранить еще и звуки?" Так появились MOD'ы или модули. Модуль (MOD-файл) - это четкая последовательность нот, описание соответствующих им инструментов и наложенных на эти ноты эффектов, а также набор звуков (сэмплов). Один звук или совокупность звуков, воспроизводимых по заданным условиям, называются инструментами. Любой MOD-файл состоит из паттернов - это таблица фиксированной длины (столбцы или каналы) и ширины (строки), в каждую ячейку которой заносится нота, номер соответствующего этой ноте инструмента и связанные с ней эффекты (например, положение звучания данной ноты в стерео-пространстве). Ячейка может быть и пустой. Последовательность паттернов образует "нотный лист" (order list), который и воспроизводится. В данном случае итоговый звук генерируется при помощи программы воспроизведения в реальном времени. Разумеется, для этого требуется определенная мощность компьютера. И чем сложнее обработать звук (например, много наложенных эффектов, да еще и все они достаточно сложные), тем большая мощность потребуется.

Качество результирующего звучания определяется двумя параметрами - возможностями формата MOD-файла и качеством заложенных в него сэмплов. Кстати, первый параметр наиболее важен, ибо он в том числе определяет и качество сэмплов. В отличии от MIDI-файла, размер которого даже в особо страшных случаях вряд ли превысит несколько сотен килобайт, MOD-файлы могут занимать от пары десяток килобайт до десятка мегабайт - это определяется размерами сэмплов, хранимых в модуле. В конце 80-х - начале 90-х возможности модулей были невелики как и их размеры. Это в значительной мере выделяло MOD-файлы на фоне потоковых форматов (например, WAVE или MP3), их популярность росла и количество "адептов" ширилось. Сейчас некоторые модули могут занимать и поболе места, нежели итоговый MP3-файл. Хорошо это или плохо? Ни то, ни другое. MOD-файлы создаются при помощи специальных программ - трекеров. Принято считать, что первые трекеры появились тогда, когда умерли первые динозавры. Разумеется, не те самые, которых Стивен Спилберг показывал, а первые ламповые компьютеры, которые, вот уж действительно, по своим размерам могли динозаврам и фору дать.

Когда-то персональный компьютер перестал быть игрушкой узкого круга ученых и военных и стал доступен массам. Потом он просто стал удобнее, появилось желание извлечь из этой "игрушки" нечто более весомое, нежели расчеты и программирование. Однако, в те времена не было звуковых карт (были дорогие 8-ми битные аудиоплаты Adlib и Game Blaster, и звуковые модули-генераторы, с более дорогой ценой). Но некоторым людям очень хотелось извлечь из компьютера звук и тогда одаренные "Кулибины" придумали устройство, которое нам известно как Covox. Смысл устройства был прост - на каждом компьютере еще с незапамятных (скорее, бородатых и забытых) времен был порт LPT для передачи данных из компьютера на принтер. И вот одна (а, быть может, и вовсе не одна) светлая голова догадалась к каждому контакту разъема подключить линию, добавить в нее резистор, свести линии вместе и добавить еще пару элементов. Так получился ЦАП или цифро-аналоговый преобразователь. Теперь этот ЦАП достаточно было подключить к любому усилителю или простому магнитофону, а на выход порта LPT относительно быстро выводить значения амплитуды звука (или отсчеты) - и вместо противной пищалки PC Speaker'a (недаром в народе прозвали сей девайс Скрипером) получался приемлемый звук (с качеством отечественной телефонной связи). Поскольку спаять такую схему можно было и в домашних условиях, а проблем с магнитофонами не было, то в широких массах возникла потребность не только выводить звук, но и создавать звук. За основу и была взята идея взять готовый и заранее записанный звук, а затем провести над ним некоторые операции. Для этого были написаны специальные программы - трекеры. Поскольку первый звуковой чип платформы Amiga мог выводить лишь 4 канала одновременно, то и первые трекеры были четырехдорожечными. А дальше трекеры просто стали развиваться, развиваться, мутировать и благополучно дожили до наших дней.

Искушенный в рассматриваемых выше вопросах человек уже зевает, а новичок давно уже бросил читать. Пожалуй, я несколько затянул, тем более, что все вышенаписанное - банальные истины, вряд ли требующие повторения. Так к чему, собственно, я все это писал? Особое место на рынке услуг компьютерной индустрии занимают консоли, они же приставки. И этот сектор рынка весьма активно развивается, уже давно не являясь конкурентом персональному компьютеру, как это некоторым все еще кажется. Приставки, изначально предназначенные для игр, всегда в лучшую сторону отличались от ПК тем, что предлагали куда более простой способ развлечения - вставил картридж (диск) с игрой и наслаждайся. Никаких мудреных "setup'ов", "настроек", "инсталляции". Конечно, приставки обладали и рядом недостатков, за которые постоянно цеплялись и цепляются их противники. В частности, любой ПК прогрессирует быстрее, нежели даже самая топовая приставка, т.к. любая консоль "обновляется", в среднем, не чаще чем один раз в 5 лет. Однако, новая версия консоли, как правило, обгоняет ПК в своем развитии. Впрочем, это тема для отдельного разговора.

На заре своего развития перед создателями приставок стояла та же дилемма, что и у пользователей ПК: как создать качественную музыку в ограниченном пространстве памяти? Многие будут удивлены, но решена она была точно таким же способом, что и гордых пользователей персональных компьютеров, а именно - при помощи модулей. Поскольку на первых порах картриджи с играми обладали очень маленькой вместимостью, то было весьма проблематично позволить себе использование заранее обработанной музыки, пусть даже и низкого качества. Вот программистам и приходилось ломать свои светлые головы, как сделать качественную, но "невесомую" музыку. В основе решения лежала идея, которая к тому времени уже давно была воплощена - MIDI. Основной замысле был таков: пусть консоль содержит специальный дополнительный процессор, который будет называться Sound Processing Unit (SPU), и этот процессор будет обрабатывать инструкции, записанные в файл (sequence), а затем формировать на основе этих инструкций звук в реальном времени. Собственно, вы узнали в этом принципе обычный синтезатор. Возможно, я ошибаюсь, но первопроходцем в этом вопросе выступила компания Nintendo со своей легендарной (а вот здесь я точно не ошибаюсь ;) приставкой NES (Nintendo Entertainmеnt System), у нас более известной, как Dendy (играют все! :)

Так был изобретен формат PSF (Portable Sound Format), который прошел большой путь от NES до Sony PlayStation 2 и на этом останавливаться не собирается. Сразу хотелось бы отметить, что я не буду вдаваться в сложные описания формата, поэтому некоторые искушенные в данном вопросе люди могут обвинить меня в неточной ассимиляции. Но я просто постараюсь изложить основные идеи данного формата в доступной и обобщенной форме. Итак, если обобщить большое и мудреное описание формата (на момент написания статьи это была спецификация версии 1.5), то файл PSF содержит в себе сжатый особым способом программный код, который в реальном времени обрабатывается SPU и преобразуется в единый поток звука на выходе. Похоже на модули, не правда ли? Файлы данного формата могут содержать в себе и отдельные сэмплы формата ADPCM, необходимые для формирования желаемого звучания, а могут и использовать глобальную библиотеку сэмплов. Большое количество саундтреков к играм на приставках написано именно в этом формате. Например, Final Fantasy VII и VIII (Sony PlayStation), Perfect Dark (Nintendo 64), Metroid Fusion (GameBoy Advance), Devil May Cry (Sony PlayStation 2), Final Fantasy X (там же), Donkey Kong Country (SNES) и многие, очень многие другие. Обратите внимание, что в этом списке присутствуют и современные приставки (пусть я и не приводил Xbox и Nintendo GameCube, но и там используется подобный подход). И это даже несмотря на то, что емкость современных носителей позволяет использовать исключительно потоковые форматы! И кто сказал, что модули мертвы?

В связи с тем, что консоли, как я уже и отмечал, содержат специальный процессор, который отвечает за обработку звука, то для прослушивания PSF-файлов на ПК недостаточно написать программу-транслятор. Необходима программа-эмулятор, которая будет имитировать SPU. Разумеется, такая работа постоянно ведется программистами-энтузиастами, что не удивительно. Удивительно, что компании-производители приставок с этим даже и не пытаются бороться, в чем вы можете убедиться лично, скачав как программы-эмуляторы, так и саундтреки к некоторым играм. По понятным причинам приводить ссылок я не буду, но в любой поисковой машине вы быстро добьетесь нужного результата, грамотно сформировав запрос. В принципе, вы можете и написать автору личное письмо с просьбой выдать более конкретные рекомендации. Программы-эмуляторы обычно выполнены в виде дополнительных расширений (плагинов, plug-ins) к популярному проигрывателю WinAmp. Поскольку они являются обычным библиотеками динамических ссылок (или просто DLL), то их легко использовать и в других проигрывателях, а также иных программах.

Остается не раскрытым еще один вопрос: как писать музыку на приставки? Ответ на него прост: для этого надо иметь так называемый "комплект разработчика". К сожалению, рядовым музыкантам он не доступен, если, конечно, рядовой музыкант не способен выложить несколько десятков тысяч долларов за такой комплект. Однако, политика компаний-производителей игровых приставок такова, что даже за эти деньги комплектом разработчика они так просто не поделятся - продается он только проверенным фирмам и только на определенных условиях. К тому же, за такие деньги, особенно в нашей стране, можно спокойно оборудовать собственную домашнюю студию звукозаписи с вполне приличной аппаратурой. Выход есть и это снова старые и проверенные трекеры. Вы можете писать музыку на своем собственном трекере с учетом пожеланий заказчика (качество музыки, наличие определенных эффектов, звуков, иногда - поставка библиотеки сэмплов), а затем уже программисты заказчика будут переводить ваш XM в свой PSF. Конечно, я несколько упростил и приукрасил ситуацию, но в целом, думаю, передал все верно.

Таким образом, видно, что считать модули отмирающими преждевременно. Да, на персональном компьютере никогда не стояло таких проблем, какие пришлось решать разработчикам игровых приставок, и сейчас, к сожалению, в крупных игровых проектах модули не используются. Однако, и сами трекеры не стоят на месте - современные версии программ все ближе и ближе по своей функциональности приближаются к качеству простых звукозаписывающих студий. К тому же никто не запрещает вам писать музыку в своем любимом модульном формате, а затем переводить ее в требуемый заказчиком формат. Конечно, вы никогда не сможете добиться на самом продвинутом трекере качества звучания, близкого к звучанию реальных инструментов (особенно это касается оркестровых композиций), потому что музыка - это не только набор нот и эффектов, а еще и душа, вложенная в ее исполнение. Но в наш век электронной музыки нет пределов собственному совершенству.

p.s. Автор выражает благодарность Neill Corlett, someone42, Zophar, Сергею Музыченко, Сергею Чабунину, Manwe, Mike Rippon, EstEps, Jazztiz, Юрию Хлебникову, Рашиду Ижаеву, Петру Семилетову, or@NGE, Gene J.B., Денису Зельцеру и Сергею Сергеевичу за информацию, использованную при написании статьи.

p.p.s. Ваши отзывы, замечания и предложения Вы можете написать на личный email автора статьи () или на Форуме портала.

Darth 'Snake' Nefelim, специально для РИИА T.R.A.C.K.E.R.S.

Вернуться в раздел

Dreams...
Отправить письмо дизайнеру
к началу страницы
copyright © 1997-2019 t.r.a.c.k.e.r.s
All Rights Reserved