From: "Michael S. Tsirkin" <mst@redhat.com>
To: Peter Griffin <peter.griffin@linaro.org>
Cc: marcandre.lureau@redhat.com, alex.bennee@linaro.org,
qemu-devel@nongnu.org, stratos-dev@op-lists.linaro.org
Subject: Re: [PATCH 0/8] virtio: Add vhost-user based Video decode
Date: Tue, 11 Jan 2022 10:38:13 -0500 [thread overview]
Message-ID: <20220111103245-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20211209145601.331477-1-peter.griffin@linaro.org>
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
next prev parent reply other threads:[~2022-01-11 15:40 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-09 14:55 [PATCH 0/8] virtio: Add vhost-user based Video decode Peter Griffin
2021-12-09 14:55 ` [PATCH 1/8] vhost-user-video: Add a README.md with cheat sheet of commands Peter Griffin
2022-01-11 14:48 ` Alex Bennée
2022-02-03 10:13 ` Peter Griffin
2021-12-09 14:55 ` [PATCH 2/8] MAINTAINERS: Add virtio-video section Peter Griffin
2022-01-11 14:57 ` Alex Bennée
2021-12-09 14:55 ` [PATCH 3/8] vhost-user-video: boiler plate code for vhost-user-video device Peter Griffin
2022-01-11 14:58 ` Alex Bennée
2022-02-03 11:14 ` Peter Griffin
2021-12-09 14:55 ` [PATCH 4/8] vhost-user-video: add meson subdir build logic Peter Griffin
2022-01-11 16:03 ` Alex Bennée
2022-02-03 11:31 ` Peter Griffin
2021-12-09 14:55 ` [PATCH 5/8] standard-headers: Add virtio_video.h Peter Griffin
2021-12-10 10:57 ` Michael S. Tsirkin
2021-12-10 13:09 ` Peter Griffin
2021-12-12 9:37 ` Michael S. Tsirkin
2021-12-10 11:02 ` Michael S. Tsirkin
2021-12-10 11:25 ` Peter Maydell
2021-12-10 13:23 ` Peter Griffin
2021-12-09 14:55 ` [PATCH 6/8] virtio_video: Add Fast Walsh-Hadamard Transform format Peter Griffin
2021-12-10 10:58 ` Michael S. Tsirkin
2021-12-10 12:45 ` Peter Griffin
2021-12-09 14:56 ` [PATCH 7/8] hw/display: add vhost-user-video-pci Peter Griffin
2022-01-11 16:11 ` Alex Bennée
2021-12-09 14:56 ` [PATCH 8/8] tools/vhost-user-video: Add initial vhost-user-video vmm Peter Griffin
2022-01-11 16:38 ` Alex Bennée
2022-01-11 15:38 ` Michael S. Tsirkin [this message]
2022-02-03 12:10 ` [PATCH 0/8] virtio: Add vhost-user based Video decode Peter Griffin
2022-02-03 13:27 ` Michael S. Tsirkin
2022-01-11 16:24 ` Alex Bennée
2022-02-03 11:43 ` Peter Griffin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220111103245-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=marcandre.lureau@redhat.com \
--cc=peter.griffin@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=stratos-dev@op-lists.linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).