Важная информация

User Tag List

Страница 15 из 19 ПерваяПервая ... 111213141516171819 ПоследняяПоследняя
Показано с 141 по 150 из 188

Тема: Играем мелодии на ВИ53

  1. #141
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,843
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,818
    Поблагодарили
    1,044 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В AY похоже полином 12000h

  2. #142
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,116
    Спасибо Благодарностей отдано 
    793
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    403 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я заглянул в три сорца и везде разные, думаю наугад. Без микроскопа не узнаешь.
    Больше игр нет

  3. #143
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,843
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,818
    Поблагодарили
    1,044 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Извините за оффтоп по AY

    Скрытый текст

    Тоже посмотрел 3 исходника. В двух одинаковая конфигурация Фибоначчи реализована по разному. В третьем конфигурация Галуа с полиномом 10004 (а если развернуть Фибоначчи из первых двух, то у меня получается 12000).
    Посмотрел 4й (твой vector06js). Там (если учесть деление на 2) тоже 12000.
    [свернуть]
    Последний раз редактировалось ivagor; 15.09.2018 в 18:32. Причина: добавил про 4й исходник

  4. #144
    Activist Аватар для SegaBoy
    Регистрация
    12.11.2009
    Адрес
    Москва
    Сообщений
    390
    Спасибо Благодарностей отдано 
    38
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    59 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Пока мне не даются "треугольный" и "шумовой" каналы, решил обновить забойные рокенрольные композиции Тима Фолина.

    Target Renegade

    Кроме добавления громкости сделаны следующие изменения\нововведения - увеличено количество нот для каждой композиции (раньше было ограничение 256 нот всего).
    Код:
    	было	стало
    01	244	317
    02	251	284
    03	248	440
    04	233	519
    05	242	429
    06	245	394
    07	163	285
    Надеюсь, звучать стало лучше.

    - - - Добавлено - - -

    Йерун Тель - Robocop 3 - Title theme

    Так же добавлена громкость и увеличено количество нот с 250 до 384.

  5. #145
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,116
    Спасибо Благодарностей отдано 
    793
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    403 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А что значит увеличено количество нот?
    Больше игр нет

  6. #146
    Activist Аватар для SegaBoy
    Регистрация
    12.11.2009
    Адрес
    Москва
    Сообщений
    390
    Спасибо Благодарностей отдано 
    38
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    59 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В самой первой версии плеер умел только 64 ноты из миди-диапазона от 0 до 127. Этого поначалу было вполне достаточно - кастельвании использовали в среднем 35-40 нот.
    Затем я освоил pitch_bend, который может быть от -8192 до +8191 к основной ноте. Это минус\плюс октава, то есть -12 от ноты если значение pitch_bend = 0 и +12 от ноты, если pitch_bend = 16383. Я приводил примеры из текста миди - там после включения каждой ноты указывается с каким смещением от основной частоты она играет. Ну вот если посчитать эти смещения как отдельные ноты, то они и будут дополнительными. Тогда я расширил значение до 256 - кастельвании с утками зазвучали лучше, появились эти самые ууииии-ууиии, уаауу-уааууу, ну и тд. А когда стал конвертировать ренегата и робокопа, оказалось что им 256 нот уже мало. Пришлось делить 16384 значения pitch_bend, что приводило к потере некоторых частот.
    Для эксперимента я создал три отдельные таблицы нот для каждого канала. Получается (в теории) можно играть независимо 768 разных частот. На практике это не так - многие каналы пересекаются. Но всё равно это позволило расширить диапазон, не вылезая при этом из значения байта (256).

    - - - Добавлено - - -

    Вот пример из робокопа:
    Код:
    79	On	ch=1	n=104	v=127
    79	Pb	ch=1	v=7839	
    79	Par	ch=1	c=11	v=46
    84	Pb	ch=1	v=7163	
    91	Pb	ch=1	v=4526	
    98	Pb	ch=1	v=2371	
    105	Pb	ch=1	v=7163	
    112	Pb	ch=1	v=4526	
    119	Pb	ch=1	v=2371	
    126	Pb	ch=1	v=1126	
    133	Pb	ch=1	v=4526	
    140	Pb	ch=1	v=2371	
    147	Pb	ch=1	v=1126	
    154	Pb	ch=1	v=0	
    161	Pb	ch=1	v=2371	
    168	Pb	ch=1	v=0	
    175	Off	ch=1	n=104	v=0
    В начале включается нота 104 (3322,44 КГц), но тут же её частота понижается (v=7839) на 8192-7839=353 от изначальной (это примерно на четверть тона ниже). А дальше её частота вообще скачет вниз в паре мест до нуля - это уже равно ноте 104-12=92 (1661,22 КГц). Ну и тд и тп. Соответственно между существующими миди-нотами (0..127) у меня появляются дополнительные (заранее неизвестно сколько их будет).

  7. #147
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,116
    Спасибо Благодарностей отдано 
    793
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    403 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А что если не пытаться на общую шкалу все переводить, а оставить ноту нотой, а бенд бендом? Или сложный очень плеер получается?
    Больше игр нет

  8. #148
    Activist Аватар для SegaBoy
    Регистрация
    12.11.2009
    Адрес
    Москва
    Сообщений
    390
    Спасибо Благодарностей отдано 
    38
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    59 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Конечно так можно. Я изначально так и хотел. 128 значений для ноты и ... 16384 для pitch_bend - а это два дополнительных байта. Получится при включении ноты надо получить три байта данных (против одного сейчас). И самое главное - кто и как вычислит это значение - на 8080 я не умею быстро делить\умножать и вычислять новое значение частоты. Поэтому выбрал табличный вариант в самой программе конвертере.

    - - - Добавлено - - -

    Но если мне покажут пример как делать, попробую применить = ))

  9. #149
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,116
    Спасибо Благодарностей отдано 
    793
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    403 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ага, понимаю.

    А что если при конверсии пересчитать экспрессию этих забубенных бендов по модулю полутона, чтобы смещение не могло быть больше полутона. Тогда бенд всегда будет начинаться с целой ноты + смещение по модулю, а не за условно октаву от указанной ноты. Дальше писать только дельту, изменение бенда. Так и полбайта хватит на канал. И просчитать их можно заранее, чтобы ничего не делить не умножать на 8080. Но это наверное значительная переделка плеера будет.
    Больше игр нет

  10. #150
    Activist Аватар для SegaBoy
    Регистрация
    12.11.2009
    Адрес
    Москва
    Сообщений
    390
    Спасибо Благодарностей отдано 
    38
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    59 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    Но это наверное значительная переделка плеера будет.
    Вот это меня никогда не останавливало - конечно не каждый день, но довольно часто что-то меняю\переписываю свой код в Прекрасном = )) Наоборот это очень удобно - поправил где-то пару байт, нажал Play, через десяток-другой секунд посмотрел\послушал результат на реальном Апогее и давай опять писать в Прекрасном. Так что плеер можно переписать как нужно - тем более после введения дополнительных возможностей это всё-равно придётся сделать.

    Другой вопрос что я не совсем (в который раз) понял следующий момент:
    Цитата Сообщение от svofski Посмотреть сообщение
    А что если при конверсии пересчитать экспрессию этих забубенных бендов по модулю полутона, чтобы смещение не могло быть больше полутона. Тогда бенд всегда будет начинаться с целой ноты + смещение по модулю, а не за условно октаву от указанной ноты. Дальше писать только дельту, изменение бенда.
    Речь о том, что поделить 16384 на константу (или как-то хитро высчитать) и в дальнейшем вместо +/-8192 использовать +/-12 или нет?
    Хотелось бы пример или какое-то развёрнутое пояснение.

    - - - Добавлено - - -

    Выложил несколько разных шумов получаемых по моей схеме.

    Послушать здесь

Страница 15 из 19 ПерваяПервая ... 111213141516171819 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 109
    Последнее: 21.01.2021, 20:16
  2. Играем прямо в браузере.
    от kusakov в разделе Игры
    Ответов: 2
    Последнее: 21.02.2014, 22:09
  3. AY мелодии в MP3
    от Private O'Hara в разделе Музыка
    Ответов: 5
    Последнее: 28.05.2008, 07:15
  4. Опознайте мелодии пожалуйста!
    от dsb в разделе Музыка
    Ответов: 6
    Последнее: 17.01.2008, 22:43

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •