AIMP Forum

AIMP for PC => Плагины / Plugins => Дополнения / Addons => Визуализации / Visualizations => Topic started by: Black_AVP_Bim on October 27, 2024, 13:58:16

Title: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on October 27, 2024, 13:58:16
[catalog_card=1318]

В плагине использована библиотека ACL (https://github.com/ArtemIzmaylov/ACL?tab=MPL-2.0-1-ov-file), лицензия MPL-2.0.
Пики можно отключить/включить кликом ЛКМ по окну визуализации.

SpectrumFlame v2 (https://disk.yandex.ru/d/glNtjsGN5-TMBA)

Проверено VirusTotal (https://www.virustotal.com/gui/file/bcbb71546100e8313151f39952995dcfbaa4dfaf5cb7990ff6dc1cfdfc508bbb?nocache=1).
Title: Re: SpectrumFlame [AIMP 5.30]
Post by: raul on October 28, 2024, 02:51:23
Looks great, and what about my request of projectM?
Have you got the source code of it?
Title: Re: SpectrumFlame [AIMP 5.30]
Post by: Black_AVP_Bim on October 29, 2024, 16:55:51
... and what about my request of projectM?
У меня не та квалификация, чтоб участвовать в каких-то проектах.

Have you got the source code of it?
Там нет ничего интересного. Одна и та же текстура для всех столбиков спектрума растягивается по вертикали в зависимости от уровня сигнала. И всё.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: sveakul on November 01, 2024, 09:16:16
A nice spectrum with a "holiday" feel to it, thanks!  It would be nice to have an adjustable "peak decay", and kHz/dB X/Y scales.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 01, 2024, 11:51:02
... It would be nice to have an adjustable "peak decay", and kHz/dB X/Y scales.
Какой-либо диалог настроек ко встроенной визуализации не прицепишь.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: sveakul on November 01, 2024, 12:05:37
Какой-либо диалог настроек ко встроенной визуализации не прицепишь.
OK!  Not even like OpenSpectrumLazarus did with *.bin files?
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 02, 2024, 19:07:06
Not even like OpenSpectrumLazarus did with *.bin files?
У нас концепции разные. В этом плагине используется одна текстура на все столбики, причём белого цвета, а поверх маскирующая текстура в виде радуги.
При растягивании окна число столбиков изменяется, но при этом в любом случае отображается весь спектр согнала. Все 256 столбиков можно увидеть только на 4К мониторе (если процессор потянет).
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 03, 2024, 03:27:20
При растягивании окна число столбиков изменяется, но при этом в любом случае отображается весь спектр согнала. Все 256 столбиков можно увидеть только на 4К мониторе (если процессор потянет).

(https://www.aimp.ru/forum/index.php?action=dlattach;topic=73593.0;attach=72692)

При масштабе 100% на весь экран насчитал 240, если не ошибся... :-\
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 03, 2024, 11:03:35
При масштабе 100% на весь экран насчитал 240, если не ошибся... :-\
Да, слушай, точно. Просчитался я: когда выбирал ширину текстуры, у меня почему-то в голове крутилось число 4096, поделив на 256, получил 16, а размер экрана на самом то деле 3840. Можно переделать, конечно, но не критично.
И не лень было глаза ломать! :o
На мониторах с бОльшим разрешением столбиков будет 256 и они уже начнут растягиваться по ширине, чего, правда, проверить нет возможности.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 03, 2024, 11:42:21
Считал в Фотошопе по скриншоту с увеличением, помечая десятки, по другому точно не разглядел бы. Число столбиков уж точно не критично. Скоро на 8К пересядем  :P
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 03, 2024, 11:45:56
... Скоро на 8К пересядем  :P
Если доживём.
Какая нагрузка у тебя на проц на полном экране?
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 03, 2024, 12:00:27
Если ничего не путаю, то на уровне 28%
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 08, 2024, 10:51:40
Сделал вариант с зеркальным отражением, но уж больно прожорливая визуалка получилась. :-[ Пользоваться можно только в оконном режиме.
Ссылка в шапке (ЯД).

(https://www.aimp.ru/forum/index.php?action=dlattach;topic=73593.0;attach=72722)
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 08, 2024, 12:33:32
Сделал вариант с зеркальным отражением, но уж больно прожорливая визуалка получилась. :-[ Пользоваться можно только в оконном режиме.
Ссылка в шапке (ЯД).

(https://www.aimp.ru/forum/index.php?action=dlattach;topic=73593.0;attach=72722)
Обновлённый плагин в полноэкранном режиме потребляет ресурсов на уровне 18-20, в оконном - 5-7. Поставил предыдущую версию, думал ошибся, но нет, - в полноэкранном 28!  ???
Кстати, из Каталога по кнопке Обсудить попадаешь на Калейдоскоп.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Artem on November 08, 2024, 12:56:08
Обновлённый плагин в полноэкранном режиме потребляет ресурсов на уровне 18-20, в оконном - 5-7. Поставил предыдущую версию, думал ошибся, но нет, - в полноэкранном 28!

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

 
Кстати, из Каталога по кнопке Обсудить попадаешь на Калейдоскоп.

Поправил.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 08, 2024, 13:02:05
Если хочешь, могу посмотреть под профилировщиком, что именно тормозит, раз уж используется ACL-ка, для плеера это тоже может быть полезным
Что для этого нужно, проект?
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Artem on November 08, 2024, 13:16:23
Что для этого нужно, проект?

да
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 08, 2024, 13:36:07
Обновлённый плагин в полноэкранном режиме потребляет ресурсов на уровне 18-20, в оконном - 5-7. Поставил предыдущую версию, думал ошибся, но нет, - в полноэкранном 28!  ???
У меня что та, что вторая версия даже на новом компе на 4К в полном экране напрягает проц на 45-50%. При этом по 3-5 соседних столбиков начинают дёргаться синхронно, по пикам видно, что в них значения одинаковые.
Второй вариант меньше потребляет ресурсов скорее всего потому, что рисование идёт на половине окна, вторая - это просто Flip.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Artem on November 08, 2024, 13:52:54
Основные тормоза на наложении HUE-маски. Я бы предложил заранее заготовить текстуры для столбиков с нужной маской, а не накладывать ее при рендеринге каждого кадра. Второй момент, это RowDib.DrawBlend. Учитывая, что как таковой прозрачности у тебя здесь нет, я бы предложил столбики сделать сразу непрозрачными с черным фоном, и рисовать их уже не через DrawBlend, а через CopyRect. Это будет в разы быстрее.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 08, 2024, 13:57:25
У меня что та, что вторая версия даже на новом компе на 4К в полном экране напрягает проц на 45-50%. При этом по 3-5 соседних столбиков начинают дёргаться синхронно, по пикам видно, что в них значения одинаковые.
Второй вариант меньше потребляет ресурсов скорее всего потому, что рисование идёт на половине окна, вторая - это просто Flip.
Оказывается, мой комп ещё Огого!  ;)
Явной синхронизации столбиков не видно, по крайней мере на скриншоте (https://yadi.sk/d/Bcmlgo6nOgTBpA)
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 08, 2024, 15:33:40
Основные тормоза на наложении HUE-маски. Я бы предложил заранее заготовить текстуры для столбиков с нужной маской, а не накладывать ее при рендеринге каждого кадра.
Хотелось плавного изменения цвета. Можно попробовать сделать 5-6 текстур разного цвета.

... столбики сделать сразу непрозрачными с черным фоном, и рисовать их уже не через DrawBlend, а через CopyRect. Это будет в разы быстрее.
RowDib выводится ещё и с растягиванием, Dib.CopyRect не может этого делать.

Спасибо! Бум думать.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 08, 2024, 19:08:53
Избавился от крышки, вместо той радуги - текстура из 11 цветов, но переходы, всё-таки, заметны. Полегчало, конечно. Прозрачность пока оставил.
Добавил ссылку в первый пост.

Явной синхронизации столбиков не видно, по крайней мере на скриншоте
Если приглядеться, есть, по 2, по 3, особенно в области низких частот. Но у меня на 4К их аж по 5 бывает.
Странный, всё-таки, эффект. Начинается это при определённой нагрузке, причём, далеко не критической - 13-14%, и не зависимо, что у окна больше: высота или ширина.
Ни одно ядро при этом не перегружено, а рывки заметны.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Artem on November 08, 2024, 21:29:07
Хотелось плавного изменения цвета. Можно попробовать сделать 5-6 текстур разного цвета.

так можно тем же методом и сделать, только заранее подготовить текстуру для каждого столбца.

RowDib выводится ещё и с растягиванием, Dib.CopyRect не может этого делать.

Тогда через acStretchBlt
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 09, 2024, 11:36:03
так можно тем же методом и сделать, только заранее подготовить текстуру для каждого столбца.
Уж очень много их будет, тем более число столбцов меняется в зависимости от ширины экрана.
Сейчас 11 текстур разных цветов в одной картинке, из неё и нарезаю. Переходы цвета почти не заметны.

Тогда через acStretchBlt
Так это тот же StretchBlt, только с другими аргументами. Кстати, разница с DrawBlend на общем фоне небольшая - 2-3% выигрыш по нагрузке.
Пока остановлюсь на версии v2, смотрится, вроде, неплохо и по нагрузке на проц приемлимо.

В планах попробовать ещё и такой вариант: рисовать всё сначала на промежуточном буфере фиксированного размера, скажем, 800х450 px, затем уже ресайзить эту картинку на окно. Может, так быстрее получиться. Некоторое мыло в этом случае может оказаться и плюсом.

Искал в инете, как можно исказить канвас с перспективой, WorldTransform может только в параллелограмм. Всё, оказывается, не так просто.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 12, 2024, 01:58:59
Избавился от крышки, вместо той радуги - текстура из 11 цветов, но переходы, всё-таки, заметны. Полегчало, конечно. Прозрачность пока оставил.
Добавил ссылку в первый пост.
В полноэкранном режиме 5-6%. Главное отличие, которое лично мне нравится,  - нет того мыла первой версии, что "режет" мой глаз, а фиксированные цвета - не критично!
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 12, 2024, 10:39:39
В полноэкранном режиме 5-6%. Главное отличие, которое лично мне нравится,  - нет того мыла первой версии, что "режет" мой глаз, а фиксированные цвета - не критично!
Это ты про v2 или 1.1 ?
У меня, похоже, что-то с виндами, начали подтормаживать и скины для 4К.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 12, 2024, 10:43:18
Это ты про v2 или 1.1 ?
У меня, похоже, что-то с виндами, начали подтормаживать и скины для 4К.
Про вторую
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 12, 2024, 15:57:49
Про вторую
И как понимать: про вторую версию или про вторую в вопросе?
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 12, 2024, 16:15:04
И как понимать: про вторую версию или про вторую в вопросе?
Вот ты дотошный... Отвечаю: Да!  :P
Разумеется, речь о версии 2, я же ещё и упомянул фиксированные цвета и чёткость столбиков. Или ты и в версии 1.1 тоже что-то кардинально поменял? Надо будет глянуть, а то у меня, скорее всего, 1.0 стоит.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 12, 2024, 16:34:16
С зеркальным отражением и без радужной крышки- это v2, в v1.1 поменял только текстуру столбиков, а крышка оставалась.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on November 12, 2024, 20:42:03
С зеркальным отражением и без радужной крышки- это v2, в v1.1 поменял только текстуру столбиков, а крышка оставалась.
v1.1- зеркалированный, с "радужной крышей" - 18%
v2 - зеркалированный, фиксированные цвета - 6%
калейдоскоп и волна - по 4-5%
У волны поигрался с настройками, но так ничего и не понял  :-\
Визуально нравится Пламя версии 2. Калейдоскоп тоже ничего, но мельтешение быстро надоедает, да и явной связи с музыкой не наблюдается.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on November 12, 2024, 22:00:23
v1.1- зеркалированный, с "радужной крышей" - 18%
v2 - зеркалированный, фиксированные цвета - 6%
Стало быть у меня исходники после многочисленных правок уже не соответствуют этим номерам версий (кроме v2).

У волны поигрался с настройками, но так ничего и не понял  :-\
Это та же волна, какой ты видишь её на осциллографе, только не в декартовых координатах, а в полярных, где угол это время, а радиус - амплитуда сигнала. У каждого канала (левый, правый и два разностных) свой цвет. Можно менять радиус кривой, для тихих треков может быть полезно. Остальное, вроде, и так понятно, изменения тут же отображаются.
Мне из своих визуалок эта кажется наиболее удачной.

Калейдоскоп тоже ничего, но мельтешение быстро надоедает, да и явной связи с музыкой не наблюдается.
Там связь с музыкой по цвету, весь спектр поделён на 5 диапазонов: низкие частоты - красный, далее по возрастанию частоты - жёлтый, зелёный, синий, голубой. Фигурки рисуются рандомно, диаметр изображения пропорционален уровню на каждом диапазоне частот.
Мелькание - да, напрягает, может, попробую так же как в PolarWaves добавить затухание.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on December 21, 2024, 11:52:06
v1.1- зеркалированный, с "радужной крышей" - 18%
v2 - зеркалированный, фиксированные цвета - 6%
Сравнил на плагинах версии х32 и х64, специально сделал вариант SpectrumFlame2 (https://disk.yandex.ru/d/tB3h7hLsLfKZ_A) с выводом в окне значения FPS и числа столбиков.
На 4К во весь экран в обоих версиях у меня примерно одинаково: FPS = 8..9.  :(
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on December 21, 2024, 18:59:19
Сравнил на плагинах версии х32 и х64, специально сделал вариант SpectrumFlame2 (https://disk.yandex.ru/d/XiGj4b1tnMq96A) с выводом в окне значения FPS и числа столбиков.
На 4К во весь экран в обоих версиях у меня примерно одинаково: FPS = 8..9.  :(
На 32 - аналогично - 8.
На 64 проверить не получилось, на портабельной плагин в списке доступных не отображается.  ???
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: Black_AVP_Bim on December 21, 2024, 19:08:13
... на портабельной плагин в списке доступных не отображается.  ???
Возможно, не подключен  в Настройки\Плагины\Визуализации. Иногда, почему-то такое бывает при перетаскивании архива с плагином на плеер.
Title: Re: Spectrum Flame [AIMP 5.30]
Post by: McClaud on December 22, 2024, 00:48:51
Возможно, не подключен  в Настройки\Плагины\Визуализации. Иногда, почему-то такое бывает при перетаскивании архива с плагином на плеер.
Да, перетаскивание на портабле не срабатывает, установил через меню. Уточняю FPS: 32 - 7-8, 64 - 8-9.