[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 0/8] virtio: Add vhost-user based Video decode
|
From: |
Michael S. Tsirkin |
|
Subject: |
Re: [PATCH 0/8] virtio: Add vhost-user based Video decode |
|
Date: |
Tue, 11 Jan 2022 10:38:13 -0500 |
On Thu, Dec 09, 2021 at 02:55:53PM +0000, Peter Griffin wrote:
> This series adds support for virtio-video decoder devices in Qemu
> and also provides a vhost-user-video vmm implementation.
>
> The vhost-user-video vmm currently parses virtio-vido v3 protocol
> (as that is what the Linux frontend driver implements).
> It then converts that to a v4l2 mem2mem stateful decoder device.
> Currently this has been tested using v4l2 vicodec test driver in Linux
> [1] but it is intended to be used with Arm SoCs which often implement
> v4l2 stateful decoders/encoders drivers for their video accelerators.
>
> The primary goal so far has been to allow continuing development
> of virtio-video Linux frontend driver and testing with Qemu. Using
> vicodec on the host allows a purely virtual dev env, and allows for
> ci integration in the future by kernelci etc.
>
> This series also adds the virtio_video.h header and adds the
> FWHT format which is used by vicodec driver.
>
> I have tested this VMM using v4l2-ctl from v4l2 utils in the guest
> to do a video decode to a file. This can then be validated using ffplay
> v4l2-compliance tool in the guest has also been run which stresses the
> interface and issues lots of syscall level tests
>
> See the README.md for example commands on how to configure guest kernel
> and do a video decode using Qemu, vicodec using this VMM.
>
> Linux virtio-video frontend driver code:
> https://github.com/petegriffin/linux/commits/v5.10-virtio-video-latest
Are you going to post this btw?
> Qemu vmm code:
> https://github.com/petegriffin/qemu/tree/vhost-virtio-video-master-v1
>
> This is part of a wider initiative by Linaro called
> "project Stratos" for which you can find information here:
>
> https://collaborate.linaro.org/display/STR/Stratos+Home
>
> Applies cleanly to git://git.qemu.org/qemu.git master(a3607def89).
>
> Thanks,
>
> Peter.
>
> [1] https://lwn.net/Articles/760650/
And the spec status?
Does this match this spec:
https://lore.kernel.org/linux-media/CAPBb6MUD_oYeUt8_bGRwAPCPam40Jtktz2F7+A3SO5PFRdUsiw@mail.gmail.com/T/
?
A year ago a new revision was coming RSN ...
> Peter Griffin (8):
> vhost-user-video: Add a README.md with cheat sheet of commands
> MAINTAINERS: Add virtio-video section
> vhost-user-video: boiler plate code for vhost-user-video device
> vhost-user-video: add meson subdir build logic
> standard-headers: Add virtio_video.h
> virtio_video: Add Fast Walsh-Hadamard Transform format
> hw/display: add vhost-user-video-pci
> tools/vhost-user-video: Add initial vhost-user-video vmm
>
> MAINTAINERS | 8 +
> hw/display/Kconfig | 5 +
> hw/display/meson.build | 3 +
> hw/display/vhost-user-video-pci.c | 82 +
> hw/display/vhost-user-video.c | 386 ++++
> include/hw/virtio/vhost-user-video.h | 41 +
> include/standard-headers/linux/virtio_video.h | 484 +++++
> tools/meson.build | 9 +
> tools/vhost-user-video/50-qemu-rpmb.json.in | 5 +
> tools/vhost-user-video/README.md | 98 +
> tools/vhost-user-video/main.c | 1680 ++++++++++++++++
> tools/vhost-user-video/meson.build | 10 +
> tools/vhost-user-video/v4l2_backend.c | 1777 +++++++++++++++++
> tools/vhost-user-video/v4l2_backend.h | 99 +
> tools/vhost-user-video/virtio_video_helpers.c | 462 +++++
> tools/vhost-user-video/virtio_video_helpers.h | 166 ++
> tools/vhost-user-video/vuvideo.h | 43 +
> 17 files changed, 5358 insertions(+)
> create mode 100644 hw/display/vhost-user-video-pci.c
> create mode 100644 hw/display/vhost-user-video.c
> create mode 100644 include/hw/virtio/vhost-user-video.h
> create mode 100644 include/standard-headers/linux/virtio_video.h
> create mode 100644 tools/vhost-user-video/50-qemu-rpmb.json.in
> create mode 100644 tools/vhost-user-video/README.md
> create mode 100644 tools/vhost-user-video/main.c
> create mode 100644 tools/vhost-user-video/meson.build
> create mode 100644 tools/vhost-user-video/v4l2_backend.c
> create mode 100644 tools/vhost-user-video/v4l2_backend.h
> create mode 100644 tools/vhost-user-video/virtio_video_helpers.c
> create mode 100644 tools/vhost-user-video/virtio_video_helpers.h
> create mode 100644 tools/vhost-user-video/vuvideo.h
>
> --
> 2.25.1
- Re: [PATCH 0/8] virtio: Add vhost-user based Video decode,
Michael S. Tsirkin <=