PDA

Просмотр полной версии : Воспроизведение звуковой анимации с ROM-Дисков



Alikberov
11.04.2024, 20:00
Предлагаемый Вашему вниманию проигрыватель позволяет воспроизводить звуковой видеоряд непосредственно с ROM-Диска по схеме Апогея с поддержкой до 256 страниц.

Качество воспроизведения примерно такое:

http://www.youtube.com/watch?v=uG3DoB-Ksto

Перемотка клавишами организована крайне примитивно, так как фактически она не нужна.

P.S.: Особая благодарность Shaos, за конвертацию видео и предоставление образа ROM-Диска!

Shaos
14.04.2024, 06:30
Вот ромдиск с видео 7.5 FPS (эффективное разрешение 128х50 псевдопикселов с примерно 16 градациями "серого") и 1-битным звуком 6 кГц (выводится через выход на магнитофон)

Видеоплеер записан в начале каждой страницы ромдиска и запускается так:


R,1FF
G

Автор идеи и кода плеера - Alikberov

Я лишь конвертировал видео и звук, а также поправил плеер так, чтобы исключить из видеопамяти спецкоды F1 и F3, которые хоть и дают выигрышь по скорости, но сбивают равномерность циклов ПДП, что приводило к шуму :v2_dizzy_roll:

https://zx-pk.ru/attachment.php?attachmentid=80649

P.S. Текущая версия Emu80 сможет играть этот видеоролик если установить размер ромдиска 8 МБ через параметр romDisk.extBits = 8 (через sizeMB пока не работает уже тоже работает, если собирать из исходников)

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

P.P.S. Видео того как оно играет в эмуляторе:

ВИДЕО С ЮТЮБА ПРИШЛОСЬ УДАЛИТЬ

Программу для конверсии произвольной последовательности Grayscale PNG 128x50 в такое видео опубликую позже

В пределе в ромдиск 8МБ в таком формате может влезть до 341 секунды видео (5 мин 41 сек)

Shaos
14.04.2024, 13:07
И ещё пример :)


https://www.youtube.com/watch?v=HnfpJOMKfzw

Pyk
14.04.2024, 22:29
Я бы попробовал уменьшить размер пакетов ПДП, чтобы добиться более равномерного торможения процессора и тем самым уменьшения хриплости звука. Расчеты показывают, что оптимальным будет использование пакетов из 4 циклов ПДП с паузой между ними в 7 тактов ВГ75. Для этого нужно изменить команду Start Display с 27h на 26h (байт по адресу B1h). Однако, по расчетам у меня получилось почти "впритык". Хотя оно работает в эмуляторе, неплохо бы проверить на реале, хотя бы на статичной картинке...

Shaos
14.04.2024, 23:57
Alikberov там что-то настраивал в этом духе

Shaos
15.04.2024, 17:26
Вот забил 8МБ ромдиск почти под завязку :v2_dizzy_rastoman:


https://www.youtube.com/watch?v=cviFCs9BV4k

Архив с ромдиском можно взять у меня на форуме...

Shaos
19.04.2024, 05:20
https://www.youtube.com/watch?v=mU3P1l2KYnk

Shaos
20.04.2024, 09:48
https://www.youtube.com/watch?v=-YGxwnf0A9U

Alikberov
23.04.2024, 17:00
На данный период пытаюсь отладить собственный скрипт конвертации аудио в ROM-образ (https://gistpreview.github.io/?ad8f341bb2537179dcc3554d1271fea6).

Нажмите кнопку «Start»
Выберите файл клипа или mp3
Установите параметры преобразования (опционально)
Установите размах ШИМ/ИКМ амплитуды [2-13] (чем выше квантование уровня, тем ниже частота дискретизации и сильнее свист)
Можно выбрать алгоритм кодирования - «Unipolar» однополярный (громкий, хриплый) или «Bipolar» двухполярный (мягкий, но подсвистывающий)
Можно выбрать алгоритм проигрывания - «V1.0» с побочной фоновой помехой 69 Гц или «V1.1» с подавлением фоновой помехи
Заполните поля композиции/исполнителя/даты
Нажмите Enter или кнопку Play
Дождитесь завершения проигрывания
Сохраните в удобное место
Укажите ROM-Образ в Emu80
Наберите «R,FF» и «G0» (запуск после нажатия-отпускания любой клавиши)
Скрипт пока достаточно сырой и имеет много проблем.

Как пример, вот двухполярный звук на семь уровней:80695
И для сравнения, однополярный звук на семь уровней:80696

Версия с подавлением фона в 69 Гц на девять уровней:80701

Alikberov
06.05.2024, 14:34
Не совсем анимация, но в соседней теме (https://zx-pk.ru/threads/35453-polifonicheskaya-muzyka-na-radio-86rk.html?p=1198363#post1198363) представил код для воспроизведения несжатого потокового аудио с SD-Карты (проверил специально на Апогее в Emu80).

Shaos
03.07.2024, 23:08
Вот ещё видосик, который до недавнего времени был заблокирован со стороны ютюба в РФ и РБ:


https://www.youtube.com/watch?v=pzPbJtPx0bM

Архив с ромдиском можно взять у меня на форуме...

Shaos
04.07.2024, 23:09
Программу для конверсии произвольной последовательности Grayscale PNG 128x50 в такое видео опубликую позже

В пределе в ромдиск 8МБ в таком формате может влезть до 341 секунды видео (5 мин 41 сек)
Конвертеры статических картинок и видео лежат на гитлабе с апреля 2024: https://gitlab.com/shaos/super-86rk/-/tree/main/tools?ref_type=heads

cy6
06.07.2024, 10:19
В пределе в ромдиск 8МБ в таком формате может влезть до 341 секунды видео (5 мин 41 сек)
Имхо, практического смысла маловато. Целый ромдиск и 5 минут.
С карточки читать, это другое дело.
Ну и можно еще добавить цвет в этот ascii-арт, сделать набор символов настраиваемым. В некоторых видео, это улучшит четкость восприятия картинки.

Alikberov
06.07.2024, 23:55
Имхо, практического смысла маловато. Целый ромдиск и 5 минут.Идея появилась из экспериментов оптимизации алгоритма прокрутки экрана до предельных скоростей.
Решил проверить алгоритм на скорость чтения ROM-Диска.

С карточки читать, это другое дело.Там много нюансов. Звук воспроизводится с паразитным фоном, который пока не удалось устранить из-за особенностей (и недопонимания) работы SD-Контроллера. А без решения этой проблемы, вывод кадров без сбоя синхронизации никак не получится.

Ведущий_специалист
11.07.2024, 19:49
Вот ещё видосик, который до недавнего времени был заблокирован со стороны ютюба в РФ и РБ:

Архив с ромдиском можно взять у меня на форуме...

Придумал немного автоматизированное производство таких видеокассет
По сути рквод имеет пару тройку таких болванок и вставляя в ркшку нужно чтобы он сам копировал с сд карты видеоролики на эту "болванку" а потом уже смотрел . Раз уж из сд карты никак не посмотреть по скорости. Единственная проблема на вв55 нужно будет поставить переходничек, чтобы сел и контроллер сд карты и флэшка для видосиков. Вот такая тема уже будет интересна. Пришли гости - включил ркшку, вставил видеокассету с аха и все смотрят... И нахрен эти все гуглы с блокировками идут.

Alikberov
12.07.2024, 14:54
Раз уж из сд карты никак не посмотреть по скорости.Немного не так. По скорости возможно и потянет.
Но контроллер SD каждые 64 Кб выдаёт код 4Fh или 0Eh, причём с периодичностью, которая пока не предсказуется (моим кодом).
При проигрывании аудиотреков это даёт "щелчки" с известной периодичностью.

В принципе, на "чистые" 30 кадров 64 Кб хватит, но потом кадры начнут "уезжать".
Проверить можно. Но пока нет настроения из-за отсутствия идей подавления периодических "помех".

Pyk
12.07.2024, 14:58
Тест на реале проигрывателя Руслана показал, что воспроизведение еще и затыкается через несколько секунд :(
В причинах я не разбирался...