public:it:spice

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
public:it:spice [2022/02/17 08:58] oakfirepublic:it:spice [2022/08/03 09:04] (当前版本) – [1.3 流传输] oakfire
行 2: 行 2:
   * [[https://www.spice-space.org/|spice-space.org]]   * [[https://www.spice-space.org/|spice-space.org]]
   * [[https://gitlab.freedesktop.org/spice/spice-protocol|SPICE 协议文档]]   * [[https://gitlab.freedesktop.org/spice/spice-protocol|SPICE 协议文档]]
-  * [[https://www.jianshu.com/p/8bfc1bc2fa9f|SPICE 协议的理解]] 
   * [[https://markrepo.github.io/protocol/2018/08/02/spice-architecture/|SPICE 架构与特性]]   * [[https://markrepo.github.io/protocol/2018/08/02/spice-architecture/|SPICE 架构与特性]]
   * [[https://blog.csdn.net/xx306/article/details/80160889|流媒体重定向的技术方案]]   * [[https://blog.csdn.net/xx306/article/details/80160889|流媒体重定向的技术方案]]
行 23: 行 22:
  
   * 利用chrome开源浏览器来自制浏览器,在解码层进行截流,并方便修改播放区域渲染,但难度大   * 利用chrome开源浏览器来自制浏览器,在解码层进行截流,并方便修改播放区域渲染,但难度大
-    * chrome 播放标签video的架构:https://github.com/chromium/chromium/tree/master/media?spm=taofed.bloginfo.blog.3.1f705ac8vMzGpH#playback+    * chrome 播放标签video的架构:https://github.com/chromium/chromium/tree/master/media#playback
   * 利用chrome插件截流:便于实现   * 利用chrome插件截流:便于实现
     * m3u8 等未加密流可直接获取源地址     * m3u8 等未加密流可直接获取源地址
行 32: 行 31:
   * 虚拟机与客户端(盒子)可 tcp 连接:直接推流   * 虚拟机与客户端(盒子)可 tcp 连接:直接推流
   * 不可连接:映射usb字符设备进行流传输,或开辟 spice 新通道 (未实现)   * 不可连接:映射usb字符设备进行流传输,或开辟 spice 新通道 (未实现)
 +    * [[https://www.spice-space.org/api/spice-gtk/SpicePortChannel.html|spice port channel]]
 +    * 参考 [[https://gitlab.gnome.org/GNOME/phodav|spice webdavd]] 在 windows 下的传输
 +    * 参考 [[https://gitlab.com/virt-viewer/virt-viewer| virt-viewer remote-viewer]] 下关于 webdav 使用 spice port channel 的代码
 +    * [[.:spice:codec-agent-trans]]
 +    * [[.:spice:browser-content-redir]]
  
  
行 37: 行 41:
 ==== 2.1 spice-streaming-agent ==== ==== 2.1 spice-streaming-agent ====
   * [[https://gitlab.freedesktop.org/spice/spice-streaming-agent|repo]]   * [[https://gitlab.freedesktop.org/spice/spice-streaming-agent|repo]]
-  * host服务器端要使用spice-server >= 0.14.1,如果版本没升级,其它都配置了,运行spice-streaming-agent时也会报错:spice-streaming-agent[2223]: Reading message from device failed: read() returned 0, device is closed.+  * host服务器端要使用spice-server >= 0.14.1,如果版本没升级,其它都配置了,运行spice-streaming-agent时也会报错:<code bash>spice-streaming-agent[2223]: Reading message from device failed: read() returned 0, device is closed.</code> 
 +  * windows spice client(virt-viewer) 的 display2 会显示为黑屏,原因参考[[https://gitlab.com/virt-viewer/virt-viewer/-/issues/5|这个issue]], 只能在linux (remote-viewer) 上演示。
  
 === 2.1.1 编译 === === 2.1.1 编译 ===
行 44: 行 49:
 sudo apt install python3 python3-pip ninja-build  sudo apt install python3 python3-pip ninja-build 
 sudo pip3 install meson sudo pip3 install meson
 +sudo pip3 install pyparsing
 </code> </code>
   * 安装依赖库: <code bash>   * 安装依赖库: <code bash>
行 56: 行 62:
 # 生成 build/src/spice-streaming-agent # 生成 build/src/spice-streaming-agent
 </code> </code>
 +  * spice-common 的 meson.build 里对 python 模块 pyparsing 的检查代码需要修改,详见 [[https://gitlab.freedesktop.org/spice/spice-common/-/commit/a7b5474bf808934cf0ee1107a58d5f4d97b9afbf|这个commit]], 否则在 meson build 时会错误报告缺失pyparing模块
  
  
  
  • public/it/spice.1645059490.txt.gz
  • 最后更改: 2022/02/17 08:58
  • oakfire