Вторник, 16.04.2024, 22:09
Вы вошли как Гость | Группа "Гости" | RSS

.
 
 
Главная Регистрация Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 3 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Модератор форума: Nemesis_c  
Форум » Elektropage.ru » Other » GEMS sound driver research (копипаста с соникретро)
GEMS sound driver research
SmokeДата: Воскресенье, 19.05.2013, 21:06 | Сообщение # 61


 Get Serious!
Сообщений: 551
Статус: Offline
 

Ti_
Цитата (Ti_)
Из smps <-> gems кстати не осилили? (Smoke)

gems->smps есть у меня, я его не выкладывал. Так и не разобрался как быть с псг, поэтому оставил до лучших времен. А так конвертирует прилично. Я ром выкладывал с музякой, там есть музло из вектормана и зеро толеранс


 
r57shellДата: Понедельник, 20.05.2013, 02:36 | Сообщение # 62


 
Сообщений: 632
Статус: Offline
 

Цитата (Ti_)
Попробую из дюны миди сделать.

А что там пробовать?

Цитата (Ti_)
Какие сейчас способы музыку на сегу вставлять? (в нормальных форматы вроде gems или smps)

Никаких :D

Цитата (Ti_)
И с дефлемаском не получилось сделать или просто не выкладывали; почему на миди перешли.

Получилось, не выкладывал. Так как есть проблемы:
1) В DefleMask нету нормального способа делать Pitch похожий на MIDI или на тот который в GEMS.


2) В DefleMask нету темпа в BPM (Beats Per Minute).

3) В DefleMask частоты PCM фиксированы, а в GEMS используются некоторые другие частоты. Я не сделал конвертацию из PCM которые в GEMS в PCM которые бы подошли в DefleMask. Отсюда баги с ускорением голосов и прочих вещей при конвертации.
4) И наконец, в DefleMask получается трэк уже распределённый на каналы железа, а это обратно пихать в GEMS не кошерно, ибо там разделение идёт на каналы логически, например по инструменту.

Короче, DefleMask удобен только для прослушивания чего "настряпал".

По поводу SMPS -> GEMS. Smoke, сделай лучше SMPS->MIDI + отдельно SMPS->инструменты в любом виде которые я экспорчу в gems_instruments. Там в исходнике всё должно быть понятно как они устроены, если что могу кинуть ссылку на описание.

Просто моя задумка:
1) Сделать сборщик GEMS банков, который принимает конфиг в котором указаны конфиги трэков, а потом ВНИМАНИЕ, сам находит копии инструментов, копии сэмплов. И все треки собирает, а за номера инструментов, сэмплов не надо морочится, главное в каждом конфиге трека указать секвенции в формате на выбор из: MIDI или RAW бинарник или на специальном текстовом языке файл (похожий на ASM). И инструменты, тоже в формате на выбор.
2) Ну и конечно экспорт проекта в виде (1) того же самого из готовых банков GEMS.

Цитата (Ti_)
Конвертор midi->gems тоже в разработке, будет ли выкладываться 'для всех.'?

Хоть я и сказал, что он в разработке, но не сказал что ДА, будет выкладываться


Мальчик, девочка... какая в жопу разница..
 
r57shellДата: Пятница, 24.05.2013, 04:53 | Сообщение # 63


 
Сообщений: 632
Статус: Offline
 

Оболочка для тестирования, для будущих сборок:


Мальчик, девочка... какая в жопу разница..
 
r57shellДата: Понедельник, 27.05.2013, 03:48 | Сообщение # 64


 
Сообщений: 632
Статус: Offline
 

Поправил доку про GEMS:
1) добавил описание темпа и таймеров
2) добавил описание команд у которых было написано "не известно как работает"
3) указал что у goto оффсет знаковый. у if не указано что без знаковый
4) указал что такое retrigger mode, sustain mode
5) поправил чуток форматирование
6) указал у FM инструмента частоты режима Channel 3 mode, и то что channel 3 mode он 2 бита.
7) исправил в описании команды if, МОЩНЫЙ баг, ибо переход происходит по условию "иначе". А в обычном смысле "если"

Ну и конечно же был второй видос по тесту Jukebox.
Все кому интересно, найдут его у меня на канале.


Мальчик, девочка... какая в жопу разница..
 
r57shellДата: Понедельник, 27.05.2013, 09:56 | Сообщение # 65


 
Сообщений: 632
Статус: Offline
 

Бугага... gems_split первая версия, тут: https://github.com/realmonster/GEMS

Мальчик, девочка... какая в жопу разница..
 
MegaplexДата: Среда, 12.02.2014, 02:28 | Сообщение # 66


 
Сообщений: 10
Статус: Offline
 

Ух ты Круто! конвертер gems-midi наконец выложен. )) debile

Спасибки r57shell.)))

Кстати , r57shell, про midi в gems,
ты какой миди пытался конвертнуть? с time division  в header со сначением 24 или другим занчением. Я глянул, твой конвертер создаёт миди файлы со значением 24, таким же как в gems . Почему тогда проблемы с конвертацией в обратную сторону.? Я глянул daw который стоит у меня cocos reaper, может создавать миди файлы с таким division , другие миди-редакторы наверное тож могут...

Добавлено (12.02.2014, 02:28)
---------------------------------------------
Вот , нарезал немного банков gems, если кому надо:::
http://www.sendspace.com/file/kqu52a

 Кстати, ноты после конвертации в миди, "съезжают" вниз на одну актаву.
То есть , например лунная соната из червяка джима 2 ( мелодия 000.mid)
в правом канале начинается с ноты G#2 (dec 44). А должно быть G#3 (56) .
Я и с эмулятором сравнивал, и с миди этой сонаты.
  Кто там будет ремиксы делать, незабудьте всё на октаву вверх поднять. :)


Сообщение отредактировал Megaplex - Суббота, 08.02.2014, 04:35
 
r57shellДата: Четверг, 13.02.2014, 00:46 | Сообщение # 67


 
Сообщений: 632
Статус: Offline
 

дело в том, что если поднять на октаву вверх, а потом пытаться использовать инструменты сеговские оригинальные, то будет всё пищать, т.е. надо будет опускать обратно вниз.
на сеге короче такие ноты как в MIDI указано.
там кстати я добавил vgmjuice, тоже убийственная вещь, только опять же не доделана как и большинство GEMS утилит.


Мальчик, девочка... какая в жопу разница..
 
MegaplexДата: Суббота, 15.02.2014, 04:17 | Сообщение # 68


 
Сообщений: 10
Статус: Offline
 

Цитата r57shell ()
на сеге короче такие ноты как в MIDI указано.

Ага, теперь понятно . Спасибо.
Да, с vopm всё корректоно звучит. )
 
r57shellДата: Суббота, 15.02.2014, 05:27 | Сообщение # 69


 
Сообщений: 632
Статус: Offline
 

Цитата Megaplex ()
Я глянул, твой конвертер создаёт миди файлы со значением 24, таким же как в gems . Почему тогда проблемы с конвертацией в обратную сторону.?

Забыл ответить на это.
Одно дело просто в 24 конвертнуть, другое дело правильно конвертнуть.
Когда вместо 480 к примеру делаешь 24, то точность падает в 20 раз (логично) и некоторые ноты могут просто слипнуться.
Ладно бы две ноты слиплись из-за ошибок округления, дак если их обратно раздвинуть, то нужный ритм можно упустить.
Кроме того, есть же ещё темп, то есть, 24 это только сколько делений внутри четверти. А там же ещё есть темп который изменяется в BPM
От него то и зависит сколько таких нот в минуте, надо как-то подбирать и BPM и потом в 24 эти деления укладывать.
А большинство MIDI которые сделаны не для вставки музыки в игру, они сделаны грубо, используют все 480, и темп по ним как-бы плывёт.
тем самым в одном месте ноты не липнут, в другом липнут к друг другу. В одном месте липнут ТАК в другом липнут СЯК, и когда это видишь/слышишь,
возникает такое лицо debile .

Попробуй открыть какой-нибудь MIDI и расставить ноты на четкие позиции, то есть как бы это выглядело в нотах:
Если нота с начала четверти - то она так и есть. Если она четвертная - то она четвертная, а не четверть с точкой и т д и т п.
Иначе у тебя получится скачущий ритм, там где надо 8 нот подряд одной длительности, пятая будет длиннее или короче остальных.

И да, если будут ремиксы, делись ими.


Мальчик, девочка... какая в жопу разница..
 
MegaplexДата: Вторник, 18.02.2014, 21:49 | Сообщение # 70


 
Сообщений: 10
Статус: Offline
 

r57shell
вот тут в архиве 2 файла миди:
http://www.sendspace.com/file/qc2esx
один я скачал с нета, другой - тот же , но в миди редакторе я перевёл
значение division в 24. (в хекс-редакторе по адресу xC два байта) .
Вроде ничё не съезжает. И не придётся сокращать.

 А по поводу "ноты липнут", ... Может кагда , например, 500 делиш на 24 ,то сократить
можно до 480 или 504. и потом Остаток (20 или 4) прибавить или отнять к
след таймеру из .mid файла. И не будет съезжать. Да и проще, как мне
кажется, через сторонний миди редактор в 24 конвертнуть, и внём же
огрехи конвертации подредактировать... Вот )

Цитата r57shell ()
И да, если будут ремиксы, делись ими.

 ой ,я пока что в этом плаваю ещё. ))
 
r57shellДата: Вторник, 18.02.2014, 22:01 | Сообщение # 71


 
Сообщений: 632
Статус: Offline
 

Цитата Megaplex ()
 ой ,я пока что в этом плаваю ещё. ))

Да, есть некоторые личности которые выкладывают сделанное "тяп ляп"...

Ну, что сказать, хороший MIDI попался видимо.


Мальчик, девочка... какая в жопу разница..
 
MegaplexДата: Четверг, 27.02.2014, 05:06 | Сообщение # 72


 
Сообщений: 10
Статус: Offline
 

Список оффсетов банков Gems
где
pat - instrument patches
mod - pitch modulation
seq - note sequences
dac - dac/wave



P.s. могут быть неточности. банки перепутаны или ещё что,, я всё досконально не тестил...
 
r57shellДата: Пятница, 28.02.2014, 08:24 | Сообщение # 73


 
Сообщений: 632
Статус: Offline
 

от это фарш!
может пригодится.


Мальчик, девочка... какая в жопу разница..
 
borisovalexandr7Дата: Понедельник, 13.07.2015, 01:46 | Сообщение # 74


 
Сообщений: 1
Статус: Offline
 

Я так пологаю нет конвертера в gems или из под gems
 
SmokeДата: Понедельник, 13.07.2015, 04:46 | Сообщение # 75


 Get Serious!
Сообщений: 551
Статус: Offline
 

Я писал и не дописал в итоге

 
SeregaZДата: Суббота, 18.07.2015, 19:45 | Сообщение # 76


 
Сообщений: 50
Статус: Offline
 

а нет ли ютубных видеоуроков как вручную можно это сделать, если однокликового решения пока нет?
 
r57shellДата: Воскресенье, 19.07.2015, 00:56 | Сообщение # 77


 
Сообщений: 632
Статус: Offline
 

что именно?
пока ответа не получил, хочу добавить одну заметку...
за это время пока тут никто не писал, дела по GEMS сильно продвинулись в одну сторону.
более подробно тут.


Мальчик, девочка... какая в жопу разница..
 
SeregaZДата: Суббота, 01.08.2015, 23:43 | Сообщение # 78


 
Сообщений: 50
Статус: Offline
 

нет ли какой-то схемы соответствия инструментов из игры инструментам в миди?

и еще вопрос - raw файлы (на примере сборщика Dune у Ti_) - это типа инструмент? можно ли его как-то к миди подключить?

изучаю структуру *.code файлов, и хотелось бы проконсультироваться по тонне вопросов в этом файле.

пока, насколько я понял, делеи - delay - не совсем пауза, а больше метка для определенного фрагмента трека, который игра проигрывает по своей какой-то программе. скажем отрывок в начале, потом в конце его-же. то есть музыка записана не единой длинной дорожкой, а мозаикой. поэтому когда мой недопроигрыватель пытается играть эти *.code файлы, то до первой паузы играет нормально, а потом начинается анархия и соддом и гоморра :) очень много вопросов, так что очень хотелось бы проконсультироваться.

Добавлено (01.08.2015, 23:43)
---------------------------------------------
r57shell? вернииииииииись! я почти разобрался, но почти не считается...

Сообщение отредактировал SeregaZ - Пятница, 31.07.2015, 22:04
 
r57shellДата: Понедельник, 03.08.2015, 22:49 | Сообщение # 79


 
Сообщений: 632
Статус: Offline
 

Ссылки в помощь
http://elektropage.ru/publ....-1-0-71
https://github.com/realmonster/GEMS
тут так-то есть gems->midi там можно глянуть.

по поводу прикреплений инструментов. Есть instrument_converter который умеет конвертить эти raw-ки в что-нибудь съедобное другими трекерами.
Как именно написать музло это сложный вопрос. Можешь заюзать VOPM инструмент плагин для всяких Cubase/FL Studio в общем для всего что поддерживает VST инструменты. Но сразу говорю, будет не совпадать на 100% но более менее близко. Потом можно в DefleMask подгрузить инструменты.
Можно наконец прямо из под DOSBox тестить тем методом который обсуждался в той теме. В общем много есть всего, но всё равно делов дофига.


Мальчик, девочка... какая в жопу разница..
 
SeregaZДата: Вторник, 04.08.2015, 01:38 | Сообщение # 80


 
Сообщений: 50
Статус: Offline
 

так... дождался :) на трех форумах гоняюсь! пролистал описание - не программист, мало что понял. тот дистрибутив скачивал, посмотрел как баран на новые ворота - у меня и компилятора такого нет.

1. по поводу 1\24 ничерта я не понял. так чему равна delay 1 или duration 1 в файле *.code? эти файлы я нашел в сборщике Dune у Ti_

просматривая эти code файлы - я там нашел максимальное значение 96. предположил что это длительность целой ноты, а это значит:
1 = 96
1\2 = 48
1\4 = 24
1\8 = 12
1\16 = 6
1\32 = 3

и все у меня вроде играет. казалось бы delay 3 - это минимальное значение, однако в дальнейшем разборе нашлись delay 1 и delay 2 - трындец. они мне всю картину мира поломали :) по поводу увеличения темпа, кстати, думал. подумаю еще разок на досуге. хотя если это 1\24 и есть delay 1... хотя почему 1\24? а не 1\16 или 1\32? - то тогда значит 96 это уже есть увеличенный темп.

(думаю надо считать что delay 1 - 1\128, 2 - 1\64, 4 - 1\32, 8 - 1\16, 16 - 1\8, 32 - 1\4, 64 - 1\2, 128 - 1 - мож тогда долбанные рассинхроны одолею :) хотя не одолею. это при создании своего трека, а не при чтении других. при чтении все равно видимо будет затык.)

2. что такое инструменты? эти raw файлы в сборщике Ti_ и есть инструменты? то есть система берет этот файл, скажем и присваивает ноте до, тогда для ре - добавляет частоту проигрывания сэмпла и он становится чуть выше и так далее? то есть игра носит с собой эти сэмплы. ИЛИ эти инструменты вшиты в этот процессор или кто он там (уж извиняйте французским не владею), и работает как миди - то есть сами инструменты где-то там живут в железе, а игра просто шлет им цифры что играть? в папках треков для дюны куча этих разных файлов с названиями типа: patch_11.raw, patch_0E.raw - я так полагаю игре приходится носить с собой эти звуки?

соответственно если у каждой игры свои файлы со своими названиями, то никакой таблицы соответствий типа patch_11.raw - это миди инструмент номер 123, patch_0E.raw миди инструмент 25 и так далее - не существует? а я так надеялся...

где взять скомпилированный instrument_converter? и он будет понимать Ti_евские raw файлы в папках с треками?

если конвертация из gems to midi - целая история из-за проблемы с инструментами, то может хоть есть таблица где каждому миди инструменту соответствует какой-то raw файл? это в смысле для конвертации midi to gems (точнее не gems а в code файл для сборщика Dune) сейчас порезал дорожки по каналам, запускаю и сижу гоняю 127 миди инструментов туда сюда и слушаю как идиот... походит не походит звучание. получается такая шняга... и работа идет медленно и не эффективно.

3. по поводу треков - сначала я думал что максимально дорожек может быть 6, но потом листал эти code файлы и там попадалось гораздо больше дорожек. так сколько их может быть? по поводу приоритета я вроде-бы понял. так сколько звуков одновременно я смогу проиграть?

сегодня для меня открытием было, что при использовании delay 0 можно играть аккорды на одном канале. хотя видимо если есть ограничения на одновременное звучание нот - радость как-то поубавилась...

что-то еще спросить хотел... и забыл.

Добавлено (04.08.2015, 01:10)
---------------------------------------------
а во - mastervolume - это некая общая громкость? просто volume - для дорожки? насколько я понял volume можно менять в течении трека. и чем меньше значение volume тем громче чтоль? что-то я этот момент не уловил когда тестил.

bpm - устанавливается только один раз? поменять, как volume, в течении трека нельзя? многие миди файлы меняют bpm при проигрывании... что прилично путает при конвертации.

для чего файлы modulation_00.mod в папке с треками? это не тоже-самое что pitch $0000 ? не понял я что с этой модуляцией.

а! во! самое главное забыл! :) взял я например песню Haddaway what is love, и поставил вместо гимна атрейдисов. даже с учетом, что еще нет разбора по инструментам - играет всего один, первый попавшийся для эксперимента и еще пока нет разбора барабанов - звучит просто здорово. НО! при проигрывании в опциях, или в самой игре - играет всего один раз. да там в треке есть команда loop $02 скажем, играть определенный участок дорожки 2 раза - однако все "родные" треки играют бесконечно. а мой же 1 раз проиграет и тишина стоит. вроде мы нашли в файле sounds.asm строку: ; номер музыки gems, длительность музыки в кадрах. - и там указали какое-то значение для данного трека, но нифига не помогло. 1 раз проигрывает и все. а ведь должен быть рипит бесконечный, как родные треки играют. я уже и сами эти треки на дороги разрезал, порассовал по разным песням и подумал может я какую-то команду пропустил, но нет - 1 раз играет и все.

что за команда samplerate? (samplerate 4)

Добавлено (04.08.2015, 01:38)
---------------------------------------------
кстати! раз этот raw можно переварить в что-то удобоваримое, а нельзя ли миди инструмент превратить в raw? :) это решило бы все мои проблемы с таблицей соответствия звуков при конвертации миди то gems :)

Сообщение отредактировал SeregaZ - Вторник, 04.08.2015, 01:23
 
r57shellДата: Среда, 05.08.2015, 01:47 | Сообщение # 81


 
Сообщений: 632
Статус: Offline
 

Поиграйся для начала с VGM Music Maker, и DefleMask
Потом подтяни немного математику, ибо нет тут сложных расчётов.
Перечитай доки/топики пару раз, а не "пролистай" как ты сам сказал.
Перечитай что тебе ответили, а то коэффициент восприятия содержимого крайне низок.
И наконец, пиши более внятно, а то ничего не понятно.
А, и ещё вдогонку, стандартная ошибка всех кто в программировании/компах не разбирается:
Тут нет никакой магии, если что-то работает как-то, то оно работает так, потому что именно так запилили.

А, и ещё забыл сказать, скомпиленные проги тут выложены. Кто ищет тот найдёт.
Тока просьба без вопросов "как ими пользоваться?" debile


Мальчик, девочка... какая в жопу разница..
 
SeregaZДата: Среда, 05.08.2015, 03:10 | Сообщение # 82


 
Сообщений: 50
Статус: Offline
 

ррррррррррррр... ничо не ответил блин... я седня пол дня возился, столько времени угрохал и всего два семпла для барабана сделал.

математика пока-что старая ошибочная, с возней с сэмплами просто не выделил время математику переделать. зато барабаны он почти сам теперь рисует :) правда если в миди только было два барабана... потом остальные буду дорисовывать со временем.

инструменты пока вручную подбирал, и громкости пока вручную. допиливание это было долгим, и пока ручным - но ноты мелодии и барабанов уже все само ставит на автомате :) хоть и со старой математикой... доволен, хотя надеялся что есть лекарства для этих raw... эх. печаль.

по поводу файлов - два три разных компилятора качал, там матюгается в каждом по разному. какой именно то нужен был? такой чтоб со ссылкой для скачивания. если с переменной я еще допер, что time в самом компиляторе выставлена другого вида, а тут в коде ей хотят int - и исправил, эту ошибку больше не выдавало... то другие ошибки там черт ногу сломит. я понятия не имею что он от меня хочет. поищу здесь на сайте.

заходим в опции и запускаем тест музыки - прям первой Cyrils counsil :)
http://www.emu-land.net/forum/index.php?action=dlattach;topic=16864.0;attach=152956

и все-таки где метка для рипита? помимо loop в самом треке. эта мелочь мне покоя не дает. я конечно могу loop 127 поставить и не парится, однако это же не совсем корректно. прочие треки играют бесконечно, хотя там loop может стоять всего 2 например.

Добавлено (05.08.2015, 02:49)
---------------------------------------------
просмотрел раздел http://elektropage.ru/publ/programmy_dlja_romkhakinga/dlja_raboty_s_audio/41 аудио. но там нет такого :( зато из того что есть - понравилась SND(RAW PCM) to WAV - работать не захотела, но хорошо там лежал исходник и тот мой долбанный компилятор его съел без запинок. после программа заработала. правда возник вопрос - а как пользоваться то? :)

я брал snd файлы в папках сборщика дюны, и подсовывал этому конвертеру. ставил 44к частоту, но что-то как-то по моему слишком быстро их проигрывает. а главное - я так понял - можно там где нужно подковырять, и тогда можно делать обратную конвертацию из wav в snd, а значит затем можно будет использовать в игре?

Добавлено (05.08.2015, 03:10)
---------------------------------------------
так с частотой допер. если поставить меньше - то нормально проигрывает :) как теперь назад конвертировать? пошарил в новостях - может там эти файлы есть. нету. зато нашелся проигрыватель :) а то я парюсь в дюне испытываю треки. теперь буду через проигрыватель.


Сообщение отредактировал SeregaZ - Среда, 05.08.2015, 03:11
 
r57shellДата: Среда, 05.08.2015, 04:50 | Сообщение # 83


 
Сообщений: 632
Статус: Offline
 

компилить можно любым компиллером. просто каждый из исполняемых состоит из нескольких cpp-шек.
частота зависит от настройки DAC инструмента
если там X то частота примерно 55555/X,
то есть если 1 то частота 55555 герц, только он не просасывает столько
если 5 то 11111 герц. но это примерно. Тестить частоту лучше на железе.


Мальчик, девочка... какая в жопу разница..
 
SeregaZДата: Четверг, 06.08.2015, 03:28 | Сообщение # 84


 
Сообщений: 50
Статус: Offline
 

ну это то понятно что функции типа в разных файлах лежат... там текст ошибок фиг пойми что он от меня хочет :) ладно это пока подождет. крайне заинтересовала тема с этой конвертацией snd в wav - почитал описание wav, и даже скачал какой-то хекс редактор... и вроде вдуплил - получается ты просто рисуешь файлу snd шапку из 44 байт и он начинает петь? с размерами правда я еще не совсем разобрался... что куда там вписывать... 

и второй момент - следовательно если мне надо из wav в snd - то сначала сохранить как 8000кгц 8бит моно 7кбс, а после взять и отпилить 44 байта в начале? пойду попробую свою бригаду "оголосю" сашей белым :)

Добавлено (05.08.2015, 14:43)
---------------------------------------------
хотя стоять! забыл спросить - для сэмплов есть файл типа sample_12.sfx
RAW 'sample_12.snd'
FLAGS =$45
SKIP  =$0000
FIRST =$0624
LOOP  =$0000
END   =$0000

посмотрел в разных sfx файлах - все вроде бы одинаково - но что за FIRST =$0624? он бывает разный.

Добавлено (05.08.2015, 14:56)
---------------------------------------------
так. методом научного тыка выяснилось что это вроде длительность :) однако теперь саша белый говорит детским голосом :))) получается тогда не 8килогерц и 8 бит надо... а видимо 16.

Добавлено (05.08.2015, 15:03)
---------------------------------------------
поправка - 11 025кгц

Добавлено (05.08.2015, 16:35)
---------------------------------------------
с размерами в шапке wav вроде раздуплил. там просто задом наперед написан размер. значит теперь я смогу научить свой плейер играть сэмплы, когда они есть, а для обратной конвертации может даже получится сделать все сэмплы для барабанов в миди. очень жаль, что для сэмплов всего один канал и их проигрывать можно только по очереди, а не два-три вместе как аккордом.

Добавлено (06.08.2015, 01:55)
---------------------------------------------
пришлось отрезать живые барабаны и поставить из тех, что есть в наличии как инструмент, и вместо них засунуть сашу белого. вышло здорово. однако мой же плейер теперь тупит :) про проигрывании барабанов они лезут впереди мелодии... если поставить паузу вначале - то нормально, но тогда в игре запаздывает. бред какой-то... ладно фиг с ним :) все равно доволен.

вернемся к нашим баранам. можешь объяснить на пальцах про эти raw файлы? не ссылками на заумные статьи, а просто на пальцах в кратце. чтоб мне хоть малейшее представление иметь. гуглить толку нет - он мне другой какой-то raw дает... который более популярный видимо.

Добавлено (06.08.2015, 03:28)
---------------------------------------------
полистал статью одну интересную про синтезаторы... ну и вроде как понял, что нет такого понятия как сэмпл - есть таблица цифер, где сколько-то там параметров, которые будучи скормлены процессору или кому они там... рожают нужный звук нужного инструмента и нужной ноты. и по идее одинаковый размер этих raw файлов это подтверждает. вся закавыка теперь в его формате. в статье про gems там есть какая-то таблица... она не она?


Цитата
0. Формат FM инструмента.
|??????tt| - type
|????ovvv| - LFO on, LFO value      (register 22 LFO bits)
|mm??????| - Channel 3 mode         (register 27 channel 3 bits)
|??fffaaa| - Feedback, Algorithm    (raw register B0)
|lraa?fff| - Left/Right, AMS, FMS   (raw register B4)
4 operators: (4 times) in order 1,3,2,4
|?dddmmmm| - Detune, Multiply       (raw register 30)
|?ttttttt| - TLevel
                (raw register 40)
|rr?aaaaa| - Rate Scale, Attack     (raw register 50)
|a??ddddd| - AM, Decay              (raw register 60)
|???sssss| - Sustain                (raw register 70)
|ssssrrrr| - Sustain Level, Release (raw register 80)

|??ffffffffffffff| - 14-bit frequency channel 3 mode operator 4 (A6, A2)
|
??ffffffffffffff| - 14-bit frequency channel 3 mode operator 3 (AC, A8)
|??ffffffffffffff| - 14-bit frequency channel 3 mode operator 1 (AD, A9)
|??ffffffffffffff| - 14-bit frequency channel 3 mode operator 2 (AE, AA)

|????kkkk| - Operator On ("Key") - bit for each operator in 4,3,2,1 order
|????????|


как-то я малость не догоняю.... что это за вопросики и буквы? можно чуток разъяснений? например я нашел статью про wav - где был расписан хедер. так там четко:
4 байта то
4 байта сё
2 байта се
и в хекс редакторе я это наблюдаю :) и даже что-то там понимаю... а тут чото я малость не догоняю... где чего сколько байт? вот всего 37 байт вроде. что из них что?
 
r57shellДата: Четверг, 06.08.2015, 19:26 | Сообщение # 85


 
Сообщений: 632
Статус: Offline
 

Это биты.

Ты меня затрахаешь если начнёшь распрашивать про формат инструментов...
лучше юзай VGM Music Maker потом сохраняй инструмент, и конвертируй конвертером.
Пошевели задницей и скомпилируй его.
Там вроде надо ему только instrument_converter.cpp, common.cpp, instruments.cpp как-то так, я точно не помню.


Мальчик, девочка... какая в жопу разница..
 
SeregaZДата: Четверг, 06.08.2015, 20:58 | Сообщение # 86


 
Сообщений: 50
Статус: Offline
 

так точное название компилятора дай. я три уже скачивал и все мимо. ошибки, глюки, и тд... так что нужен видимо тот, который нужен, а не любой представитель рода с++. например в этом сейчас пишет ошибки и отфутболивает на файлы самого компилятора, а не показывает на страницы проекта gems, где по его мнению должна быть ошибка.

и второй момент: нет ли какой-то закавыки в этом сеговском музыкальном процессоре, связанного с проигрыванием сэмплов? какой-то технической тонкости в использовании?  оказывается проблема системная, не у меня одного :) этот вопрос снят.

по поводу raw файлов - так некоторые оказывается 7 байт. хотя основная масса 39. каким образом эти 7 байт разбить на ту таблицу?


Сообщение отредактировал SeregaZ - Четверг, 06.08.2015, 22:38
 
r57shellДата: Пятница, 07.08.2015, 00:16 | Сообщение # 87


 
Сообщений: 632
Статус: Offline
 

я компилировал VS2010.
7 байт это другой тип инструментов. RAW - означает "сырое".
В данном случае это то как они хранятся в самой игре.
Дак вот, в конфиге указывается тип инструмента - к примеру FM. И тогда его сырые данные 39 байт.
Если же это PSG, то его сырые данные это 7 байт.


Мальчик, девочка... какая в жопу разница..
 
SeregaZДата: Пятница, 07.08.2015, 23:05 | Сообщение # 88


 
Сообщений: 50
Статус: Offline
 

сырые? то есть тут как с wav хедером отделаться нельзя? типа первые четыре это то, вторые четыре другое, третьи и так далее...

ошибки выдает: "ссылка на не разрешенный внешний символ". это уже начинает напрягать. хоть бы комментариев в код запили елки палки, чтоб хоть примерное представление иметь какой там алгоритм, если нет нужного cpp. пойду у буржуев поинтересуюсь, мож они чо дельное посоветуют.

Добавлено (07.08.2015, 23:05)
---------------------------------------------
скачал я этот VGM Music Maker. не ясно как он там инструмент сохраняет - файл выглядит как raw, просто размер больше, НО там есть вариант экспорта в текстовой файл, а уже в текстовом файле есть циферки инструмента. я его пролистал и вроде как получается что VGM использует меньше информации из raw файла. я полагаю соответствие следующее:
VGM                   RAW            возможные значения
Algorithm=4        Algorithm      max 7
Feedback=0         Feedback       max 7
AMS=0              AMS            max 3
FMS=0              FMS            max 7

Op1AR=31           Attack         max 31
Op1DR=31           Decay          max 31
Op1SR=31           Sustain ????   max 31
Op1RR=15           Release ????   max 15
Op1TL=127          TLevel         min 127, max 0
Op1SL=0            Sustain Level  max 0, min 15
Op1MULT=0          Multiply       max 15
Op1DT=0            Detune         min -3 max 3 = 7
Op1RS=0            Rate Scale     max 3
Op1EG=0
Op1AM=0            AM             max 1

получается VGM не использует такие параметры как:
type
LFO on, LFO value
Channel 3 mode
Left/Right
14-bit frequency channel 3 mode operator 4
Operator On ("Key")

то есть получается инструмент не будет совпадать на 100% с сеговским? так-же мне не ясно откуда брать значение Op1EG - это видимо: Envelope repeat mode, и судя по опциям он может иметь 9 значений. вот в связи с чем вопрос: как его вычислять из raw файла?

момент номер два - Detune варьируется от -3 до 3 итого 7. однако в битах от 0 до 7. как производить конвертацию правильно 0=-3, 1=-2, 2=-1, 3=0, и так далее? или там другая последовательность? тоже самое TLevel - прокрутка в настройках от 127 вниз до 0. как тут конвертить? 0 raw = 127 vgm? или 0 к 0 и дальше по нарастающей по порядку?

и где взять такую-же таблицу, как твоя, только с перлам... ээ... только для файла-инструментов vgm?


Сообщение отредактировал SeregaZ - Пятница, 07.08.2015, 23:20
 
r57shellДата: Суббота, 08.08.2015, 01:34 | Сообщение # 89


 
Сообщений: 632
Статус: Offline
 

Цитата r57shell ()
Ты меня затрахаешь если начнёшь распрашивать про формат инструментов...


Мальчик, девочка... какая в жопу разница..
 
SeregaZДата: Суббота, 08.08.2015, 01:50 | Сообщение # 90


 
Сообщений: 50
Статус: Offline
 

все. методом научного тыка раздуплил формулу. остались значит только два не понятных момента:
чего это vgm не использует
type
LFO on, LFO value
Channel 3 mode
Left/Right
14-bit frequency channel 3 mode operator 4
Operator On ("Key")

то есть выходит какая-то информация теряется при конвертации.

и где ты их брал, при обратной конвертации из vgi в raw? Left/Right  в принципе понятно. левый правый канал. видимо оба 1/1 должны быть. но вот где все остальное? :) хотя я смотрел в нескольких raw - какие-то параметры одинаковые. и тем не менее.

и второй - как получать Op1EG (Envelope repeat mode) из raw? он есть в файле инструмента vgi - последний параметр например для 4.

Добавлено (08.08.2015, 01:50)
---------------------------------------------
ааааааа... и совсем забыл! каким образом ты из миди инструмента делаешь конвертацию в raw? как можно получить эти параметры для миди?


Сообщение отредактировал SeregaZ - Суббота, 08.08.2015, 01:57
 
Форум » Elektropage.ru » Other » GEMS sound driver research (копипаста с соникретро)
  • Страница 3 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Поиск:


Select language:
English
French
German
Portuguese
Chinese
Nemesis_c, r57shell, Smoke, Lipetsk, GoodBye (aka vfiuchcikicshuusrch) & Segaman © 2024
Хостинг от uCoz