1.spice server中的item有如下这些
enum {
PIPE_ITEM_TYPE_DRAW = PIPE_ITEM_TYPE_CHANNEL_BASE,
PIPE_ITEM_TYPE_INVAL_ONE,
PIPE_ITEM_TYPE_CURSOR,
PIPE_ITEM_TYPE_CURSOR_INIT,
PIPE_ITEM_TYPE_IMAGE,
PIPE_ITEM_TYPE_STREAM_CREATE,
PIPE_ITEM_TYPE_STREAM_CLIP,
PIPE_ITEM_TYPE_STREAM_DESTROY,
PIPE_ITEM_TYPE_UPGRADE,
PIPE_ITEM_TYPE_VERB,
PIPE_ITEM_TYPE_MIGRATE_DATA,
PIPE_ITEM_TYPE_PIXMAP_SYNC,
PIPE_ITEM_TYPE_PIXMAP_RESET,
PIPE_ITEM_TYPE_INVAL_CURSOR_CACHE,
PIPE_ITEM_TYPE_INVAL_PALLET_CACHE,
PIPE_ITEM_TYPE_CREATE_SURFACE,
PIPE_ITEM_TYPE_DESTROY_SURFACE,
PIPE_ITEM_TYPE_MONITORS_CONFIG,
PIPE_ITEM_TYPE_STREAM_ACTIVATE_REPORT,
};
9.PIPE_ITEM_TYPE_UPGRADE
只在streams超时处理的时候才会创建,
( worker中有Ring streams 这个环只有在red_create_stream时才会被添加stream,而red_create_stream只有在red_stream_add_frame时调用,而red_stream_add_frame会在red_use_stream_trace和red_stream_maintenance中调用的。)
10.图像压缩
图像的压缩 被两个函数所调用,一个是red_marshall_image,另外一个是red_compress_image
具体的压缩方法有jpeg 、glz、lz、quic方法
而red_marshall_image函数只有在red_add_surface_area_image函数内部调用,也就是说只有在red_add_surface_area_image里面才能创建PIPE_ITEM_TYPE_IMAGE
11.视频压缩