目录

SPICE 视频重定向的传输路径选择

1 借鉴

1.1 spice-stream-agent

1.2 webdav

 

2 传输方案

2.1 方案一

直接使用 PortChannel 协议进行视频重定向流传输路径

2.2 方案二

直接把数据插入到主 DisplayChannel 的 视频流里传输

2.3 问题

3 PortChannel 详解

3.1 验证

在试验时发现 spice-gtk 里的工具  spicy.c 已经有对特定名称为 org.spice.spicy 的 spiceport 的 传输测试代码,所以测试 portchannel 传输就比较简单了:

3.2 流程详解

3.2.1  spice-gtk 对 port-channel 的处理流程

MainChannelSpicyport通道创建SPICE_MSG_MAIN_CHANNELS_LISTg_object_new()SPICE_CHANNEL_PORTPortChannelsignal "channel-new"channel_new() 进行初始化数据传输SPICE_MSG_SPICEVMC_DATAport_handle_msg()signal "port-data"port_data() 输出数据到 stdinspice-gtk 中 port-channel 的处理流程 V0.1.0 by weiyongjiu

PortChannel 对象构造过程:

3.3 client 端 port-channel 的使用方式