С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Ты предлагаешь в какой-то мере кота в мешке. С чего обычному пользователю вдруг вдохновиться каким-то новым эмулятором и поверить, что он будет на голову выше и удобнее? И за это заплатить денюшки вперед.
Вот если бы ты его сперва выпустил, все поняли, какой он крутой, и если бы захотели задонатили тебе денюшку после.
Про гигаскрин я вообще молчу.
Нужна плавность скроллов и всего такого прочего пофреймового. Спектакулятор, например, такое не может. А тот же ZXMAK2 справляется гораздо лучше. И это именно в случае 50Гц спек, 60Гц моник.
А есть еще проблема синхронизации, когда и спек, 50, и моник, 50, а все равно хорошей синхронизации видео и звука нет, т.к. всплывает много раз обсуждаемая тут проблема точного подсчета проигранных семплов за кадр.
Не знаю. Возможно я не настолько гурман, но я особо не замечал проблем с плавностью скроллов у большинства нормальных эмуляторов.
И проблем синхронизации видео со звуком тоже особо не замечал. За один кадр эмуляции выводится одна картинка и один звуковой отрезок, какие проблемы?
Плюс-минус один звуковой сэмпл в кадре вроде бы не мешает.
Если не трудно, озвучь названия дем/игр, на которых заметны вышеописанные проблемы, и ссылку на обсуждения точности подсчёта проигранных сэмплов за кадр.
В любой деме, интре, где есть плавный скролл, будет заметна эта самая неплавность.
- - - Добавлено - - -
Это огромная проблема)
Сложно все пересказать. Почитай темы про это на нашем форуме, там очень долго все это мусолили и эксперементировали.
Если очень кратко, то, невозможно знать точно, сколько аудиосемплов выведено звуковой картой за время одного видеокадра. Это только в теории кажется, что если, допустим, частота семплов 48000Гц, а частота кадров, 60Гц, то за один кадр будет выведено 800 семплов. Но на практике это будет не 60Гц, а, скажем, 60.01Гц, и число выведенных семплов будет какое-нибудь 799.8. Таким образом, начнется рассинхрон. И, самое главное, узнать точно, сколько семплов у тебя в кадре - практически невозможно, т.к. звуковая карточка дает информацию о числе выведенных за определенное время семплов только в эксклюзивных режимах типа WASAPI Exclusive.
Возможно, но тогда я не замечаю разницы между неплавностями на разных эмуляторах, и разных режимах синхронизации ZMAK2.
Неплавность скроллов, мне кажется, всё так же обусловлена наложением 50Гц эмуляции на 60Гц монитора.
(Странно, но с фрейм-ресамплером неплавность скроллов в анриале возрастает в разы).
Даже не знаю. Синхронизация звука с видео важна для воспроизведения видеофайлов. А на играх/демо обычно музыка не особо завязана с картинкой, и даже если музыка вдруг по какой-то причине начнет отставать, этого никто на слух не заметит. Потом, даже у дем, где анимация завязана с звуковыми эффектами, я никогда не замечал рассинхронизации.
Похоже, это актуально для суперточной эмуляции, где идет подвязка синхронизации кадров эмулируемого Спектрума к кадрам монитора, у которого есть 50Гц. Тогда постепенно может накапливаться рассинхрон видео со звуком, за счет погрешностей частот звуковой карты и монитора. Но если не париться с привязкой кадра Спектрума к кадру монитора (а это малополезно для 60Гц мониторов), рассинхрона не будет. А неплавность будет в любом случае (для не 50Гц мониторов), только она будет чуть более неравномерной.
В том-то и дело, что я, и многие другие спектрумисты юзают 50Гц.
Когда я писал свой эмулятор EmuStudio, мне было принципиально важна абсолютная плавность 'скроллов' и полный синхрон звука. Звуковая карточка у меня была Audigy, которая позволяла отслеживать текущую позицию в аудиобуфере с точностью до семпла, и я привязывал кадровую Пентагона (или УКНЦ) к кадровой своего монитора (50Гц), а звук в реальном времени натягивал на эти самые 960 сеплов, которые были на самом деле дробные, схождение-расхождение которых вычислялось каждый кадр.
Однако на Win7 и старше, стандартная аудиосистема уже не давала возможности отслеживать позицию в буфере с точностью до семпла, а только с кратностью до 480 семплов (если я правильно помню). Однако, появился режим WASAPI с эксклюзивным замком, который такую возможность опять же давал.
Посмотрел, какие режимы синхронизации в ZXMAK2 самые 'плавные'.
Режим синхронизации по звуку и по таймеру выглядят похоже.
Режим синхронизации по видео - дергается больше. Примерно так же неприятно, как и Spectaculator, хотя визуально немного иначе.
В твоем эмуляторе 1.0 (который в первом посту) дергается примерно так же, как и в Spectaculator'е. Т.е. самым заметным образом.
Последний раз редактировалось Titus; 11.05.2019 в 15:40.
например, в SDL2 можно запросить размер очереди еще не отправленных на карточку сэмплов для подгонки числа сэмплов нового кадра
что-то схожее можно навелосипедить и самому; минус - дополнительная задержка, но в принципе работать должно везде?
Прихожу без разрешения, сею смерть и разрушение...
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)