[Spice-devel] not clear how to use streaming agent

Lukáš Hrázký lhrazky at redhat.com
Mon Apr 16 08:20:18 UTC 2018


On Mon, 2018-04-16 at 10:33 +0800, 孙得霖 wrote:
> Hi,
> Thanks for your response.it is first time to communicate in English,to be frank, my English is not very good and there may be points expressed poorly in my reply. I hope you will pardon me for this.

Your english is very good, don't worry (比我汉语更好 ;)). However, the
information you provide is not what I asked, see below.

> I want to capute guest video stream(encode it) and to client with spice protocol direct (like above figure ),at present, it is in the stage of technical pre-research.
> So my question is, can i use streaming agent to capture guest video stream and encode it?

That you want to capture the video and send it to the client is too
vague and low-level. What do you want to use it for, the high-level use
case?

SPICE alone without the streaming agent can do what you are describing,
you should probably start with that: Install SPICE from your
distribution packages, follow a guide like [1], there are some more
information in [2]. If you know you need more than regular SPICE can
offer, please describe it.

Cheers,
Lukas

[1] https://www.linux-kvm.org/page/SPICE
[2] https://www.spice-space.org/spice-user-manual.html


>  
> ------------------ Original ------------------
> From:  "Lukáš Hrázký"<lhrazky at redhat.com>;
> Date:  Fri, Apr 13, 2018 07:24 PM
> To:  "孙得霖"<kong.delin at embedway.com>; "spice-devel"<spice-devel at lists.freedesktop.org>; 
> 
> Subject:  Re: [Spice-devel] not clear how to use streaming agent
> 
>  
> Hello Delin,
> 
> On Thu, 2018-04-12 at 10:37 +0800, 孙得霖 wrote:
> > hi,
> >     I use spice for remote view, I want to captures the guest video output, encodes it and send through, so I choose streaming agent, how to build and run it is not clear, can you help me?
> 
> Sure, first off, what exactly do you want to achieve? If you just want
> to remotely access your VM (see the graphical desktop and interact with
> it), you don't need the streaming agent for that, SPICE can do that for
> a long time without it.
> 
> Streaming agent is designed for a very specific case of capturing and
> encoding the desktop from within the guest, which only has an advantage
> to the regular old SPICE approach if you have a physical GPU or a vGPU
> assigned to the guest to accelerate the process.
> 
> If you still think streaming agent is what you need, please describe in
> detail what is your use case.
> 
> > 1.host environment and Software version:
> > centOS(Mini install)
> > GVT-g kernel:      https://github.com/intel/gvt-linux/  (branch: topic/dmabuf)
> > QEMU:              https://github.com/intel/igvtg-qemu  (branch: qa/dma_buf)
> > streming agent:    https://gitlab.com/spice/spice-streaming-agent    
> > spice-server       version:0.13.3
> > spice-protocol     version:0.12.12
> > 
> > 
> > 2.build info
> > kernel:
> > make -j 8
> > make modules_install && make install
> > reboot
> > 
> > 
> > qemu:
> > ./configure --prefix=/usr --enable-kvm --disable-xen --enable-debug-info --enable-debug --enable-sdl --enable-vhost-net --enable-spice --disable-debug-tcg --enable-numa --enable-libusb --enable-curl --enable-usb-redir --enable-linux-aio --target-list=x86_64-softmmu --enable-gtk --with-gtkabi=3.0
> > make -j 8
> > cd roms/seabios
> > make -j 8
> > cd -
> > make install
> > cp roms/seabios/out/bios.bin /usr/bin/bios.bin
> > 
> > 
> > spice-protocol:
> > ./configure --prefix=/usr
> > make -j 8
> > make install
> > 
> > 
> > spice-service:
> > ./configure  --prefix=/usr --enable-manual=no --disable-silent-rules --disable-smartcard --disable-celt051 --enable-client CFLAGS="-g -O0" CXXFLAGS="-g -O0"
> > make -j 8
> > make install
> > 
> > 
> > streming agent
> > ./autogen.sh
> > make -j 8
> > make install
> > 
> > 
> > 3.run qemu
> > /usr/bin/qemu-system-x86_64 \
> > -m 8192 \
> > -smp 4,sockets=1,cores=4,threads=1 \
> > -M pc \
> > -name win71 \
> > -hda /Image/vm/win7_base.img \
> > -bios /usr/bin/bios.bin -enable-kvm \
> > -k en-us \
> > -vga none \
> > -display egl-headless \
> > -spice disable-ticketing,port=6901,streaming-video=off \
> > -machine kernel_irqchip=on,usb=on \
> > -global PIIX4_PM.disable_s3=1 -global PIIX4_PM.disable_s4=1 \
> > -cpu host -device usb-tablet \
> > -device vfio-pci,sysfsdev=/sys/bus/pci/devices/0000:00:02.0/5b8d581a-2dc9-11e8-8238-000906258002,x-display=on,x-igd-opregion=on
> > -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel1,id=channel1,name=org.spice-space.stream.0 -chardev spiceport,name=org.spice-space.stream.0,id=charchannel1
> 
> Are you running Windows 7 as the guest? The streaming agent is designed
> to run in the guest and only supports Linux atm.
> 
> Cheers,
> Lukas
> 
> > questions:
> > I am not clear How to use streaming agent and validate it, can you help me?
> > 
> > thank you!
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/spice-devel


More information about the Spice-devel mailing list