| Разработка и ромхакинг > Ромхакинг и программирование |
| Mega Drive, YM2612 и качество семплов |
| (1/1) |
| Talking_Sword:
Раньше у меня был миф, что Mega Drive не может качественно воспроизводить семплы. Отчасти это было из-за того, у меня был клон, который почему-то искажал звучание семплов. Но потом, когда у меня появился оригинальный Mega Drive, я заметил что не во всех играх семплы звучат одинаково плохо. К тому же, перебирав в Dynamite Headdy в Sound Test-е различные звуки, заметил, что фразы, оказывается очень чисто звучат (по меркам Mega Drive). Примеры речи из Dynamite Headdy можно послушать здесь: Еще примеры: Boogerman. Семплы ударных звучат на удивление чисто. Мне кажется, даже на x68000 не всегда были настолько чисто звучащие ударные. Jo Coin. Это, конечно уже не музыка из игры, а просто музыка, написанная для Mega Drive, тем не менее издавалась на картридже в "альбоме" Remute - Technoptimistic, а соответственно работает и на реальном железе. Здесь очень чисто звучит тарелка от TR-909. А вот обратные примеры: Ristar. Семплы звучат достаточно "грязно". OutRunners. Семплы звучат менее грязно, но как-то "недетализировано". Super Shinobi. Здесь вообще какое-то глухое "уханье" вместо ударных. Исходя из всего вышенаписанного, мне интересно, какие проблемы возникали у программистов, которые не позволяли им написать качественное воспроизведение семплов через YM2612? Где-то слышал, что воспроизведение семплов через YM2612 вообще не совсем задокументированная возможность, а что-то вроде "программистского трюка", но тем не менее, широко используемого. |
| SeregaZ:
дело не в YM2612. чо ему шлют, то он и играет. весь вопрос в том кто шлет и как это там организовано. здесь нет четкого стандарта и поэтому девелоперы пилили для своих игр звуковые драйверы. то есть вся логика там происходит, а в 2612 шлется уже готовое. что касается чистоты фраз - так-же зависит от исходного материала. даже сейчас взять обычный микрофон и нажать запись на винде и записать что-то, после конвертануть в 10.4khz моно 8 бит, то качество будет отвратное. а вот ежели сделать нормализацию, подкрутить аквалайзер, и прочее прочее прочее - то можно вполне себе громкий четкий сэмпл получить. дальше - качество сэмплов. оно разнится от драйвера к драйверу. некоторые драйверы могут проигрывать несколько вариантов сэмплов. GEMS аудио драйвер может 10.4/8.7/7.3/6.5/5.8/5.2. то есть работа драйвера организована таким образом, что кратно каким-то значениям происходит посылка данных в регистр 2A чипа YM2612. а сам драйвер получается крутится на Z80 или моторолле 68000... там папки точнее могут сказать где какой драйвер и какие нюансы у этих самых драйверов. сами эти драйвера имеют различные возможности и у каждого свои плюсы и минусы. типа GEMS и SMPS - один был популярен у разрабов из америки, второй у разрабов из японии. а уже в апосля эры расцвета мега драйва появились такие товарищи как Stef и родили свой драйвер XGM - у него сэмплы могут быть, помница 14к. плюс он еще может делать мультисэмплирование до 4 сэмплов одновременно. это самое проигрывание сразу нескольких сэмплов ваще редкая штука. не везде такое родили. в стандартном GEMS такого нет, а вот в допиленном кастомном GEMS для Мортал Комбата 3 - есть. но у этого мортал комбатного мультисэмплинга есть цена - качество сэмплов может быть 6.5к 4 бита. и еще причем DPCM, вместо обычного PCM. у Комикс Зонного GEMS так вовсе ADPCM. так что не смотря что YM2612 вроде как может играть и в куда большем качестве - все зависит еще от приставки. от того что процессоры этой приставки могут слать в YM2612 по каким таймингам и при этом приставке надо еще графику рисовать и какие-то операции проводить типа колизии и прочее прочее прочее. |
| MetalliC:
--- Цитата: Talking_Sword от 29 Май 2020, 14:51:40 ---Исходя из всего вышенаписанного, мне интересно, какие проблемы возникали у программистов, которые не позволяли им написать качественное воспроизведение семплов через YM2612? --- Конец цитаты --- когда имеем дело с массовыми/ширпотребными продуктами типа видеоигр - в первую очередь всё упирается не в программистов или какие-то еще технические вопросы а в бабки ;) качественные семплы весят очень даже прилично и довольно неохотно жмутся (в отличие от графики например) -> займут дохрена места в ПЗУ, которые стоят денег, и увеличат стоимость каждого картриджа (= уменьшат прибыль издателя/разработчика). ясен пень это никому не интересно, т.к. цель всегда одна - заработать как можно больше. плюс сами звучки откуда-то надо брать, а денег на покупку библиотек семплов издатель может и зажать, и придётся как-то их самим на коленке записывать непойми как и откуда, с вполне ожидаемым качеством на выхлопе. |
| Talking_Sword:
--- Цитата: MetalliC от 29 Май 2020, 17:29:10 ---качественные семплы весят очень даже прилично и довольно неохотно жмутся --- Конец цитаты --- Я про вес тоже думал, но вот, например, Ristar вышел уже достаточно поздно и размер ПЗУ там был достаточно приличный - 2 Мбайт, но вот звучание семплов достаточно "грязное". В качестве контрпримера можно привести Mr. Nutz - вышел раньше и объем ПЗУ в два раза меньше, а семплы чище. А есть еще игры от Data East, в которых всегда были семплы приличного качества, даже с меньшим размером ПЗУ. --- Цитата: MetalliC от 29 Май 2020, 17:29:10 ---плюс сами звучки откуда-то надо брать, а денег на покупку библиотек семплов издатель может и зажать, и придётся как-то их самим на коленке записывать непойми как и откуда, с вполне ожидаемым качеством на выхлопе. --- Конец цитаты --- Во многих играх на Mega Drive звучание семплов какое-то "хрустящее", больше напоминает дефект записи, чем воспроизведения. |
| MetalliC:
Talking_Sword, про дефекты - там еще может быть нюанс с нелинейностью ЦАП-ов многих старых звуковых чипов, так что для них не редко требуется преобразовывать из PCM/WAV спец методами для более хорошего и правильного звучания. не уверен что YM2612 именно такой случай, но вполне может быть. "хрустящее звучание" - если я верно понял скорее всего низкая частота дискретизации и/или количество бит, короче всё лишь бы сделать семплы меньшего объема. |
| DDD:
--- Цитата: Talking_Sword от 29 Май 2020, 14:51:40 ---Исходя из всего вышенаписанного, мне интересно, какие проблемы возникали у программистов, которые не позволяли им написать качественное воспроизведение семплов через YM2612? --- Конец цитаты --- Насколько понимаю, во времена Мега Драйва программист это был одновременно композитор и наоборот, то есть здесь не только от умения программировать зависит звук (музыка) в игре, но и от "видения" композитором музыки, а это как известно субъективно (хорошая музыка или нет). С семплами, мое мнение, то же самое - "чисто" звучащий семпл не обязательно значит "хорошо" звучащий. Могут быть "приглушенные" семплы" в игре, но приятно звучащие (опять же, это заслуга композитора-программиста и "источника" семпла). Короче говоря, сложный вопрос. А учитывая ограничения "звукового железа" и памяти (оперативной и картриджа) Мега Драйва, это наверное был подвиг, просто написать к игре приятно звучащую музыку. |
| MetalliC:
Talking_Sword, забыл про еще один немаловажный момент - фильтр в мегадрайвовском усилителе звука, который срезает нафиг высокие частоты и ощутимо приглушает средние. за счёт чего металлический дребезг низкокачественных семплов слышно значительно меньше, но весь звук становится более глухим. собсно, усилки в игровых консолях, домашних компах или аркадах часто спецом и делали такими, чтоб было менее заметно говнокачество звука и семплов. что касается твоих видео - первое явно записано с какого-то эмулятора без эмуляции фильтра вообще. с остальными - сборная солянка, изрядная часть записана с реальной приставки с MegaAmp модом - заменой родного усилка, делающим звук более чистым и менее глухим, но и как итог лучше слышно говно-качество цифровых семплов. короче, лучше сам возьми какой-то эмулятор с настраиваемым фильтром, типа GenesisPlusGX, включи его и послушай как звучат те или иные игры. --- Цитата: DDD от 29 Май 2020, 20:51:05 ---А учитывая ограничения "звукового железа" и памяти (оперативной и картриджа) Мега Драйва, это наверное был подвиг, просто написать к игре приятно звучащую музыку. --- Конец цитаты --- не вижу тут никакого подвига, схожие по звучанию оцифрованные семплы встречались и в играх на 8-ми битных компьютерах из ранних восьмидесятых, в разы более ограниченных по возможностям чем SMD. |
| Bugrim:
Мне нравится музон в котором почти нет семплов, только синтез, например Skeleton Crew. Там эмулятор легко в любую частоту переводит, да и на сеге звучит отлично. |
| DDD:
--- Цитата: Bugrim от 30 Май 2020, 10:14:05 ---Мне нравится музон в котором почти нет семплов, только синтез, например Skeleton Crew. Там эмулятор легко в любую частоту переводит, да и на сеге звучит отлично. --- Конец цитаты --- Спору нет, вроде в Top Gear 2 тоже только синтез в музыке используется - отличный музон. Например, в Road Rash 3, насколько понимаю, используется синтез + звуковой генератор (PSG) в музыке, а семплы используются отдельно от музыки (например для озвучивания ударов об каску байкеров :)) - тоже ахренительная музыка в игре. В Sonic 3D Blast, например, судя по всему, в музыке все чипы используются на полную - синтез + семплы + каналы PSG. Ахренительный и богатый музон. |
| SavitarSvit:
Всё упиралось в объем микросхемы. С самого начала разработки ставился лимит в который должны уложиться разработчики. Микросхемы явно были дорогими и ни кто не хотел вкладываться в то что могло не окупиться. Так например за весь 90 год на MD вышло всего лишь 3 игры весом 1мб и все они вышли в конце года. И только с 91 года стали более-менее выходить игры объемом 1 мб и то не все, а лишь их малая часть. А за всю жизнь консоли вышло менее десяти игр весом 4мб... Сама Sega Japan по максимуму оттягивала время и продолжала выпускать свои порты аркадных игр весом 512кб. Из-за этого они и уступают аркадным версиям. А если бы не экономили на объеме, то кто знает насколько бы крутыми вышли бы аркадные порты типа Golden Axe, Alien Storm и другие игры в которых часто вырезали звуковые эффекты, анимацию, пережимали озвучку так, что и разобрать речь сложно даже носителю языка. А вот выпуская эти же игры на Snes издатели не жадничали. Вон Sunset Raiders на Snes весит 1мб (против 512кб на Сеге) и поэтому в нем в 2 раза больше уровней и наполнения. Что помешало Konami выпустить порт на сегу весом 1мб? Скорее всего финансовые риски. |
| Talking_Sword:
--- Цитата: Talking_Sword от 29 Май 2020, 19:02:10 ---Во многих играх на Mega Drive звучание семплов какое-то "хрустящее", больше напоминает дефект записи, чем воспроизведения. --- Конец цитаты --- Я тут ошибся, на самом деле я хотел сказать наоборот, больше напоминает дефект воспроизведения, чем записи. --- Цитата: MetalliC от 30 Май 2020, 06:21:35 ---Talking_Sword, забыл про еще один немаловажный момент - фильтр в мегадрайвовском усилителе звука, который срезает нафиг высокие частоты и ощутимо приглушает средние. за счёт чего металлический дребезг низкокачественных семплов слышно значительно меньше, но весь звук становится более глухим. собсно, усилки в игровых консолях, домашних компах или аркадах часто спецом и делали такими, чтоб было менее заметно говнокачество звука и семплов. --- Конец цитаты --- То есть, это специально делали? o_0 Мне кажется, лучше уж звук "чистый", но с изъянами, чем как "из-под подушки". Это как "шумодав" на магнитофоне - он, конечно убирал шумы, но отнего звук терял в деталях, поэтому всегда слушал в выключеным шумоподавлением. Но, честно говоря, даже на немодифицированной приставке слышно "хрустящее" звучание семплов, и наоборот, "глухие" семплы не начинают звучать прозрачнее на модифицированной приставке. --- Цитата: SavitarSvit от 01 Июнь 2020, 18:23:19 ---Всё упиралось в объем микросхемы. С самого начала разработки ставился лимит в который должны уложиться разработчики. --- Конец цитаты --- Как я уже писал выше, не все решается объемом ПЗУ, например Ristar - достаточно поздняя игра, объемы ПЗУ тогда уже не были таким уж существенным ограничением, но звучание семплов в этой игре было грязноватым. --- Цитата: DDD от 30 Май 2020, 10:46:08 ---В Sonic 3D Blast, например, судя по всему, в музыке все чипы используются на полную - синтез + семплы + каналы PSG. --- Конец цитаты --- Это не редкость. Я, кстати, нашел одно видео, в котором высказывается одна умная мысль. Вот ссылка сразу со временем, с которого начинается эта мысль (смотреть до конца видео). Там, конечно не про Mega Drive, но сказанное в видео можно применить и к Mega Drive. Это кстати и объясняет, почему так чисто звучали семплы в музыке "Jo Coin" (меня удивило, насколько чисто там звучат семплы, поэтому и добавил в качестве примера). |
| SavitarSvit:
Talking_Sword, то что игра весит 2мб, это тоже не показатель, что музыка будет не пожата. Может быть так, что много памяти ушло на уровни и анимацию, тогда в оставшееся место придется "впихивать музыку". И вообще те видео, которые ты тут привел, ни как не передают реальное звучание, поскольку не факт что записаны с консоли, а с какого-нибудь кривого по звучанию эмулятора. Если хочешь услышать правдоподобное звучание, то слушай тут: https://cirrusretro.com/listen/2196-ristar--the-shooting-star-sega-genesis#9 Послушал я Ristar и вижу, что там достаточно сильно пожат PCM канал, а все остальные звучат очень достойно. Но это и не удивительно, иначе они бы они явно не уложились в поставленные рамки. А вот как звучит не пожатый PCM: И вообще не понятно, на чем ты основываешься, заявляя что "звук как из под подушки"? Включи оригинальный MD с этой игрой, запиши по-твоему "проблемный" отрезок и выложи сюда. Тогда будет на что опираться, на последнюю ревизию MD или на пожатый звук. Сейчас, спустя 30 лет легко рассуждать что да как, а до сих пор игры для MD не делаются энтузиастами. Это слишком трудоемкий процесс, требующий команду спецов. Так что если звук в игре такой, значит на то были причины и не нам говорить, что разработчики не могли лучше. |
| Talking_Sword:
--- Цитата: SavitarSvit от 02 Июнь 2020, 07:12:25 ---Talking_Sword, то что игра весит 2мб, это тоже не показатель, что музыка будет не пожата. Может быть так, что много памяти ушло на уровни и анимацию, тогда в оставшееся место придется "впихивать музыку". --- Конец цитаты --- Игра 95 года, тогда уж и 4 мбайт ПЗУ вполне было подъемно по цене. В 4 мбайта уж точно все бы вошло. --- Цитата: SavitarSvit от 02 Июнь 2020, 07:12:25 ---И вообще те видео, которые ты тут привел, ни как не передают реальное звучание, поскольку не факт что записаны с консоли, а с какого-нибудь кривого по звучанию эмулятора. --- Конец цитаты --- Все записи в моем первом сообщении записаны Дастином Оделлом. Он записывает с настоящей приставки (модифицированной) и вообще заботится о качестве звука. Исключения составляют лишь примеры речи и Jo Coin - они действительно неизвестно как, чем и с чего писались. --- Цитата: SavitarSvit от 02 Июнь 2020, 07:12:25 ---Послушал я Ristar и вижу, что там достаточно сильно пожат PCM канал, а все остальные звучат очень достойно. --- Конец цитаты --- Собственно, про грязное звучание PCM я и говорил, FM-музыка в этой игре действительно звучит качественно (и вообще, тема о PCM\семплах, а не о FM). --- Цитата: SavitarSvit от 02 Июнь 2020, 07:12:25 ---И вообще не понятно, на чем ты основываешься, заявляя что "звук как из под подушки"? --- Конец цитаты --- Послушайте музыку из Super Shinobi в первом сообщении. Вот там семплы как раз звучат "как из-под подушки" (только семплы, FM-музыки это не касается). Кстати, насчет Super Shinobi, когда-то находил на YouTube музыку из Super Shinobi в исполнении YM2608. Происхождение записи не совсем известно, но скорее всего, Коширо Юзо использовал компьютер PC-88 для написания музыки к этой игре, а потом переносил на Mega Drive. Правда, откуда берут такие записи ютьюберы, мне не известно. К сожалению то видео уже удалено, но нашел то же самое от другого пользователя. Правда, на этих записях я не слышу вшитых семплов ударных YM2608 (если кто не знает, в YM2608 были вшиты семплы ударных). Не знаю, или это кривая запись (эмулятору не "подсунули" семплы), или меня просто подводит память, и музыка в удаленном видео звучала так же. В любом случае, вот: The Shinobi Terrible Beat Make Me Dance Over the Bay China Town Like a Wind Sunrise Blvd. The Dark City Ninja Step Opening ~ Long Distance |
| SeregaZ:
дабы не гадать - предлагаю записать нужные фрагменты во Fusion, после распотрошить полученную VGM, тем самым получим чистый сэмпл. да, можно взять в принципе из рома, но это только если знать где и если не было сжатия до 4 бит. а если не знать - то запись VGM во Fusion вполне себе. именно VGM, а не запись wav. это даст более точную картину происходящего. и тогда уже будет ясно это так говняно играет из-за самого сэмпла, или уже где-то в процессе произведения все портится. ютуб тот еще подсунул. не знаю была ли ссыль здесь в теме... я не переходил. ютуб сам мне подсунул: |
| DDD:
--- Цитата: Talking_Sword от 02 Июнь 2020, 15:20:58 ---Послушайте музыку из Super Shinobi в первом сообщении. Вот там семплы как раз звучат "как из-под подушки" (только семплы, FM-музыки это не касается). --- Конец цитаты --- Как говорил до этого, кроме "технической" стороны (ограничения памяти и железа), есть "музыкальная" сторона вопроса. Вполне возможно, в Шиноби так было задумано специально композитором-программистом (Юзо Коширо, если не ошибаюсь), так как, на мой слух, музыка там звучит весьма хорошо (приятно) в целом. Для примера, как отличается музыка из песен в исполнении Майкла Джексона (поп музыка): музыка с некоторыми "чистыми "семплами": музыка с некоторыми "приглушенными "семплами": Добавлено позже: --- Цитата: DDD от 30 Май 2020, 10:46:08 ---вроде в Top Gear 2 тоже только синтез в музыке используется - отличный музон. --- Конец цитаты --- Вру, в Top Gear 2 используется в музыке: синтез + семплы (звуки ударных инструментов). :) |
| SavitarSvit:
Talking_Sword, твои рассуждения по поводу объема ПЗУ (что 4мб были доступны по цене на момент выхода Ristar, а это конец 94го года) не обоснованны ни чем, кроме твоих домыслов. Приведи цифры на 90,91,92,93,94,95 год, сколько стоили макрухи 0.5мб,1мб, 2мб, 4мб при заказе их на производстве от скольких то тысяч штук. При каком тираже их стоимость падала и на какой процент. Было ли выгодно ставить 1 микру объемом 1мб или поставить 2 микры 512кб, дабы при тираже игры в 20000 копий заказать не 20000 микросхем (1мб), а 40000 (512кб), чтобы сэкономить 20% стоимости, ведь при заказе от 15000шт, производитель давал (допустим) именно такую скидку. Что касается SUPER SHINOBI, то скорее всего ты слышал музыку с официально альбома: https://www.retrogame-shop.com/en/cd-audio/9886-the-super-shinobi-original-soundtrack.html Очень часто в Японии, выходили диски с музыкой из игр. И вот на таком диске оригинальное звучание сэмплов, но как уже говорилось выше, такое звучание просто нельзя было запихнуть в картридж без доработки и ужатия, из-за строгого лимита памяти в который должны были уложиться разработчики. И отсюда все те не четкие и глухие звуки на которые ты обратил внимание. Нельзя было просто взять и увеличить объем игры для того, чтобы музыка звучала в игре без потерь. Не разработчики решали эти вопросы а их боссы, которые еще на моменте планирования игры рассчитали все риски и прибыль. |
| g00dW1N:
--- Цитата: DDD от 29 Май 2020, 20:51:05 ---Насколько понимаю, во времена Мега Драйва программист это был одновременно композитор и наоборот --- Конец цитаты --- Это в 99% случаев не так даже для более ранних платформ. Композитор обычно нанимался "со стороны" для работы над определенным проектом(или несколькими). Например возьмем Konami во всей серии Castlevania разный состав композиторов. Да, их число в серии доходило до 3-х. Ок, игры серии выпущены в разные годы, но и в играх одного и того же года все то же самое. Интересно, что в Mission:Impossible композиторов аж 9(!) человек. Более того, часто и художники были приглашенные. --- Цитата: DDD от 03 Июнь 2020, 15:38:09 ---Как говорил до этого, кроме "технической" стороны (ограничения памяти и железа), есть "музыкальная" сторона вопроса. --- Конец цитаты --- Здесь соглашусь, приглушенный звук, в особенности снэйра, это вполне может быть просто художественным эффектом. В чиптюне(писишном) много композиций с глухими ударными, и если кому-то кажется, что в чужой композиции нужен "чистый" снэйр, то это только кажется) P.S. Коширо не программист) |
| GManiac:
Проигрывание семплов в YM2612 и сеге сделано через одно место. Специальных средств для нормального проигрывания семплов там нет, в чипе есть отдельный 8-битный регистр, назовём его DAC: какое у него значение выставлено, такое и подаётся на выход, преобразуясь в 9 бит, т.к. ЦАП 9-битный. Ну т.е. качества семплов 8-битное. Частота дискретизации каналов у чипа 53 кГц, частоту семплов, похоже, подбирали делением на целое число. Если мы хотим выдавать какой-то звук через DAC, надо постоянно менять его значения, ну, как это видно на осциллограмме в звуковом редакторе: каждую точку осциллограммы надо посылать вручную, синхронизируясь с таймером, что усложняет звуковой движок. Почему-то сам чип ещё портит звук проигрываемого PCM, это видно в любой демке с PCM-музыкой. Касательно исходного качества семплов и занимаеого ими места ничего не могу сказать, но вот один эксперимент. Берём vgm файл для игры Streets of Rage 2, "04 - Never Return Alive.vgm", там семплы ударных сохранены в отдельном блоке. Открываем его как pcm, частота 8800 (похоже, это 53000 / 6), 8-bit unsigned, в начале файла идут 4 семпла ударных, первый - бочка. (Только они занимали бы 12 кб в игре, а есть ещё разные вопли и прочие звуки.) Включаем vgm в проигрывателе и сравниваем с бочкой в начале трека. Длительность одинаковая (т.е. частота 8800 правильная), но вот в проигрывателе звук заметно лучше. Не могу пока понять, с чем связано, неужели движок "улучшает" семплы?. Открыв ром игры как pcm, я ничего такого не нашёл, похоже, семпл пожат. Итого, на пути к хорошему звуку мы имеем как минимум 2 проблемы: изначально плохие семплы (сжатые или ещё какие), плохо сделанный под это дело движок, финальное ухудшение звука самим чипом. |
| SeregaZ:
ориентироваться на VGM, если сэмплы идут блоком, нельзя. если сэмплы там идут блоком, значит над этим VGM уже ковырялись и с целью экономии места - вывели эти самые сэмплы в отдельный блок. правильней было бы писать данные сэмплов по байтно в регистр $2A. это правда раздуло бы размер файла... поэтому надо было короткий фрагмент с нужным сэмплом записать во Fusion и после потрошить уже эту коротенькую VGM'ку, извлекая по байтно данные. формулу расчета частоты не помню. там правда будет чуток плюс минус... и тем не менее близко. |
| Навигация |
| Главная страница сообщений |