From: Tomasz Figa <tfiga@chromium.org> To: Dmitry Sepp <dmitry.sepp@opensynergy.com> Cc: "Keiichi Watanabe" <keiichiw@chromium.org>, virtio-dev@lists.oasis-open.org, "Linux Media Mailing List" <linux-media@vger.kernel.org>, "Alexandre Courbot" <acourbot@chromium.org>, "Alex Lau" <alexlau@chromium.org>, "Daniel Vetter" <daniel@ffwll.ch>, "Dylan Reid" <dgreid@chromium.org>, "Enrico Granata" <egranata@google.com>, "Frediano Ziglio" <fziglio@redhat.com>, "Hans Verkuil" <hverkuil@xs4all.nl>, "Gerd Hoffmann" <kraxel@redhat.com>, "Stéphane Marchesin" <marcheu@chromium.org>, "Pawel Osciak" <posciak@chromium.org>, spice-devel@lists.freedesktop.org, "David Stevens" <stevensd@chromium.org>, uril@redhat.com Subject: Re: [PATCH v2 1/1] virtio-video: Add virtio video device specification Date: Sat, 21 Dec 2019 15:46:34 +0900 [thread overview] Message-ID: <CAAFQd5DUY6jYu-kuOP9pc72dddg80gZzMktxTGdkxE_PDw1HRg@mail.gmail.com> (raw) In-Reply-To: <2584386.DF4NACHtsB@os-lin-dmo> On Sat, Dec 21, 2019 at 12:46 AM Dmitry Sepp <dmitry.sepp@opensynergy.com> wrote: > On Freitag, 20. Dezember 2019 16:26:50 CET Keiichi Watanabe wrote: > > On Thu, Dec 19, 2019 at 10:28 PM Dmitry Sepp > > <dmitry.sepp@opensynergy.com> wrote: > > > On Mittwoch, 18. Dezember 2019 14:02:14 CET Keiichi Watanabe wrote: [snip] > > > > +enum virtio_video_format { > > > > + VIRTIO_VIDEO_FORMAT_UNDEFINED = 0, > > > > + /* Raw formats */ > > > > + VIRTIO_VIDEO_FORMAT_NV12 = 1, > > > > + VIRTIO_VIDEO_FORMAT_YUV420, > > > > + VIRTIO_VIDEO_FORMAT_YVU420, > > > > > > Let's add some variants of RGB, like RGBA, ARGB. We need it for the > > > encoder in particular . > > > > Sounds good. > > BTW, which "ARGB8888" or "A8R8G8B8" is preferred? While the first one > > comes from DRM's FourCC, the second one comes from virtio_gpu_formats. > > I personally prefer the first one, then we can have a naming convention > > like: VIRTIO_VIDEO_FORMAT_<name from drm_fourcc.h> > > > > I'd go with ARGB8888 and BGRA8888 (might be with X variants). Just to make sure we're talking about the same formats. DRM naming convention is based on the little endian convention, which for 32-bit formats means that you interpret the whole pixel as a packed 32-bit word on a little endian system. For ARGB8888 that would mean (bit 31) ARGB (bit 0) in the 32-bit word and (byte 0) B, G, R, A (byte 3) when looking at separate bytes in memory. Does that correspond to your expected format? We also have to be specific about the A and X formats, as the A format should be supported only if the hardware (host) doesn't ignore the alpha channel. I haven't seen any hardware capable of encoding alpha channel yet, but apparently for WebM the standard is to just encode the alpha channel into another stream as Y, together with dummy U and V values. [1] That sounds like something that would be handled by two separate encoding streams and not just one that accepts RGBA on the input. [1] http://wiki.webmproject.org/alpha-channel Best regards, Tomasz
WARNING: multiple messages have this Message-ID (diff)
From: Tomasz Figa <tfiga@chromium.org> To: Dmitry Sepp <dmitry.sepp@opensynergy.com> Cc: "Keiichi Watanabe" <keiichiw@chromium.org>, virtio-dev@lists.oasis-open.org, "Linux Media Mailing List" <linux-media@vger.kernel.org>, "Alexandre Courbot" <acourbot@chromium.org>, "Alex Lau" <alexlau@chromium.org>, "Daniel Vetter" <daniel@ffwll.ch>, "Dylan Reid" <dgreid@chromium.org>, "Enrico Granata" <egranata@google.com>, "Frediano Ziglio" <fziglio@redhat.com>, "Hans Verkuil" <hverkuil@xs4all.nl>, "Gerd Hoffmann" <kraxel@redhat.com>, "Stéphane Marchesin" <marcheu@chromium.org>, "Pawel Osciak" <posciak@chromium.org>, spice-devel@lists.freedesktop.org, "David Stevens" <stevensd@chromium.org>, uril@redhat.com Subject: [virtio-dev] Re: [PATCH v2 1/1] virtio-video: Add virtio video device specification Date: Sat, 21 Dec 2019 15:46:34 +0900 [thread overview] Message-ID: <CAAFQd5DUY6jYu-kuOP9pc72dddg80gZzMktxTGdkxE_PDw1HRg@mail.gmail.com> (raw) In-Reply-To: <2584386.DF4NACHtsB@os-lin-dmo> On Sat, Dec 21, 2019 at 12:46 AM Dmitry Sepp <dmitry.sepp@opensynergy.com> wrote: > On Freitag, 20. Dezember 2019 16:26:50 CET Keiichi Watanabe wrote: > > On Thu, Dec 19, 2019 at 10:28 PM Dmitry Sepp > > <dmitry.sepp@opensynergy.com> wrote: > > > On Mittwoch, 18. Dezember 2019 14:02:14 CET Keiichi Watanabe wrote: [snip] > > > > +enum virtio_video_format { > > > > + VIRTIO_VIDEO_FORMAT_UNDEFINED = 0, > > > > + /* Raw formats */ > > > > + VIRTIO_VIDEO_FORMAT_NV12 = 1, > > > > + VIRTIO_VIDEO_FORMAT_YUV420, > > > > + VIRTIO_VIDEO_FORMAT_YVU420, > > > > > > Let's add some variants of RGB, like RGBA, ARGB. We need it for the > > > encoder in particular . > > > > Sounds good. > > BTW, which "ARGB8888" or "A8R8G8B8" is preferred? While the first one > > comes from DRM's FourCC, the second one comes from virtio_gpu_formats. > > I personally prefer the first one, then we can have a naming convention > > like: VIRTIO_VIDEO_FORMAT_<name from drm_fourcc.h> > > > > I'd go with ARGB8888 and BGRA8888 (might be with X variants). Just to make sure we're talking about the same formats. DRM naming convention is based on the little endian convention, which for 32-bit formats means that you interpret the whole pixel as a packed 32-bit word on a little endian system. For ARGB8888 that would mean (bit 31) ARGB (bit 0) in the 32-bit word and (byte 0) B, G, R, A (byte 3) when looking at separate bytes in memory. Does that correspond to your expected format? We also have to be specific about the A and X formats, as the A format should be supported only if the hardware (host) doesn't ignore the alpha channel. I haven't seen any hardware capable of encoding alpha channel yet, but apparently for WebM the standard is to just encode the alpha channel into another stream as Y, together with dummy U and V values. [1] That sounds like something that would be handled by two separate encoding streams and not just one that accepts RGBA on the input. [1] http://wiki.webmproject.org/alpha-channel Best regards, Tomasz --------------------------------------------------------------------- To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
next prev parent reply other threads:[~2019-12-21 6:54 UTC|newest] Thread overview: 147+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-12-18 13:02 [PATCH v2 0/1] VirtIO video device specification Keiichi Watanabe 2019-12-18 13:02 ` [virtio-dev] " Keiichi Watanabe 2019-12-18 13:02 ` [PATCH v2 1/1] virtio-video: Add virtio " Keiichi Watanabe 2019-12-18 13:02 ` [virtio-dev] " Keiichi Watanabe 2019-12-18 13:40 ` Gerd Hoffmann 2019-12-18 13:40 ` [virtio-dev] " Gerd Hoffmann 2019-12-18 14:08 ` Tomasz Figa 2019-12-18 14:08 ` Tomasz Figa 2019-12-19 7:46 ` Gerd Hoffmann 2019-12-19 7:46 ` Gerd Hoffmann 2019-12-19 9:48 ` Dmitry Sepp 2019-12-19 9:48 ` Dmitry Sepp 2019-12-19 9:59 ` Tomasz Figa 2019-12-19 9:59 ` Tomasz Figa 2019-12-19 10:54 ` Dmitry Sepp 2019-12-19 10:54 ` Dmitry Sepp 2019-12-19 12:05 ` Tomasz Figa 2019-12-19 12:05 ` Tomasz Figa 2019-12-19 13:12 ` Gerd Hoffmann 2019-12-19 13:12 ` Gerd Hoffmann 2020-01-08 13:52 ` Keiichi Watanabe 2020-01-08 13:52 ` Keiichi Watanabe 2020-01-09 13:40 ` Gerd Hoffmann 2020-01-09 13:40 ` Gerd Hoffmann 2020-01-09 14:20 ` Tomasz Figa 2020-01-09 14:20 ` Tomasz Figa 2020-01-14 7:18 ` Keiichi Watanabe 2020-01-14 7:18 ` Keiichi Watanabe 2020-01-14 10:35 ` Dmitry Sepp 2020-01-14 10:35 ` Dmitry Sepp 2020-01-15 7:49 ` Keiichi Watanabe 2020-01-15 7:49 ` Keiichi Watanabe 2020-01-15 11:12 ` Tomasz Figa 2020-01-15 11:12 ` Tomasz Figa 2019-12-19 13:01 ` Gerd Hoffmann 2019-12-19 13:01 ` Gerd Hoffmann 2020-01-08 13:50 ` Keiichi Watanabe 2020-01-08 13:50 ` Keiichi Watanabe 2019-12-19 9:26 ` Dmitry Sepp 2019-12-19 9:26 ` [virtio-dev] " Dmitry Sepp 2019-12-19 9:59 ` Tomasz Figa 2019-12-19 9:59 ` [virtio-dev] " Tomasz Figa 2019-12-19 12:54 ` Gerd Hoffmann 2019-12-19 12:54 ` [virtio-dev] " Gerd Hoffmann 2019-12-18 17:29 ` Frediano Ziglio 2019-12-20 14:05 ` Keiichi Watanabe 2019-12-20 14:05 ` [virtio-dev] " Keiichi Watanabe 2019-12-20 15:33 ` Dmitry Sepp 2019-12-20 15:33 ` [virtio-dev] " Dmitry Sepp 2019-12-19 13:28 ` Dmitry Sepp 2019-12-19 13:28 ` [virtio-dev] " Dmitry Sepp 2019-12-20 15:26 ` Keiichi Watanabe 2019-12-20 15:26 ` [virtio-dev] " Keiichi Watanabe 2019-12-20 15:46 ` Dmitry Sepp 2019-12-21 6:46 ` Tomasz Figa [this message] 2019-12-21 6:46 ` Tomasz Figa 2019-12-30 12:16 ` Dmitry Sepp 2019-12-30 12:16 ` Dmitry Sepp 2020-01-06 6:31 ` Tomasz Figa 2020-01-06 6:31 ` Tomasz Figa 2020-01-06 8:33 ` Gerd Hoffmann 2020-01-06 8:33 ` Gerd Hoffmann 2020-01-06 9:29 ` Dmitry Sepp 2020-01-06 9:29 ` Dmitry Sepp 2020-01-03 15:47 ` Dmitry Sepp 2020-01-03 15:47 ` [virtio-dev] " Dmitry Sepp 2020-01-06 8:47 ` Gerd Hoffmann 2020-01-06 8:47 ` [virtio-dev] " Gerd Hoffmann 2020-01-06 10:21 ` Keiichi Watanabe 2020-01-06 10:21 ` [virtio-dev] " Keiichi Watanabe 2020-01-06 14:59 ` Dmitry Sepp 2020-01-06 14:59 ` [virtio-dev] " Dmitry Sepp 2020-01-07 13:24 ` Keiichi Watanabe 2020-01-07 13:24 ` [virtio-dev] " Keiichi Watanabe 2020-01-07 16:50 ` Dmitry Sepp 2020-01-07 16:50 ` [virtio-dev] " Dmitry Sepp 2020-01-08 6:59 ` Keiichi Watanabe 2020-01-08 6:59 ` [virtio-dev] " Keiichi Watanabe 2020-01-08 10:00 ` Dmitry Sepp 2020-01-08 10:00 ` [virtio-dev] " Dmitry Sepp 2020-01-08 12:14 ` Keiichi Watanabe 2020-01-08 12:14 ` [virtio-dev] " Keiichi Watanabe 2020-01-08 12:46 ` Tomasz Figa 2020-01-08 12:46 ` [virtio-dev] " Tomasz Figa 2020-01-08 13:05 ` Keiichi Watanabe 2020-01-08 13:05 ` [virtio-dev] " Keiichi Watanabe 2020-01-08 13:11 ` Dmitry Sepp 2020-01-08 13:11 ` [virtio-dev] " Dmitry Sepp 2020-01-08 13:23 ` Keiichi Watanabe 2020-01-08 13:23 ` Keiichi Watanabe 2020-01-08 12:23 ` Keiichi Watanabe 2020-01-08 12:23 ` [virtio-dev] " Keiichi Watanabe 2019-12-20 15:58 ` [PATCH v2 0/1] VirtIO " Dmitry Sepp 2019-12-20 15:58 ` [virtio-dev] " Dmitry Sepp 2019-12-21 4:36 ` Keiichi Watanabe 2019-12-21 4:36 ` [virtio-dev] " Keiichi Watanabe 2019-12-21 6:18 ` Tomasz Figa 2019-12-21 6:18 ` [virtio-dev] " Tomasz Figa 2019-12-21 6:19 ` Tomasz Figa 2019-12-21 6:19 ` [virtio-dev] " Tomasz Figa 2020-01-03 13:05 ` Dmitry Sepp 2020-01-03 13:05 ` [virtio-dev] " Dmitry Sepp 2020-01-06 10:30 ` Keiichi Watanabe 2020-01-06 10:30 ` [virtio-dev] " Keiichi Watanabe 2020-01-06 11:28 ` Dmitry Sepp 2020-01-06 11:28 ` [virtio-dev] " Dmitry Sepp 2020-01-07 10:25 ` Keiichi Watanabe 2020-01-07 10:25 ` [virtio-dev] " Keiichi Watanabe 2020-01-09 14:56 ` Dmitry Sepp 2020-01-09 14:56 ` [virtio-dev] " Dmitry Sepp 2020-01-10 10:16 ` Dmitry Sepp 2020-01-10 10:16 ` Dmitry Sepp 2020-01-10 13:53 ` Keiichi Watanabe 2020-01-10 13:53 ` Keiichi Watanabe 2020-01-10 15:11 ` Dmitry Sepp 2020-01-10 15:11 ` Dmitry Sepp 2020-01-11 16:06 ` Tomasz Figa 2020-01-11 16:06 ` Tomasz Figa 2020-01-13 9:50 ` Dmitry Sepp 2020-01-13 9:50 ` Dmitry Sepp 2020-01-15 11:23 ` Keiichi Watanabe 2020-01-15 11:23 ` Keiichi Watanabe 2020-01-13 9:56 ` Gerd Hoffmann 2020-01-13 9:56 ` Gerd Hoffmann 2020-01-13 10:41 ` Dmitry Sepp 2020-01-13 11:05 ` Gerd Hoffmann 2020-01-13 11:05 ` Gerd Hoffmann 2020-01-13 11:59 ` Tomasz Figa 2020-01-13 11:59 ` Tomasz Figa 2020-01-13 13:26 ` Gerd Hoffmann 2020-01-13 13:26 ` Gerd Hoffmann 2020-01-15 11:00 ` Tomasz Figa 2020-01-15 11:00 ` Tomasz Figa 2020-01-15 11:23 ` Keiichi Watanabe 2020-01-15 11:23 ` Keiichi Watanabe 2020-01-15 11:26 ` Gerd Hoffmann 2020-01-15 11:26 ` Gerd Hoffmann 2020-01-20 7:20 ` Keiichi Watanabe 2020-01-20 7:20 ` Keiichi Watanabe 2020-01-20 10:47 ` Gerd Hoffmann 2020-01-20 10:47 ` Gerd Hoffmann 2020-01-21 2:47 ` Keiichi Watanabe 2020-01-21 2:47 ` Keiichi Watanabe 2020-01-21 6:44 ` Gerd Hoffmann 2020-01-21 6:44 ` Gerd Hoffmann 2020-01-21 8:56 ` Keiichi Watanabe 2020-01-21 8:56 ` Keiichi Watanabe
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=CAAFQd5DUY6jYu-kuOP9pc72dddg80gZzMktxTGdkxE_PDw1HRg@mail.gmail.com \ --to=tfiga@chromium.org \ --cc=acourbot@chromium.org \ --cc=alexlau@chromium.org \ --cc=daniel@ffwll.ch \ --cc=dgreid@chromium.org \ --cc=dmitry.sepp@opensynergy.com \ --cc=egranata@google.com \ --cc=fziglio@redhat.com \ --cc=hverkuil@xs4all.nl \ --cc=keiichiw@chromium.org \ --cc=kraxel@redhat.com \ --cc=linux-media@vger.kernel.org \ --cc=marcheu@chromium.org \ --cc=posciak@chromium.org \ --cc=spice-devel@lists.freedesktop.org \ --cc=stevensd@chromium.org \ --cc=uril@redhat.com \ --cc=virtio-dev@lists.oasis-open.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.