User Tag List

Страница 60 из 73 ПерваяПервая ... 565758596061626364 ... ПоследняяПоследняя
Показано с 591 по 600 из 727

Тема: EmuStudio-ZX

  1. #591

    Регистрация
    22.07.2014
    Адрес
    г. Санкт-Петербург
    Сообщений
    471
    Спасибо Благодарностей отдано 
    36
    Спасибо Благодарностей получено 
    57
    Поблагодарили
    41 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Удивительно, даже WASAPI работает.
    Число 5951 появилось сразу, или же через некоторое время после запуска теста?
    И сколько длился тест?

    Видно, что под wine WASAPI работает иначе.

    1) Система выделила буфер очень маленького размера.
    2) Система согласилась на 48000Гц, хотя буфер микширования работает на 44100Гц.
    число вроде сразу же, тестировалось минут 10

    Этот пользователь поблагодарил blackinwoman за это полезное сообщение:

    Titus(08.03.2020)

  2. #592

    Регистрация
    25.01.2016
    Адрес
    г. Омск
    Сообщений
    105
    Записей в дневнике
    6
    Спасибо Благодарностей отдано 
    97
    Спасибо Благодарностей получено 
    94
    Поблагодарили
    25 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Извиняюсь, не получилось прошлый тест прогнать в предыдущие дни - были проблемы.

    Вот результаты последнего теста на двух домашних ноутбуках с win10-x64.





    -------
    Перед снятием скриншота выдерживал где-то минут 40. Когда появились числа на 1-м скриншоте, точно не знаю, но не ранее чем через 15 минут от начала теста.
    -------
    Завтра еще на win7 на работе потестирую.

    Этот пользователь поблагодарил Verm-V за это полезное сообщение:

    Titus(09.03.2020)

  3. #593

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,401
    Спасибо Благодарностей отдано 
    1,703
    Спасибо Благодарностей получено 
    2,223
    Поблагодарили
    875 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Verm-V Посмотреть сообщение
    Перед снятием скриншота выдерживал где-то минут 40. Когда появились числа на 1-м скриншоте, точно не знаю, но не ранее чем через 15 минут от начала теста.
    А почему два скриншота? Какой из них какой?

  4. #594

    Регистрация
    27.01.2020
    Адрес
    г. Усть-Каменогорск, Казахстан
    Сообщений
    61
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    22
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Результаты теста



    Прогон теста велся 50 минут

    Система:
    ОС Win 10 20h1 сборка 2004 версия 19577.1000
    ОЗУ 16 гб.
    Звук creative sound blaster Z

    Этот пользователь поблагодарил Maxvel за это полезное сообщение:

    Titus(09.03.2020)

  5. #595

    Регистрация
    25.01.2016
    Адрес
    г. Омск
    Сообщений
    105
    Записей в дневнике
    6
    Спасибо Благодарностей отдано 
    97
    Спасибо Благодарностей получено 
    94
    Поблагодарили
    25 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    А почему два скриншота? Какой из них какой?
    Это разные компы.

    Этот пользователь поблагодарил Verm-V за это полезное сообщение:

    Titus(09.03.2020)

  6. #596

    Регистрация
    25.01.2016
    Адрес
    г. Омск
    Сообщений
    105
    Записей в дневнике
    6
    Спасибо Благодарностей отдано 
    97
    Спасибо Благодарностей получено 
    94
    Поблагодарили
    25 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Еще пара тестов с двух компов с win7-x64





    ---
    Гонял минут по 15 каждый.

    Этот пользователь поблагодарил Verm-V за это полезное сообщение:

    Titus(09.03.2020)

  7. #597

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,401
    Спасибо Благодарностей отдано 
    1,703
    Спасибо Благодарностей получено 
    2,223
    Поблагодарили
    875 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию Некоторый итог

    Итак, подведем некоторый итог.

    Комплексные тесты DirectSound и WASAPI Share показали, что чуть более, чем в половине случаев, идея удачная, и позволяет достаточно быстро и точно вычислить реальную частоту семплов.
    В меньшем количестве случаев звуковая карточка не дает точной позиции воспроизведения (огрубляя до 480 (10мс) в любой момент времени). В этом случае также можно вычислить достаточно точную частоту семплов, но ждать придется гораздо дольше (примерно в 480 раз), либо использовать прекалькулированную частоту, выстчитанную ранее за предыдущий сеанс. Также, при такой грубости придется всегда иметь резервный зазор в буфере минимум на 480 отсчетов (10мс), что так же снижает скорость отклика звука относительно реального времени.

  8. #598

    Регистрация
    28.01.2015
    Адрес
    г. Воронеж
    Сообщений
    27
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    6 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Извиняюсь, что немного поздно, но лучше поздно...
    Windows 10 x64, Core i7-9700K, Denafrips Ares with XMOS XU208 USB Audio




    Гонял минут 15.

    Этот пользователь поблагодарил BobrovS за это полезное сообщение:

    Titus(09.03.2020)

  9. #599

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,401
    Спасибо Благодарностей отдано 
    1,703
    Спасибо Благодарностей получено 
    2,223
    Поблагодарили
    875 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию EmuStudio v0.9 test 1 (ZX)

    Итак, новая итерация и совершенно новый принцип подхода к движку эмуляции.

    По сравнению с предыдущим движком (2005 года) переписано примерно всё. Кроме ядер эмуляции, но это уже следующая очередь.
    Самое главное, что я наконец-то добился от движка того, чего хотел, а именно:
    1. Точная синхронизация видео и аудио, не зависимо от того, какие характеристики и источники тактирования у видео и аудиокарт.
    2. Надежная работа всего этого на большинстве современных компьютеров начиная с Win7 (вот это мы сейчас и проверим).
    3. Сверхмалая задержка вывода изображения. В современных системах с поддержкой Independent Flip менее <10мс (при развертке 100Гц) в любом режиме (оконном и полноэкранном). В старых системах задержка на 1 кадр дольше.
    4. Сверхмалая задержка вывода звука в кооперативном режиме WASAPI (это стандартный режим, в котором звук от всех приложений смешивается, затем выводится в конечную точку аудиовывода). И это не смотря на достаточно сложную систему синхронизации аудио и видео, требующую временные зазоры для колебаний частот синхронизации.
    5. Всякие мелочи типа - никаких щелчков в динамиках при запуске и закрытии эмулятора.
    6. Самое качественное масштабирование изображение до любых размеров без какого-либо особо заметного альясинга (учитывая сканлайны, которые и порождают интерференцию).
    7. И всякое другое.

    Теперь немного подробнее. Фактически версия эмулятора является пока что тестом нового движка эмуляции, и модель Спектрума 48 (весьма абстрактная, не пентагон, не классика, а просто для теста с выводом звук а на биппер (AY пока нет)) играет роль тестовой модели.
    Все, подо что был написан старый движок эмулятора (DirecInput, DirectSound, DirectDraw) выкинуто на помойку, как устаревшее 20 с лишним лет назад.
    Теперь все переписано под современные технологии (Direct2D, WASAPI), но поддерживающиеся уже не менее 10 лет, а какие-то и 15.
    Самое сложное, что удалось решить - это точную синхронизацию видео и аудио. Как я уже писал многократно, основная проблема всех эмуляторов в том, что они синхронизируются только по аудио, а видео подгоняется в зависимости от эмулятора с той или иной степенью точности. Любой плавный скролл в игре или демке, даже если ваш монитор имеет развертку равную эмулируемой модели (например, 50Гц), либо кратную (100Гц, 150Гц), все равно будет или неприятно дергаться (не буду называть большинство популярных эмуляторов, грешащих этим), либо почти не дергаться, но раз в несколько десятков секунд, когда набегает погрешность биения частот аудио и видео, все равно будет несколько подергиваний (например, ZXMAK, чем он мне весьма нравился). При этом, НИ ОДНОГО эмулятора, который бы точно синхронизировался по видео и аудио я не встречал (может есть, обязательно укажите).
    В своем тестовом движке я пока что реализовал самый сложный режим синхронизации, когда частота кадров монитора равна или кратна частоте эмулируемой модели, а аудиосистема WASAPI работает в кооперативном режиме (точность отслеживания буфера 10мс).
    Можете запустить любой плавный скролл, и увидите абсолютно плавное движение, без каких-либо подергиваний.

    Ядро эмуляции видео и звука работает с самым высоким приоритетом в фоне, что позволяет достаточно сильно нагружать компьютер другими задачами без тормозов эмуляции.
    С чуть более низким приоритетом работает вывод видео в окно через Direct2D. Если очень активно менять размер окна или иначе насиловать систему, только в этом случае кадры будут пропускаться.
    Если система поддерживает, то используется вывод в окно через MPO (аппаратное многослойное наложение), или как его еще называют Independent Flip (независимое перелистывание). Говоря проще, особая часть видеопамяти проецируется прям в окно, что позволяет избежать необходимости ожидать копозиции рабочего стола Windows (это когда перед выводом нового кадра, все окна собираются системой DWM и рисуются на рабочем столе соблюдая приоритет, наложение и т.д.). Плюс такого вывода - сверхмалая задержка между построением изображения и выводом его на экран (<10мс при развертке 100Гц). Есть и небольшой минус. При изменении размеров такого окна или при перетаскивании окна, система кратковременно отключает Independent Flip, и включает обратно, когда окно перестали перетаскивать или изменять размер. Но это такие мелочи, которыми можно пренебречь.

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

    Сканлайны сделаны на основе пиксельных шейдеров 5.0 (поддерживаются очень давно, но если у вас сверхстарая видюха, то сканлайнов не будет).
    Если очень кратко - пиксельные шейдеры - это малюсенькие программы, выполняющиеся одновременно на куче микроядер GPU, каждая из которых обрабатывает свой пиксель. Это позволяет сильно разгрузить систему.

    Что же касается масштабирования, то оно сделано с использованием самой качественной кубической фильтрации (но и самой нагружающей GPU). Если ваш компьютер, особенно при большом разрешении этого не тянет, можно переключиться системный режим масштабирования покликав в тулбаре на значок красного крестика.

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

    В окно эмулятора можно кинуть любой 48Кб .sna или .z80 и поиграться. Хотя, из-за неполноценности модели не исключено, что какие-то игры и не пойдут, но суть теста не в этом.

    На иконки тулбара обращать внимания не надо, они взяты с потолка для теста тулбара, который тоже я написал сам.

    Немного о клавишах:
    RCtrl + S - запись снапшота
    RCtrl + O - загрузка снапшота
    RCtrl + P - пауза
    RCtrl + F или Alt + Enter - переключение в полноэкранный режим
    LCtrl + RCtrl - сброс
    F2 - включить/выключить меню
    F3 - включить/выключить тулбар

    Задача теста:
    1. Заскриншотить окно анализатора звука, когда оно заполнится почти целиком и прислать сюда.
    2. Заскриншотить окно консоли (копипастой) и тоже прислать сюда.

    p.s.: Забыл предупредить, что запускать надо ту версию, которая ближе по частоте кадров к частоте кадров вашего монитора.
    Т.е. если у вас монитор 60Гц, то запускать надо версию 50Гц.
    Если 100Гц, то запускать 100Гц.
    Audiobuf можно выбирать 0.5, если звуковая карточка стабильная, хорошая, и 3.5, если ее характеристики гуляют. Но для теста можно запускать 3.5, чтобы наверняка.
    И если у вас Win7, и почему-то не идут нормальные версии, то можно запустить версию DWM.

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

    [свернуть]


    EmuStudio v0.9 test 1 (ZX)
    Последний раз редактировалось Titus; 08.03.2025 в 14:32.

    Эти 5 пользователя(ей) поблагодарили Titus за это полезное сообщение:

    CityAceE(10.03.2025), creator(08.03.2025), Reobne(13.03.2025), solegstar(17.03.2025), ZEman(08.03.2025)

  10. #600

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,966
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    314
    Поблагодарили
    237 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Теперь немного подробнее. Фактически версия эмулятора является пока что тестом нового движка эмуляции, и модель Спектрума 48 (весьма абстрактная, не пентагон, не классика, а просто для теста с выводом звук а на биппер (AY пока нет)) играет роль тестовой модели.
    и как ты себе представляешь тест на гладкость одновременно видео и звука с таким конфигом?
    нужно минимум 128+AY - чтобы строчки под фоновую музыку бегали
    до того - не вижу смысла запускать даже

    Цитата Сообщение от Titus Посмотреть сообщение
    Самое сложное, что удалось решить - это точную синхронизацию видео и аудио. Как я уже писал многократно,
    как уже писал многократно, в общем случае точная синхронизация по более чем одной характеристике невозможна
    вот не повезёт с системой на уровне железа/дров/процессов - и одно таки придётся подгонять-подстраивать под другое
    подгонять звук проще, даже чисто программно, но традиционно почему-то предпочитают картинкой жертвовать

    Цитата Сообщение от Titus Посмотреть сообщение
    основная проблема всех эмуляторов в том, что они синхронизируются только по аудио, а видео подгоняется в зависимости от эмулятора с той или иной степенью точности. Любой плавный скролл в игре или демке, даже если ваш монитор имеет развертку равную эмулируемой модели (например, 50Гц), либо кратную (100Гц, 150Гц), все равно будет или неприятно дергаться (не буду называть большинство популярных эмуляторов, грешащих этим), либо почти не дергаться, но раз в несколько десятков секунд, когда набегает погрешность биения частот аудио и видео, все равно будет несколько подергиваний (например, ZXMAK, чем он мне весьма нравился). При этом, НИ ОДНОГО эмулятора, который бы точно синхронизировался по видео и аудио я не встречал (может есть, обязательно укажите).
    ну здрасьте, ни одного... а я здесь с чем столько времени распинаюсь?
    Прихожу без разрешения, сею смерть и разрушение...

Страница 60 из 73 ПерваяПервая ... 565758596061626364 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Эмулятор УКНЦ - EmuStudio
    от Titus в разделе Эмуляторы отечественных компьютеров
    Ответов: 1198
    Последнее: 07.05.2025, 13:34
  2. Эмулятор МС-0515 - EmuStudio
    от Titus в разделе Эмуляторы отечественных компьютеров
    Ответов: 143
    Последнее: 09.02.2023, 10:44

Ваши права

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