| >> |
No.212724
Файл: bcd49162bf2d70cc1981e1be3091560a.png -(383 KB, 1100x898, bcd49162bf2d70cc1981e1be3091560a.png)
>>212722
Спасибо за разъяснения по AVIF.
Подумываю о реализации поддержки AVIF/JXL, тут или на форке, да и в целом про реформу системы приложения файлов.
Один из вопросов, кого убьёт OoM killer, если картинка не влезет в память, и корректно ли код движка обработает такую ситуацию. Сейчас проверок на максимальное width×height или setrlimit нет, но вроде есть свои лимиты и у FFmpeg, и, помнится, у gd. Впрочем, не у картинкомагии. И желающий вызвать DoS может спамить PNG-бомбы. Или AVIF-бомбы. Насколько страшно? Dunno. Но есть желание максимизировать допустимую размерность картинки, минимизировав количество ресурсов и проблем.
> полагаться на способность операционной системы среагировать на нехватку оперативной памяти и использовать виртуальную память
Под это понадобится держать swap-файл или раздел. Место на диске!
У imagemagic'а вроде есть некая опция, позволяющая держать pixel cache в файле, но, думаю, это не то. Например, libwebp, помнится, не позволяет передать custom allocator. И если так, разве можно ему скормить mmap'ленный файл в качестве места под пиксели и их обработку?
|