Русскоязычный форум поклонников игры «Они» от Bungie
Оффлайн
спасибо!
Оффлайн
Товарищи, как переделать MP3 (или хотябы WAV) в этот пресловутый SNDD? (что бы вы не говорили - SNDD - не AIFF!)
Оффлайн
SNDD - это действительно AIFF, но только на платформе Макинтош. А на ПК это просто WAV с хитрым хедером.
По идее Онька съест практически любой WAV, если к нему приписать правильный хедер в этом вот формате:
http://wiki.oni2.net/OBD:SNDD/wav
Пока что автоматического импорта нет, и об экспериментах "вручную" я тоже не слышал. Самому было влом.
EDIT 2: Хотя - как это не слышал? Амэ вроде баловалась... правда инструкций, ессессна, не приводила.
EDIT: Да и зачем всё это, спрашивается? "Коммунальной квартире" в Оньке делать определённо нечего
Оффлайн
Ну это я понял, переписываем MP3 в ADPCM и меняем header. А чтоб классифицировать, что надо сделать?
(Чтобы пачка сэмплов запускалась по одной команде? или движок сам классифицирует по имени файла?)
Я просто собрался крепить музыку из DMC4
Отредактировал(а) demos_kratos (10-08-2008 21:38:48)
Оффлайн
Во-первых, сэмплы из пачки играются строго в беспорядке, если не считать сэмпла-вступления и сэмпла-концовки.
Во-вторых, пачки определены вот здесь: http://wiki.oni2.net/OBD:OSBD/OSAm http://wiki.oni2.net/OBD:OSBD/OSGr
Имя пачки, доступное из скриптов - это имя файла OSBDhrjuk.amb за вычетом суффикса .amb и приставки OSBD.
Оффлайн
Спасибо. Теперь как грамотно составить header для OniSplit?
И ещё - какой ADPCM использовать - IMA или Microsoft?
Отредактировал(а) demos_kratos (11-08-2008 07:53:13)
Оффлайн
IMA - это для Макинтоша. Пользуй обычный Оконный ADPCM.
"Теперь как грамотно составить header для OniSplit?" Какой?
WAV-header описан на вики: http://wiki.oni2.net/OBD:SNDD/wav
Заполняешь в зависимости от параметров твоего ADPCM, и всё.
С OSBD немного сложнее, но опять же - вики тебе в помощь...
Проще всего работать с копиями существующих SNDD и OSBD.
Тогда тебе вообще не надо заботиться об адресах/указателях.
Оффлайн
если просто готовый скреплёный SNDD взять и запихнуть в ОниСплит, он начнёт ругаться, типа неправильный хэдер. Если взять хэдер от другого SNDD"имя".aif.oni то raw получается размером 130 -150 кб и ну никак те 5 метров что вышли при перегонке формата.
Оффлайн
"если просто готовый скреплёный SNDD взять и запихнуть в ОниСплит, он начнёт ругаться, типа неправильный хэдер." ??????? почему? пример? что такое "просто готовый скреплённый"?
"Если взять хэдер от другого SNDD"имя".aif.oni то raw получается размером 130 -150 кб и ну никак те 5 метров что вышли при перегонке формата."
Дык. Ты должен подогнать под свой новый ADPCM не только параметры в хедере, но и размер по адресу 0x40 вот здесь: http://wiki.oni2.net/SNDD
Оффлайн
Всё, уже заметил, подогнал, теперь вот какая беда - или у меня кодек кривой, либо в оньке, ибо перегнав MP3 в Microsoft ADPCМ, запихав его в dat, а затем вытащив его оттуда получилась сущая абракадабра.
До - http://www.pochta.ru/download.php/?file ... amp;lng=ru
После - http://www.pochta.ru/download.php/?file ... amp;lng=ru
Может я в хэдере намутил не знаю.
Вот хэдер файла oni
0х00: 1F 27 DC 33 DF BC 03 00 32 33 52 56 40 00 14 00 0х01: 10 00 08 00 01 00 00 00 00 00 00 00 00 00 00 00 0х02: 60 00 00 00 60 00 00 00 C0 00 00 00 17 00 00 00 0х03: 44 44 4E 53 08 00 00 00 00 00 00 00 60 00 00 00 0х04: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0х05: 01 00 00 00 00 00 00 00 08 00 00 00 02 00 02 00 <-- с этой строки начинается SNDD-dat часть 0х06: 22 56 00 00 27 57 00 00 00 04 04 00 20 00 F4 03 0х07: 07 00 00 01 00 00 00 02 00 FF 00 00 00 00 C0 00 0х08: 40 00 F0 00 00 00 CC 01 30 FF 88 01 18 FF A8 0C 0х09: 68 C1 4E 00 20 00 00 00 00 00 00 00 00 00 00 00 0х0A: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0х0B: 53 4E 44 44 6D 75 73 5F 6F 62 6C 76 2E 61 69 66 0х0C: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0х0D: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0х0E: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 дальше raw часть
вот сам файл oni http://www.pochta.ru/download.php/?file ... amp;lng=ru
Хотя даже несмотря на всё это музыка просто не воспроизводится, если прописать sound_music_start mus_oblv (OSBD добавлял)
Отредактировал(а) demos_kratos (11-08-2008 15:48:54)
Оффлайн
Я отказываюсь работать с пятиметровыми примерами... В будущем требую минимальных размеров.
И вообще, нет чтоб в создании трейлера поучаствовать: звуки ему, видите ли, интереснее... Блин.
EDIT: А ошибка у тебя есть, и простая - в начале raw-части лишних два байта... Убери - поможет.
Оффлайн
geyser написал(а):
А ошибка у тебя есть, и простая - в начале raw-части лишних два байта... Убери - поможет.
Насколько я помню (со слов Амэ, сам так не пробовал и структурой вавок никогда не интересовался), эти пара байт приводят лишь к сильному и хрипящему искажению... Или в этом проблема и состоит? А то трафик и впрямь дороговат. >_<
Оффлайн
ADPCM не отличается хорошим сжатием, а чем Амэ сжимает - ума не приложу.
ВСЁ! Спасибо вам, всё заработало. (не воспроизводил, потому что вместо того чтобы поставить на месте raw-адреса в OSGr 20 00 00 00 поставил 00 00 00 00, из-за чего OniSplit записал мод так, что движок игнорировал RAW часть OSGr)
2geyser чем я могу помочь в трейлере? чем смогу - помогу.
Отредактировал(а) demos_kratos (12-08-2008 18:18:27)
Оффлайн
"эти пара байт приводят лишь к сильному и хрипящему искажению... Или в этом проблема и состоит?"
Они могут привести к разному. В данном случае симптомы именно те, которые описал demos_kratos.
"чем я могу помочь в трейлере? чем смогу - помогу."
http://wiki.oni2.net/AE:Trailer
http://wiki.oni2.net/AE:New_weapons
http://wiki.oni2.net/AE:DeLorean
http://wiki.oni2.net/AE:BGI
...
На странице "Trailer" есть список сцен, которые необходимо записать для трейлера. Некоторые вещи, как например новое оружие, нуждаются в более креативном оформлении чем "стою посередине серой комнаты и фигачу в стену из базуки". Хотелось бы идейных сценок, где оружием пользовались бы союзники, противники и т.п. И так - буквально для любой сцены в списке. Нужно креативная, динамичная презентация скриптовых и бинарных наворотов: в первую очередь тех, что есть в списке. Если неясно, с чем что едят - отвечать буду в ленте "вести с фронта" или в новой, посвященной трейлеру.
Оффлайн
demos_kratos написал(а):
ADPCM не отличается хорошим сжатием
Погоди, в каком смысле? PCM изначально сжатия не предусматривает (не говоря уж о том, что де-факто это и вовсе принцип, а не формат), а производные от него DPCM и ADPCM - это недалёкие отклонения и вариации от простейшей структуры (а сжатие вроде появляется именно как D, а не A). Такие, чтобы не пришлось заморачиваться уймой форматов и кодеков на этом уровне, не доводя формат и до абсолютной топорности. То бишь, например, я легко могу написать код, читающий любую tga и почти любую bmp, и, если разобраться, к примеру, png (или совсем несжатое видео взять), но jpg - это уже дебри. Тогда как переход из PCM и DPCM - это как будто вместо значения цвета даётся прибавка к значениям прошлого пикселя, которая для достаточно однородных картин может привести к небольшому сжатию безо всяких сложных алгоритмов. Примерно также и тут, mp3 не нужен, равно как wma и куча всяких мелких форматишек. ) А уж то, что не разжимается потоком, маздайно по определению. И пичкать подобными вещами игру тем более жутко (о .bik молчу -_-).
demos_kratos написал(а):
чем Амэ сжимает - ума не приложу.
СаундФоржем. ) Может, даже в чистейший и незамысловатый PCM А зачем сильно сжимать, кстати? Если локальное дело, то проблем быть особых не должно, а если выкладывать куда-то - сомневаюсь, что оно надо кому-нибудь, да при таком-то размере. Музыка в игре строится из не очень длинных сэмплов (да ещё и случайным образом), и советую перед добавлением её соответствующе подобрать и отредактировать, дабы получилось культурно. ) Просто песенку и параллельно игре в проигрывателе можно запустить...
geyser написал(а):
Они могут привести к разному.
Угу, там ведь не только сами байты уровней импортируются... *ушёл думать заголовки вавок*
Оффлайн
Итак, поскольку Злая Собака удалила ленту с примером импорта музыки, которую создал demos_kratos, мне негде запостить сие, кроме как здесь. Будем сюда ссылаться из прикреплённой темы, наверное (прямо на этот пост).
Вот рабочий пример добавления музыки. Подразумевается, что вы не сидите в танке, а пользуетесь как Даоданом, так и ОниСплитом (если вы поставили себе гуйный Эдишн, то у вас должно быть и то, и то).
Даодан, в частности, позволяет использование таких "примочек", как level0_Whatever, в противоположность привычному level0_Final. Почитать об этом феномене можно здесь: http://wiki.oni2.net/AE:Plugins
ОниСплит позволяет свободно работать с Онишными ресурсами, экспортировать и импортировать всё подряд. В этом занятии нужна определённая строгость. Если вы идиот или ленивец, то это не для вас.
Важно, чтобы сэмплы были 16-битные. Остальное поймёте сами:
http://geyser.oni2.net/edition/music/example/readme.txt
http://geyser.oni2.net/edition/music/ex ... xample.zip
http://geyser.oni2.net/edition/music/example/result.zip
Оффлайн