From: Albert Esteve <aesteve@redhat.com>
To: virtio-comment@lists.linux.dev
Cc: agordeev@qti.qualcomm.com, ribalda@google.com,
acourbot@chromium.org, gurchetansingh@google.com,
cohuck@redhat.com, daniel.almeida@collabora.com,
changyeon@google.com, nicolas.dufresne@collabora.com,
eballetb@redhat.com, dverkamp@chromium.org, hverkuil@xs4all.nl,
mst@redhat.com, alex.bennee@linaro.org, acourbot@google.com,
Albert Esteve <aesteve@redhat.com>
Subject: [PATCH v5 0/1] virtio-media: Add device specification
Date: Mon, 20 Jan 2025 09:50:14 +0100 [thread overview]
Message-ID: <20250120085015.956057-1-aesteve@redhat.com> (raw)
New attempt of including virtio-media
device specification.
v4->v5:
- Rewritten/clarified some parts
according to the reviews received.
- Added missing links to V4L2
structures. Structs should
have a link on their first
appreance in the document.
- Clarified memory type
semantic V4L2 equivalent.
v3->v4:
- Updated device ID to 48
(moved to the first free id)
- Specified endianess on all
structures defined through
the spec (leXX)
- Slightly improved the explanation
of the size (and endianess)
of the exchanged v4l2 structs
as part of the ioctl command
payload
- Changed cmd_mmap offset size to
match the V4L2_QUERYBUF offset field
- Fixed most comments on previous
version for small typos/rewrites.
v2->v3:
- Updated device ID to 49
- Renamed virtio memory types so that
they are differentiated from V4L2
memory types
- Memory types description slightly
rewritten, explicitely excluding
USERPTR support for guest userspace
v1->v2:
- Remove naming host/guest in the text
- Explicitly specify endian-ness of the device
- Change address by offset in the MMAP operation
- Specify SHM region for MMAP operation
Virtio-media came from a discussion on virtio-dev
mailing list, which lead to presenting virtio-v4l2[1]
specification as an alternative to virtio-video.
Later, virtio-v4l2 was renamed to virtio-media[2]
and published at:
https://github.com/chromeos/virtio-media
The repository above includes a virtio-media driver able
to pass v4l2-compliance when proxying the vivid/vicodec
virtual devices or an actual UVC camera using the
V4L2 vhost device (available in the repository).
It also includes a FFmpeg-based video encoder
device. Steps to reproduce are also detailed[3].
Recently, virtio-media has landed in AOSP[4].
Furthermore, virtio-media got a proposal to reserve
device ID 48, which was finally approved for
inclusion in v1.4.
There is some overlap with virtio-video in regards
to which devices it can handle. However,
they take different approaches, making them
the preferable choice for different scenarios.
Moreover, as virtio-media will likely be the virtualization
solution for ChromeOS, Android, and possibly others, for
media devices, this justifies the desire to include
the specification in the next release despite
the aforementioned overlap.
Full PDF: https://drive.google.com/file/d/1XKpPDalkXcJe2ZjPpbtiOcgJRIWy-UTf/view?usp=sharing
PDF with the media section only: https://drive.google.com/file/d/1fzvKEuY31vUF7ctQ0KK0CmfrDO5CdRFj/view?usp=sharing
[1] https://mail.google.com/mail/u/0?ui=2&ik=73ebd65ebd&attid=0.1&permmsgid=msg-f:1767388565327924962&th=1887068940754ee2&view=att&disp=inline&realattid=f_libalimc0
[2] https://www.mail-archive.com/virtio-dev@lists.oasis-open.org/msg12665.html
[3] https://github.com/chromeos/virtio-media/blob/main/TRY_IT_OUT.md
[4] https://cs.android.com/android/platform/superproject/main/+/main:external/virtio-media/
Albert Esteve (1):
virtio-media: Add virtio media device specification
conformance.tex | 13 +-
content.tex | 1 +
device-types/media/description.tex | 617 ++++++++++++++++++++++
device-types/media/device-conformance.tex | 12 +
device-types/media/driver-conformance.tex | 10 +
5 files changed, 649 insertions(+), 4 deletions(-)
create mode 100644 device-types/media/description.tex
create mode 100644 device-types/media/device-conformance.tex
create mode 100644 device-types/media/driver-conformance.tex
--
2.47.1
next reply other threads:[~2025-01-20 8:50 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-20 8:50 Albert Esteve [this message]
2025-01-20 8:50 ` [PATCH v5 1/1] virtio-media: Add virtio media device specification Albert Esteve
2025-01-27 15:16 ` Matias Ezequiel Vara Larsen
2025-01-27 15:36 ` Albert Esteve
2025-01-27 15:41 ` Albert Esteve
2025-01-27 17:12 ` Matias Ezequiel Vara Larsen
2025-01-28 14:12 ` Albert Esteve
2025-01-23 1:02 ` [PATCH v5 0/1] virtio-media: Add " Alexandre Courbot
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=20250120085015.956057-1-aesteve@redhat.com \
--to=aesteve@redhat.com \
--cc=acourbot@chromium.org \
--cc=acourbot@google.com \
--cc=agordeev@qti.qualcomm.com \
--cc=alex.bennee@linaro.org \
--cc=changyeon@google.com \
--cc=cohuck@redhat.com \
--cc=daniel.almeida@collabora.com \
--cc=dverkamp@chromium.org \
--cc=eballetb@redhat.com \
--cc=gurchetansingh@google.com \
--cc=hverkuil@xs4all.nl \
--cc=mst@redhat.com \
--cc=nicolas.dufresne@collabora.com \
--cc=ribalda@google.com \
--cc=virtio-comment@lists.linux.dev \
/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