Эмуляция звука

emulators

Postby fk0 » 20 Jan 2015, 04:10

Принцип высосан не из пальца, а из теоремы Найквиста-Котельникова.
* Origin: зип файл! (2:5030/1559)
User avatar
fk0
 
Posts: 1535
Joined: 07 Apr 2007, 01:08
Group: Registered users

Postby deathsoft » 20 Jan 2015, 10:35

Если охото сделать без матана и без теории, бери код из унриала из каталога sndrender (пример использования находится в sndcounter.h с комментарием // USAGE EXAMPLE)
User avatar
deathsoft
 
Posts: 4744
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby FalseMaster » 20 Jan 2015, 12:33

fk0

>> Тебе что-то объяснять бесполезно.

А может для разнообразия попробовать объяснить не ЧТО-ТО, а то, о чём я спрашииваю? Я уже задолбался повторять один и тот же вопрос: какая величина является параметром для этого вашего апсемплинга? Говорить о методах преобразования имеет смысл только после выяснения, что именно должно преобразованию подвергаться.

>> Ты не обладаешь ни необходимыми знаниями…

Однако же отсутствие знаний не помешало мне без всяких осложнений запрограммировать проц, память и видеосистему. А всё потому, что в отличие от спековского звука, материалов по упомянутым темам в и-нете хоть жопой ешь. Всё решает наличие инфы, а знания – штука приходящая и уходящая.

>> в п. 1 имеем единичный сэмпл через кажые N-шт. нулевых

Что значит каждые N штук? Сколько бы раз подряд мы ни записывали в буфер по X нолей, это будет один сплошной нулевой семпл.

>> исключаются все нулевые сэмплы

А отуда звук-то возьмётся, если весь буфер забить значением громкости?

>> пункт 3 заключается в расчёте фильтра только для каждого M-ного входного значения

Что представляет собой расчёт фильтра? В смысле, какова последовательность действий.

>> т.к. фильтр не рекурсивный, то остальные 0..M-1 можно не считать

Вообще не понял.

>> И никакой длины периода здесь нет, и не увидишь.

Тогда по какому условию ставить буфер в очередь?

>> А если ты не понимаешь, что такое Pulse Code Modulation

PCM – это простой как резинка от трусов формат звуковых данных. Но к моим траблам он никакого отношения не имеет.

>> Принцип высосан не из пальца, а из теоремы Найквиста-Котельникова.

Я имел в виду своё кривое решение.

deathsoft

>> пример использования находится в sndcounter.h с комментарием // USAGE EXAMPLE

Оставлю это в кач-ве плана "Б", т.к. хочется разобраться, потому что в Unreal'е звук тоже не фонтан – на высоких есть какое-то неприятное биение.
FalseMaster
 
Posts: 8
Joined: 14 Jan 2015, 04:51
Group: Registered users

Postby deathsoft » 20 Jan 2015, 12:44

FalseMaster wrote:А всё потому, что в отличие от спековского звука, материалов по упомянутым темам в и-нете хоть жопой ешь.

Спековский звук тут не причем, он ничем от любых других звуков не отличается, инфы по ЦОС в инете полно (особенно на английском). Эмуляторов древних компов и аркадных автоматов - тоже полно с сорцами (тот же mame). Пока ты не осилишь теорию что такое оверсэмплинг и децимация - сам ты ничего путного не напишешь, т.ч. либо теория, либо бери готовый код из других эмулей (сорцов которых в инете полно, совершенно не обязательно спектрума, полно эмулей всяких nes, snes, sega и т.д. там звук формируется точно также).
User avatar
deathsoft
 
Posts: 4744
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby zxmak » 21 Jan 2015, 13:19

Я уже задолбался повторять один и тот же вопрос: какая величина является параметром для этого вашего апсемплинга?


параметрами является входной сигнал, его частота дискретизации, разрядность сэмплов и частота дискретизации выходного сигнала и разрядность сэмплов.
Без понимания, что представляет собой аналоговый сигнал, гармоники, частота, фаза, преобразование Фурье, КИХ и БИХ фильтры, обработка сигналов и т.п. не разберешься, этож не проц эмулировать перекладывая из одного регистра в другой, поэтому рекомендую начать с фундаментальных основ, без которых то что там происходит будет для тебя темным лесом :)

Нельзя просто так взять и преобразовать сигнал одной частоты в другую :crazy:
Эмулятор-виртуальная машина ZX Spectrum - ZXMAK2: https://zxmak2.codeplex.com/
User avatar
zxmak
 
Posts: 83
Joined: 26 Oct 2012, 02:25
Group: Registered users

Postby lvd » 21 Jan 2015, 14:30

zxmak wrote:Нельзя просто так взять и преобразовать сигнал одной частоты в другую :crazy:

К155ТМ2 не согласен :)
F̞͖̭̿̔ͯu̐̅cͬ̑ͩk̨̤̳͇̮̭̪̠̽̿̓̆ͭͩ ̷̩̰͎̩͓̘̾̀ͬ̊ͭ͛ͅda̝̺͙̬͎̝̾͟ ̰̜̝̯͉̯̖̓̎́ͨ̽ͫ͟f̟͇̭̀ͬͨͭ̐̚u̹̼̹̗̞͑̔͂͐̚cͭ̅̊̆̒̆ǩ̝̩̯́ͥ̔̍̑ḭ͓͍̳̬ͦ̽͂n͍͎͈̈̅ͩͬ ̊ͫ̂̾̑̈́f̲͚͉͓͗̋́ͧͦ̅ȗ͇̲̻͈̲̅̎͗͒ͭ͡c̬̟̠̹̯̈́ͩ͘ͅk̫̠̻̋͜a̲͒̾̇!͙͕̺͉̗̩̲̂̏̄̀
User avatar
lvd
 
Posts: 7262
Joined: 07 Apr 2007, 21:28
Group: Registered users

Postby zxmak » 22 Jan 2015, 01:11

К155ТМ2 не согласен


К155ТМ2 в двоичном мире живет, а там другие правила :)
Эмулятор-виртуальная машина ZX Spectrum - ZXMAK2: https://zxmak2.codeplex.com/
User avatar
zxmak
 
Posts: 83
Joined: 26 Oct 2012, 02:25
Group: Registered users

Postby lvd » 22 Jan 2015, 01:49

ну ок, диод проканает? был синус, отрезали половинку, стало докуя гармоник.
F̞͖̭̿̔ͯu̐̅cͬ̑ͩk̨̤̳͇̮̭̪̠̽̿̓̆ͭͩ ̷̩̰͎̩͓̘̾̀ͬ̊ͭ͛ͅda̝̺͙̬͎̝̾͟ ̰̜̝̯͉̯̖̓̎́ͨ̽ͫ͟f̟͇̭̀ͬͨͭ̐̚u̹̼̹̗̞͑̔͂͐̚cͭ̅̊̆̒̆ǩ̝̩̯́ͥ̔̍̑ḭ͓͍̳̬ͦ̽͂n͍͎͈̈̅ͩͬ ̊ͫ̂̾̑̈́f̲͚͉͓͗̋́ͧͦ̅ȗ͇̲̻͈̲̅̎͗͒ͭ͡c̬̟̠̹̯̈́ͩ͘ͅk̫̠̻̋͜a̲͒̾̇!͙͕̺͉̗̩̲̂̏̄̀
User avatar
lvd
 
Posts: 7262
Joined: 07 Apr 2007, 21:28
Group: Registered users

Postby FalseMaster » 22 Jan 2015, 04:30

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

Выходит, что длительность семпла вообще не нужна? Как же так?.. Ну да чёрт с ним. Я тут подумал, трезво оценил ситуацию и пришёл к выводу, что вместо тщетных потуг прыгнуть выше головы полезней будет поэкспериментировать с чужим кодом – может в процессе и понимание придёт. И отсюда просьбочка к zxmak. Ни за что не поверю, что свой первый эмуль ты написал прямо вот так сходу. По-любому где-то подсматривал. Понимаю, что много воды утекло с тех пор, но может вспомнишь хотя бы названия тех эмулей, в которых реализация звука была наиболее простой и внятной, а не клубок кода, как в US (насчёт отсутствия матана в том примере deathsoft конечно пошутил). Я, кстати, под венду вообще ничего найти не могу.
FalseMaster
 
Posts: 8
Joined: 14 Jan 2015, 04:51
Group: Registered users

Postby DimkaM » 22 Jan 2015, 12:13

я правильно понимаю, если я куплю http://www.moon-audio.com/kingrex-ud384-usb-dac.html
то смогу услышать тру-звук при эмуляцыи нетурбированных спектрумов?
теоретически?!
покупать я её конечно не собираюсь.
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1011
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

PreviousNext

Return to Эмуляторы

Who is online

Users browsing this forum: No registered users and 3 guests

cron