Как стать автором
Обновить
15
0
Евгений Перегуда @Xirexel

Разработчик программного обеспечения

Отправить сообщение

CaptureManagerLibrary это библиотека типов (TLB), интегрированная в CaptureManager.dll (aka ActiveX).
Для регистрации требуется выполнить в командной строке
regsvr32 x64\CaptureManager.dll
или
regsvr32 x86\CaptureManager.dll

А на Switch — не будет тормозить (как homebrew приложение).

Вот это дельный feedback. Возьму за базовый паттерн.

Так есть подобное решение — в RetroArk есть исправление нарушения перспективы для PS1 эмулятора, и код в открытом доступе. Но у меня нет feedback от пользователей — я добавил поддержку честного 4К для PS1, PS2, PSP (с поддержкой записи и стрима) и что!?!
Пока что проект я веду как открытый proof of experience — как доказательство опыта.

Над этим надо ещё поработать.

В защиту интегрированного видео и аудио захвата:


  1. отсутствие "конкуренции" разных процессов за ресурсы памяти и CPU — разделение данных внутри процесса требует меньших затрат;
  2. поддержка аппаратного кодирования уже реализована;
  3. захват аудио потока происходит на уровне эмулятора, в отличие от OBS, где захват происходит на уровне микшера OS — в результате в эмуляторе захватывается только игровой аудио поток. Более того, можно полностью отключить звук, подаваемый от эмулятора на микшер OS и включить любой аудио трек в WinAmp — эмулятор запишет только игровое аудио.

Интеграция видео и аудио захвата в код эмулятора позволяет изолировать процесс захвата от окружения в OS.

Согласен — для тесселяции нужна ещё карта высоты. В принципе, карту высоты можно генерировать по нормалям вершин, но мне так и не удаётся извлечь эти данные из рендерера — хотя по идеи они должны быть — PS2 поддерживает вершинное освещение по Фонгу.

"А есть екзешник" — Omega Red PS2 emulator — Omega_Red.zip — только исполняемый файл — без инсталяции, без записи в реестр, без требования доступа админа — "кликнул" и играй.

FPS я не измерял, но на i5 и интегрированом видео игра идёт комфортно (с небольшими лагами в аудио потоке). Для FF это нормально — там все боёвки пошаговые.

Проект тестировался только для Windows 10. Минимальная версия dotNet 4.5.1.

"В PCSX2 в настройках есть ползунок" — а нужен ли он, если находится всегда в значении "Default"?

Низкочастотный фильтр аппроксимирует сигнал — изображение на основе проекции в линейное ортогональное пространство (обобщённо говоря). Описанный в статье метод является НЕЛИНЕЙНЫМ поиском подобия с принятием разностного решения нейронной сетью. Я работал с подобной технологией на основе фрактальных преобразований — там так-же требуется установить подобие, но уже глобальное — для всего изображения — можете ознакомиться с постом: https://habr.com/post/309906/

Занимательная статья. Интересно было пробежаться по основам теории сигналов (или как её сейчас называют!?!), которую изучал давным давно. Согласен с автором. Но если частоту дискретизации выбрать большей чем частота Найквиста, то возможно создать цифровой БИХ фильтр или воспользоваться свойством автокорреляции белого шума (на подобном трюке строились гребенчатые фильтры для аналогового телевидения). Но это выходит за рамки исходной задачи.

Если я неошибаюсь, у Vista была главная проблема с графическим драйвером — его центральная проблема была в offscreen рендеренге и последующей прорисовке как 2D текстуры. На этом строилась и Aero Glass. До сих пор помню проблему с главным проектом фирмы — программе смешивалось видео и GUI/DirectX графические элементы. На 98 и XP это выполнялось через colorkey 0x100010 — т.е. сначало прорисовывалось GUI/DirectX с colorkey а затем поверх этого графическая карта добавляла видео на место colorkey. Но на Vista это не работало — графическая система рендерила элементы по отдельности, а потом смешивала. Проблему решили через установку colorkey transperent дла каждого элемента GUI/DirectX.

На мой взгляд, для описания линии как фрактала более подходяще "Канторова пыль (множество)", но хотел бы уточнить, что вы имеете в виду под


размерность 1

В чём измеряется эта размерность? В случае усреднения семплов это понятно — было четыре семпла с максимальным расстоянием в три семпла и минимальным ноль семплов, после усреднения получили максимальное расстояние в один семпл и минимальным ноль семплов. В этом случае семпл есть мера расстояния и размерность определяется совокупностью всех семплов во множестве.

В данном случае «хаос» предполагает чуствительность к отклонениям, а фрактальные преобразования обладают такой чуствительностью в связи с их рекурсивной природой.
Интересная публикация. Возможно, часть искажений являются результатами ошибок в коде. Но по поводу «аудио-фракталов» несоглашусь. В этом случае нужно определить, что значит «аудио» — психо-физиологическое восприятие изменение давления воздух, созданное акустической системой под воздействием цифро-аналогового преобразования массива байтов, интерпетируемого как множество выборок аудио потока. Фрактальные преобразования могут апроксимировать множества при услови дробности пространства. Дробность пространства определяется операциями над множествами — в случае кода это операция усреднения над данными в double типе — эта операция дробления пространства между элементами множества, так-как уменьшает расстояние между элементами множества(если расстояние между элементами было четыре элемента, то в результате оно станет равным двум элементам.). Таким образом, не существует особых «аудио-фракталов». Существуют только множества семплов, которые можно апроксимировать фрактальными преобразованиями, если поместить их в дробное пространство.
Идея оригинальной статьи является попытка инженерного исследования возможности применения математических принципов, в корне отличающихся от принципов, положенных в основу известных форматов сжатия аудио данных: апроксимацией ортогональными рядами (Дискретно-Косинусные Преобразования) и линейными предсказаниями.
Интересно будет ознакомиться с результатами, но ждать потребуется долго — месяц или два. На CodeProject модерация проходит быстрее.
Исполняемый файл для Winamp можно найти сайте CodeProject.
Проект включает несколько веток разработки. Стабильным является master branch — tag v0.0.2. Я скомпилировал код этой ветки на Qt5.7 mingw32 без проблем. Я работаю на Windows и представил исходный код на Qt для кроплатформенного решения, поэтому исключил исполняемые файлы.

Информация

В рейтинге
Не участвует
Откуда
Cronulla, New South Wales, Австралия
Дата рождения
Зарегистрирован
Активность