Важная информация

User Tag List

Страница 15 из 24 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя
Показано с 141 по 150 из 234

Тема: Новый эмулятор ZX Spectrum - Спектрамин

  1. #141

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от omercury Посмотреть сообщение
    Монитор (телевизор) тоже тактируется от своего отдельного генератора, частота которого не совпадает с клоком источника видеосигнала.
    В этом можно быть уверенным на 147%, однако Вас почему-то не смущает его ресинхронизация с источником каждую строку.
    Кстати, эффект называется "джиттер"
    монитор синхронизируется от входного видеосигнала.

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


    Цитата Сообщение от omercury Посмотреть сообщение
    Вот Вы очень удачный пример привели про прямую линию с углом расположения кратным 90 градусов и с углом не кратным этому значению.
    На матрице 8х8 выглядеть будет ужасно, а на экране 4к уже вроде как бы и ничего...
    чтобы получить тот-же эффект, прийдётся использовать дисплей с развёрткой 25000 кадров в секунду, вместо 60-100.
    При 25000 кадрах в секунду, изображение тоже будет очень близким к родному 50-герцовому

    А вот вы попробуйте растянуть картинку 8x8 на дисплей 9x9 пикселов, да так, чтобы смотрелась она также как на дисплее 8x8
    Это и будет тот самый случай передискретизации из 50 Гц в 60/75/85
    Последний раз редактировалось ZXMAK; 12.05.2019 в 15:26.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  2. #142

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

    По умолчанию

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    нет, подстройка частоты сэмплирования источника ведёт к плавающему частотному искажению звука.
    Это не решение. Это попытка спрятать проблему путём добавления новых артефактов.
    Нет, это именно решение. Так как колебания частоты были менее десятых (а может и сотых, точно сейчас не помню) процента, что никаким образом уже на слух не фиксируется.

    - - - Добавлено - - -

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    у меня просто заполнение кадров поддерживается по возможности равномерным, а не случайно куда кадр попадёт.
    Каким именно образом?

  3. #143

    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    монитор синхронизируется от входного видеосигнала.
    Ага, уже лучше.
    Посмотрел ДШ на несколько звуковых кодеков, у всех есть вход синхронизации 48kHz (какая знакомая частота! к чему бы?...) фиксированное значение.
    Вывод: все остальные частоты дискретизации - в чистом виде ресемплинг.
    ...и совсем нет буферизации...
    то есть "циркулярный буфер" есть понятие эмпирическое, существующее в воспалённом мозгу аудиодрайвера.


    Цитата Сообщение от ZXMAK Посмотреть сообщение
    Джиттер это из другой темы, это по сути нестабильность частоты относительно эталонного сигнала, т.е. когда длительность периода немного гуляет относительно эталона, но в среднем за длительное время число периодов получается правильное.
    Относительно себя (того, что должно быть), но не суть, аудиофилы на него очень сильно обижены.


    Цитата Сообщение от ZXMAK Посмотреть сообщение
    чтобы получить тот-же эффект, прийдётся использовать дисплей с развёрткой 25000 кадров в секунду, вместо 60-100.
    При 25000 кадрах в секунду, изображение тоже будет очень близким к родному 50-герцовому
    На 100Гц всё шоколадно, на 75 тоже хорошо - кадр1 -> кадр1+кадр2 -> кадр2.
    60Гц - очень поганая частота в наших широтах...

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    А вот вы попробуйте растянуть картинку 8x8 на дисплей 9x9 пикселов, да так, чтобы смотрелась она также как на дисплее 8x8
    Это и будет тот самый случай передискретизации из 50 Гц в 60/75/85
    *9 и /8
    Линии будут - закачаешься...

    В нашем случае кратность таки побольше (3-4-6-8 раз), да и видеокарточки позволяют использовать свои ресурсы почти как заблагорассудится.
    А если учесть, что ресемплинг и сглаживание их основное предназначение...

  4. #144

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

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    То, что для одного приемлемо, для другого - нет)
    то есть для тебя неприемлем спектрум-128 потому что даже (960+10)/960 = 1.0104 < 1.0134 = 3.5469/3.5
    что, по твоим словам, является "ГИГАНТСКОЙ погрешностью", притом постоянной, но почему-то никого особенно не волнует
    при том, что типичная (и далеко не каждый кадр) корректировка только "1-2 сэмпла", и большие выбросы можно сглаживать

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

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    эффект от подобной подстройки может быть даже хуже, чем пропуск при накоплении ошибки.
    Во первых будет проблема с динамической подстройкой, её не так просто расчитать из-за отсутствия точных и стабильных временных меток.
    Во вторых небольшое изменение частоты дискретизации исходного сигнала приведёт к плаванию тональности звука. Это уже будет совсем не то пальто
    см. выше: значит, спек-128 - "не то пальто" хотя вряд ли и его на слух получится отличить, не говоря уже о намного менее заметной корректировке

    - - - Добавлено - - -

    и да, динамичный звук некорректно сравнивать с растянутой статичной картинкой, в промелькнувшем кадре хрен вы подсчитаете, сколько точек
    Прихожу без разрешения, сею смерть и разрушение...

  5. #145

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Нет, это именно решение. Так как колебания частоты были менее десятых (а может и сотых, точно сейчас не помню) процента, что никаким образом уже на слух не фиксируется.
    изменение на доли герца прекрасно фиксируются на слух, например по биениям с эталонным сигналом. На этом принципе работает настройка с помощью камертона.

    Короче тот способ, что Вы предлагаете - это есть по сути нелинейное искажение сигнала. Причём постоянно меняющееся. Что есть очень плохо.

    - - - Добавлено - - -

    Цитата Сообщение от omercury Посмотреть сообщение
    Ага, уже лучше.
    Посмотрел ДШ на несколько звуковых кодеков, у всех есть вход синхронизации 48kHz (какая знакомая частота! к чему бы?...) фиксированное значение.
    Вывод: все остальные частоты дискретизации - в чистом виде ресемплинг.
    ...и совсем нет буферизации...
    то есть "циркулярный буфер" есть понятие эмпирическое, существующее в воспалённом мозгу аудиодрайвера.
    мне Ваш вывод не понятен Звуковая карта живёт своей жизнью, видеокарта своей. У обоих свои источники синхронизации и они друг о друге ничего не знают. Как будет происходить синхронизация видео и звука - это проблема софта.


    Цитата Сообщение от omercury Посмотреть сообщение
    аудиофилы на него очень сильно обижены.
    и правильно делают. Джиттер при тактировании ЦАП-а приводит к росту нелинейных искажений. Но это совсем другая история

    Цитата Сообщение от omercury Посмотреть сообщение
    На 100Гц всё шоколадно, на 75 тоже хорошо - кадр1 -> кадр1+кадр2 -> кадр2.
    60Гц - очень поганая частота в наших широтах...
    это кажется что хорошо.
    Да, 100 Гц кратная частота, поэтому проблем с алиасами не будет, но визуально 100 Гц развёртка воспринимается всётаки несколько иначе, чем 50 Гц. На 100 Гц ЭЛТ дисплее 50 Гц обновление выглядит немного дёрганным
    Чтобы устранить этот эффект, нужен полноценный апсэмплинг пикселов. Для 100 Гц промежуточные кадры должны заполняться усреднённым значением между двумя кадрами.

    На 75 Гц тоже есть проблемы с отображением - выражается в неправильном восприятии цвета в мультиколорных демах.
    А 60 и 85 Гц - это вообще не кратные частоты, поэтому с ними получается постоянно меняющаяся ошибка.

    - - - Добавлено - - -

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

    - - - Добавлено - - -

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

    - - - Добавлено - - -

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    и да, динамичный звук некорректно сравнивать с растянутой статичной картинкой, в промелькнувшем кадре хрен вы подсчитаете, сколько точек
    тут вроде уже смешались кони люди...
    Мы про какой вопрос говорим? Про вывод 50 Гц видео на 60/75/85/100 Гц дисплее? или про синхронизацию звуковой и видео карт?

    В указанной вами цитате речь шла про звук с динамически изменяющейся частотой дискретизации. Другими словами скорость магнитофонной ленты со звуком подстраивается под частоту кадров кинопроектора. За счёт меняющейся скорости воспроизведения тональность звуков меняется. И это легко заметить. Я считаю это намного хуже, чем единичный щелчёк или пропуск видеокадра (в зависимости от чего синхронизироваться) раз в час или реже.

    В большинстве случаев синхронизации от звуковой карты более чем достаточно, при этом также минимальные требования к производительности. Звук при этом звучит без пропусков и щелчков. А редкий пропуск видеокадра абсолютно не заметен. К тому-же под Win драйвер nVidia сам грешит таким, особенно когда параллельно какая-то графика в Chrome работает.
    Последний раз редактировалось ZXMAK; 12.05.2019 в 20:26.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  6. #146

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

    По умолчанию

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    при динамической подстройке на отрезках порядка фрейма стабилизировать частоту не выйдет, не получится измерить реальную частоту обновления с достаточной точностью за один кадр. Поэтому скорость воспроизведения звука будет заметно гулять
    что значит "достаточной"? насколько "заметно"? гуманитарщина...

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    Я помню, кажется Titus выкладывал эмулятор с такой подстройкой, в нём реально на слух было слышно изменение тональности звука.
    "таких" много, подобрать параметры можно разные

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    тут вроде уже смешались кони люди...
    Мы про какой вопрос говорим? Про вывод 50 Гц видео на 60/75/85/100 Гц дисплее? или про синхронизацию звуковой и видео карт?
    лично я - про эффекты передискретизации вообще

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    В указанной вами цитате речь шла про звук с динамически изменяющейся частотой дискретизации.
    где, какой? я в добавке ничего не цитировал и говорил о динамической природе звука как такового
    любой звук корректней сравнивать с гигаскрином и анимацией, а не со статическими картинками

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    Другими словами скорость магнитофонной ленты со звуком подстраивается под частоту кадров кинопроектора
    никак нет - под среднюю (за обозримый период) реальную скорость обработки звука системой

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    За счёт меняющейся скорости воспроизведения тональность звуков меняется. И это легко заметить. Я считаю это намного хуже, чем единичный щелчёк или пропуск видеокадра (в зависимости от чего синхронизироваться) раз в час или реже.
    Это голословное заявление и притом в противоречии с практикой - повторю, на разницу в звучании спектрумов 48 и 128 до сих пор особо никто не жаловался, а вот щелчки немедленно замечают, как видим выше. А почему? Полагаю, потому что человеческий организм - измерительный инструмент аналоговый, неточный, да еще с плавно изменяющейся чувствительностью. Ему резкий перепад сигнала проще заметить.

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    В большинстве случаев синхронизации от звуковой карты более чем достаточно, при этом также минимальные требования к производительности. Звук при этом звучит без пропусков и щелчков
    ...и потому нас должно интересовать большинство из меньшинства случаев, когда синхронизации недостаточно

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    А редкий пропуск видеокадра абсолютно не заметен.
    еще как заметен на бегущих строках и гигаскринах, и даже "редкий"
    Прихожу без разрешения, сею смерть и разрушение...

  7. #147

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

    По умолчанию

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    изменение на доли герца прекрасно фиксируются на слух, например по биениям с эталонным сигналом. На этом принципе работает настройка с помощью камертона.

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

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    при динамической подстройке на отрезках порядка фрейма стабилизировать частоту не выйдет, не получится измерить реальную частоту обновления с достаточной точностью за один кадр. Поэтому скорость воспроизведения звука будет заметно гулять. Я помню, кажется Titus выкладывал эмулятор с такой подстройкой, в нём реально на слух было слышно изменение тональности звука.
    Выйдет и получится. Не будет она гулять на слух вообще.
    Я выкладывал всякие релизы для тестов, чтобы понять, какие у народа звуковухи. Оказалось, что таких, как у меня, дающих информацию о позиции воспроизведения с точностью до семпла, практически нет. Поэтому все гуляло.

  8. #148

    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    Цитата Сообщение от omercury Посмотреть сообщение
    Ага, уже лучше.
    Посмотрел ДШ на несколько звуковых кодеков, у всех есть вход синхронизации 48kHz (какая знакомая частота! к чему бы?...) фиксированное значение.
    Вывод: все остальные частоты дискретизации - в чистом виде ресемплинг.
    ...и совсем нет буферизации...
    то есть "циркулярный буфер" есть понятие эмпирическое, существующее в воспалённом мозгу аудиодрайвера.
    мне Ваш вывод не понятен Звуковая карта живёт своей жизнью, видеокарта своей. У обоих свои источники синхронизации и они друг о друге ничего не знают. Как будет происходить синхронизация видео и звука - это проблема софта.
    Попробуем на пальцах.
    Только что, путём несложного анализа схемотехники было доказано, что частота дискретизации не зависит от тактовой звукового чипа. И от косорукости программиста тоже (хотя именно в этом я могу и ошибаться, внутреннее построение чипсета мне неизвестно).
    Ибо синхронизация внешняя, аппаратная, от южного моста чипсета.
    Тон, да, зависит, но сэмплрейт никак (в пределах такта клока 1/24,56М).
    И что-то мне подсказывает, что точно также я найду синхронизацию видеокарты.
    Либо ОТ видеокарты.
    Как минимум IRQ там точно присутствует.


    Цитата Сообщение от ZXMAK Посмотреть сообщение
    Цитата Сообщение от omercury Посмотреть сообщение
    На 100Гц всё шоколадно, на 75 тоже хорошо - кадр1 -> кадр1+кадр2 -> кадр2.
    60Гц - очень поганая частота в наших широтах...
    это кажется что хорошо.
    Да, 100 Гц кратная частота, поэтому проблем с алиасами не будет, но визуально 100 Гц развёртка воспринимается всётаки несколько иначе, чем 50 Гц. На 100 Гц ЭЛТ дисплее 50 Гц обновление выглядит немного дёрганным
    Чтобы устранить этот эффект, нужен полноценный апсэмплинг пикселов. Для 100 Гц промежуточные кадры должны заполняться усреднённым значением между двумя кадрами.
    Вычислить, например, из пяти реальных кадров четыре кадра (первый и шестой остаются исходными) со сдвигом (50 -> 60Гц) не такая уж тривиальная задача.
    ЯТД
    С соответствующей задержкой, разумеется.
    Последний раз редактировалось omercury; 13.05.2019 в 03:17.

  9. #149

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    Это голословное заявление и притом в противоречии с практикой - повторю, на разницу в звучании спектрумов 48 и 128 до сих пор особо никто не жаловался
    при чём тут спектрум 48 и 128? И у того и у другого тактовая частота стабильная и не меняется.
    А тут речь идёт о том чтобы сделать частотную модуляцию тактовой частоты, т.е. частота будет постоянно меняться в зависимости от текущей ошибки между опорными генераторами звуковой и видео карт. А также от ошибки измерения этой ошибки

    - - - Добавлено - - -

    Цитата Сообщение от omercury Посмотреть сообщение
    Как минимум IRQ там точно присутствует.
    при чём тут IRQ?! Видели в спектруме есть такой элемент - кварцевый осциллятор, который даёт опорную частоту, от которой вырабатываются остальные частоты? Вот такой-же осциллятор стоит на звуковой карте и на видео-карте. Частоты и фазы этих осцилляторов плавают от начального несоответствия и от температуры. Из-за этого несоответствия получается небольшая ошибка. Она очень маленькая, но со временем накапливается.

    Если привести обе частоты к 50 Гц, то эта ошибка составит менее 0.001 Гц, может даже меньше. Но она есть и со временем накапливается.
    Последний раз редактировалось ZXMAK; 13.05.2019 в 09:58.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  10. #150

    Регистрация
    08.10.2006
    Адрес
    Cheboksary
    Сообщений
    32
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Поколению мало эмуляторов. &(Нехай делать ?). Напиши лучше Качественный C/C++(+LLVM Z80) компилятор для Z80 - ПОЛЬЗы БуДЕТ БоЛЬШЕ !

Страница 15 из 24 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Новый эмулятор на Javascript (jVGS)
    от Epsilon в разделе Эмуляторы
    Ответов: 15
    Последнее: 22.01.2018, 13:06
  2. Ответов: 8
    Последнее: 10.03.2016, 10:29
  3. Новый эмулятор ПК-01 ЛЬВОВ.
    от MaratBest в разделе Львов
    Ответов: 10
    Последнее: 17.10.2013, 15:24
  4. Новый глобальный эмулятор!!
    от copperfeet в разделе Эмуляторы
    Ответов: 1
    Последнее: 12.02.2009, 20:54
  5. ZX68 - новый эмулятор Спектрума для PalmOS
    от CityAceE в разделе Эмуляторы
    Ответов: 19
    Последнее: 15.02.2006, 14:12

Ваши права

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