С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
ZXMAK, Воспроизводимая частота не должна дрейфовать дальше чем на 1/10 герца (или правильнее - 0.1%). Это заметно.
- - - Добавлено - - -
Lethargeek, Чтобы подогнать синхронизированный звук между прыгающими между 49/50/51 герцами развертки, тебе придется замедлять или ускорять звук (чем твич и занимается, когда у него моча в голове вдруг появляется). И этот подгон за счет ускорения и замедления - ужасен.
э, да! ЕЩЕ РАЗ: кол-во бутылок может меняться, а кол-во воды в них - нет! ну вот вылилось у нас из трубы сто литров, а потребитель говорит - хочу 105 бутылок - на тебе 100 литров в 105 бутылках; потребитель говорит - хочу 95 бутылок - на тебе те же 100 литров в 95 бутылках - и в чём проблема?
"горе от ума"НЕ ВЫДУМЫВАЙ ПРОБЛЕМЫ НА РОВНОМ МЕСТЕ, ничего не нужно "реконструировать", нужно сразу КОНСТРУИРОВАТЬ с другой сеткой - ведь с какой-то всё равно нужно
у всех разные "пределы", в моих - "корёжится"![]()
Прихожу без разрешения, сею смерть и разрушение...
учитывая, что частоты звуковой карты и видеокарты плывут друг относительно друга, да плюс к этому измерения их частот относительно таймера системы тоже плывут, то плавание частоты звука вполне нормальное явление при правильной реализации подстройки частоты дискретизации. Именно в том и заключается задача - сделать чтобы частоты плавали, подстраиваясь друг под друга.
ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet
ЕЩЕ РАЗ:
это разные "частоты", не путай их (и да, "таймер системы" тут - третий лишний)
нет, задача заключается, чтоб НЕ плавали - при достаточно небольших и стабильных флуктуациях и не будут
а при слишком нестабильных - ничего хорошего со звуком всяко не будет, даже если звуковуха главная, а не видео
Прихожу без разрешения, сею смерть и разрушение...
вот мне и интересно - как это делается?
Пусть частота Z80 Fclk=3504000 Гц. Звуковая карта Fs=48000 Гц. Т.е. без подстройки нам нужно просто наложить ФНЧ и сделать децимацию с коэффициентом x73. Итого получаем 3504000 / 73 = 48000 Гц. Пока всё красиво.
Далее, допустим мы намеряли, что нам нужна частота дискретизации 47999.357 Гц. Но у нас есть возможность делать децимацию с коэффициентом 72, 73 или 74. Соответственно мы можем получить 48666.66(6) Гц, 48000 Гц или 47351.351 Гц. Требуемая частота в этот ряд не вписывается, т.к. разрешение координатной сетки сэмплов на частоте Z80 3.5 МГц недостаточно, нужно делать апсэмплинг до более высокой частоты дискретизации. А это уже приличная нагрузка на процессор.
Последний раз редактировалось ZXMAK; 10.03.2025 в 12:08.
ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet
ZXMAK, есть такое слово - "интерполяция"![]()
Прихожу без разрешения, сею смерть и разрушение...
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)