AIMP Forum

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

Title: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on November 21, 2024, 17:07:16
[catalog_card=1322]
В плагине использована библиотека ACL (https://github.com/ArtemIzmaylov/ACL?tab=MPL-2.0-1-ov-file), лицензия MPL-2.0.
Title: Re: Black Hole [AIMP5.30]
Post by: McClaud on November 21, 2024, 18:06:27
Шикарно смотрится! И название соответствующее. Правда, на твоём скриншоте цвета вроде как понасыщеннее, и в полноэкранном режиме дыра большевата, но в оконном - самое то!

(https://www.aimp.ru/forum/index.php?action=dlattach;topic=73692.0;attach=72798)
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on November 22, 2024, 10:55:16
Изначально хотел назвать Solar Eclipse, но кода первый раз без ошибок запустилось, понял  - это именно она.
Дыра масштабируется пропорционально окну, может, и лишковата...
Прожорливая визуалка опять вышла, я вообще сомневался, что получится с такой частотой канву вертеть.
Title: Re: Black Hole [AIMP5.30]
Post by: Artem on November 22, 2024, 12:42:51
Так же через blend mode работает?
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on November 22, 2024, 12:54:18
Так же через blend mode работает?
Да, тут нужна прозрачность, поскольку шаг столбиков меньше ширины их текстуры. Но перегрузки по ядрам нет, даже на 4К.
Артём, попутно вопрос: что будет если процедура Draw не успеет завершить свою работу за период её вызова? По моим замерам это 32..34 мс.

Добавил масштабирование столбиков по ширине, а то на 4К довольно прозрачно смотрится, а на мелком окне всё сливается в одно облако.
Title: Re: Black Hole [AIMP5.30]
Post by: Artem on November 22, 2024, 12:55:30
что будет если процедура Draw не успеет завершить свою работу за период её вызова

Ничего, чем быстрее она работает, тем больше FPS будет у UI.
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on November 22, 2024, 12:58:33
Так же через blend mode работает?
Уточнение: используется DrawBlend, но без BlendMode.
А есть ли другие методы нарезать PNG-ки и выводить с ресайзом и сохранением прозрачности?
Title: Re: Black Hole [AIMP5.30]
Post by: Artem on November 23, 2024, 21:51:40
используется DrawBlend, но без BlendMode.
А есть ли другие методы нарезать PNG-ки и выводить с ресайзом и сохранением прозрачности?

Если нужна прозрачность - только DrawBlend. А вот нарезать и отресайзить можно (и нужно) заранее. На этом можно очень неплохо сэкономить.

П.С. Я внес несколько оптимизаций в рендеринг с BlendMode (залито на гит). Так же появилась возможность регулировать, когда рендеринг будет идти в один поток, а когда - во все (см. глобальную переменную BlendFunctionsThreadingThreshold)
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on November 24, 2024, 11:14:58
А вот нарезать и отресайзить можно (и нужно) заранее. На этом можно очень неплохо сэкономить.
Как их хранить - в отдельных ACLDib?
Ресайз делается в зависимости от значения переменной и размеров окна. Как тут сэкономишь?

Так же появилась возможность регулировать, когда рендеринг будет идти в один поток, а когда - во все...
А есть смысл в каких-то случаях ограничивать число потоков?
Это относится только к функциям с BlendMode?

Артём, я понимаю, что у тебя на всё времени катастрофически не хватает, но, может, когда-нибудь появится описание по билиотеке ACL или, хотя-бы иерархия объектов?
Title: Re: Black Hole [AIMP5.30]
Post by: Artem on November 24, 2024, 15:04:44
Ресайз делается в зависимости от значения переменной и размеров окна. Как тут сэкономишь?

Ну технически да, можно закэшировать. Но для начала надо посмотреть, что именно тормозит. DrawBlend используется с SmoothResize = true?
Title: Re: Black Hole [AIMP5.30]
Post by: Artem on November 24, 2024, 15:07:36
А есть смысл в каких-то случаях ограничивать число потоков?
Это относится только к функциям с BlendMode?

Там не число потоков ограничивается, а сам факт - в несколько потоков или в один. Смысл есть, так для маленьких картинок быстрее посчитать все в текущем потоке, нежели поднимать дополнительные.

когда-нибудь появится описание по билиотеке ACL или, хотя-бы иерархия объектов?

Иерархию классов и сама IDE умеет показывать, а вот описание... с ним все довольно грустно. Нужно ж не просто описание методов и классов, но и примеры, и описание лучших практик использования.
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on November 24, 2024, 16:20:50
Но для начала надо посмотреть, что именно тормозит. DrawBlend используется с SmoothResize = true?
Нет, сглаживание не используется. Отправил проект в личку.
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on December 18, 2025, 16:06:56
Версия 1.2 с вращением спектра.
Скорость можно менять кликом ЛКМ.
Title: Re: Black Hole [AIMP5.30]
Post by: DarkDrawKill on December 18, 2025, 20:24:30
Версия 1.2 с вращением спектра.
Скорость можно менять кликом ЛКМ.
не знаю как вы на своём экране видите вращение но даже я первый раз не увидел щупом определил 3 режима (не включая без вращения) можно добавить надпись где-то снизу со скоростью вращения которая появляется при лкм а потом понемногу пропадает (или просто пропадает через промежуток времени)
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on December 18, 2025, 20:40:06
Вы про какую версию? Я не вижу, чтоб кто-то её скачал. (0)
Видео (https://disk.yandex.ru/i/1AR7-X-pYBcXYw)
Title: Re: Black Hole [AIMP5.30]
Post by: DarkDrawKill on December 18, 2025, 21:22:12
Вы про какую версию? Я не вижу, чтоб кто-то её скачал. (0)
1.2 версию как только вы написали я её скачал почему форум пишит 0 я не знаю
на видео вижу что очень быстро крутится круто но у меня такое не воспроизводится очень медленно и видно только в полноэкранном режиме

upd: всё понял была первая версия не заметил что 1.2 идёт отдельным плагином  :-[ у меня уже шизофрения обострилась пока смотрел чтобы понять движется движется она или нет
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on December 19, 2025, 20:46:34
Можно заменить файл в карточке на BlackHole 1.2 из первого поста. Доработанная версия перекрывает прежний функционал (неподвижный спектрум) + 3 скорости вращения.
Переключение - кликом ЛКМ в окне визуализации.
Title: Re: Black Hole [AIMP5.30]
Post by: DarkDrawKill on December 19, 2025, 21:11:22
Доработанная версия перекрывает прежний функционал (неподвижный спектрум)
нет у меня он встал как отдельный плагин (Black Hole и Black Hole 1.2)
Title: Re: Black Hole [AIMP5.30]
Post by: Black_AVP_Bim on December 19, 2025, 21:40:20
нет у меня он встал как отдельный плагин (Black Hole и Black Hole 1.2)
Ес-но, плагин/файл другой, речь про функционал. Старый плагин можно удалить, последняя версия при запуске ведёт себя так же, как и первая.
Кстати, Вы его опять ещё не скачивали.
Title: Re: Black Hole [AIMP5.30]
Post by: DarkDrawKill on December 19, 2025, 21:43:06
Кстати, Вы его опять ещё не скачивали.

обновили? щас скачаю
проблемы возникли с провайдером я через впн торренты раздаю а они мне днс сломали пришлось ножом и паяльником всё настраивать

upd: зачётно выглядет +1 ток на большой скорости видно что просто на 180 градусов крутится туда сюда можно ли сделать это както рандомно