43 void OnFrame(uint32_t display_number, uint32_t frame_width,
44 uint32_t frame_height, uint32_t frame_fourcc_format,
45 uint32_t frame_stride_bytes, uint8_t* frame_pixels);
48 std::shared_ptr<PlanarVideoFrameBuffer> buffer);
52 int cluster_index, std::string& group_uuid,
53 std::map<
int, std::vector<DisplayOverlay>>& overlays);
59 uint32_t frame_height, uint32_t frame_fourcc_format,
60 uint32_t frame_stride_bytes, uint8_t* frame_pixels) {
75 static std::map<int, std::vector<CompositionManager::DisplayOverlay>>
77 uint8_t*
AlphaBlendLayers(uint8_t* frame_pixels,
int display,
int frame_width,
80 uint32_t frame_fourcc_format, uint32_t frame_stride_bytes,
81 std::shared_ptr<PlanarVideoFrameBuffer> buffer);
Definition: composition_manager.h:55
uint32_t frame_fourcc_format_
Definition: composition_manager.h:71
uint32_t frame_stride_bytes_
Definition: composition_manager.h:72
uint8_t * frame_pixels_
Definition: composition_manager.h:73
uint32_t display_number_
Definition: composition_manager.h:68
LastFrameInfo(uint32_t display_number, uint32_t frame_width, uint32_t frame_height, uint32_t frame_fourcc_format, uint32_t frame_stride_bytes, uint8_t *frame_pixels)
Definition: composition_manager.h:58
uint32_t frame_width_
Definition: composition_manager.h:69
LastFrameInfo()
Definition: composition_manager.h:57
uint32_t frame_height_
Definition: composition_manager.h:70
Definition: composition_manager.h:32
std::map< int, std::vector< DisplayOverlay > > cfg_overlays_
Definition: composition_manager.h:85
void ComposeFrame(int display_index, std::shared_ptr< PlanarVideoFrameBuffer > buffer)
Definition: composition_manager.cpp:218
CompositionManager(int cluster_index, std::string &group_uuid, std::map< int, std::vector< DisplayOverlay > > &overlays)
Definition: composition_manager.cpp:116
uint8_t * AlphaBlendLayers(uint8_t *frame_pixels, int display, int frame_width, int frame_height)
Definition: composition_manager.cpp:231
std::string group_uuid_
Definition: composition_manager.h:84
int cluster_index_
Definition: composition_manager.h:83
void OnFrame(uint32_t display_number, uint32_t frame_width, uint32_t frame_height, uint32_t frame_fourcc_format, uint32_t frame_stride_bytes, uint8_t *frame_pixels)
Definition: composition_manager.cpp:191
std::map< int, std::vector< uint8_t > > frame_work_buffer_
Definition: composition_manager.h:87
static Result< std::unique_ptr< CompositionManager > > Create()
Definition: composition_manager.cpp:126
static std::map< int, std::vector< CompositionManager::DisplayOverlay > > ParseOverlays(std::vector< std::string > overlay_items)
Definition: composition_manager.cpp:73
std::map< int, LastFrameInfo > last_frame_info_map_
Definition: composition_manager.h:86
DisplayRingBufferManager display_ring_buffer_manager_
Definition: composition_manager.h:82
void OnDisplayCreated(const DisplayCreatedEvent &event)
Definition: composition_manager.cpp:181
~CompositionManager()
Definition: composition_manager.cpp:124
Definition: ring_buffer_manager.h:70
Event event
Definition: kernel_log_server.cc:59
Definition: alloc_driver.h:20
tl::expected< T, StackTraceError > Result
Definition: result_type.h:30
Definition: wayland_server_callbacks.h:24
Definition: composition_manager.h:34
int src_display_index
Definition: composition_manager.h:36
int src_vm_index
Definition: composition_manager.h:35