mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-08 16:12:23 +02:00
Add IPC messages and server-side implementation for streaming animated image decode. Instead of decoding all frames upfront, only decode an initial batch and keep the decoder alive for on-demand frame requests. New IPC messages: - request_animation_frames: request decode of a batch of frames - stop_animation_decode: clean up a decode session - did_decode_animation_frames: deliver decoded frames to client - did_fail_animation_decode: report decode errors The existing did_decode_image message gains a session_id parameter (0 for single-shot decode, non-zero for streaming sessions).
12 lines
513 B
Plaintext
12 lines
513 B
Plaintext
#include <LibGfx/BitmapSequence.h>
|
|
#include <LibGfx/ColorSpace.h>
|
|
|
|
endpoint ImageDecoderClient
|
|
{
|
|
did_decode_image(i64 image_id, bool is_animated, u32 loop_count, Gfx::BitmapSequence bitmaps, Vector<u32> durations, Gfx::FloatPoint scale, Gfx::ColorSpace color_profile, i64 session_id) =|
|
|
did_fail_to_decode_image(i64 image_id, String error_message) =|
|
|
|
|
did_decode_animation_frames(i64 session_id, Gfx::BitmapSequence bitmaps) =|
|
|
did_fail_animation_decode(i64 session_id, String error_message) =|
|
|
}
|