All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ayaka <ayaka@soulik.info>
To: Nicolas Dufresne <nicolas@ndufresne.ca>
Cc: linux-media@vger.kernel.org, randy.li@rock-chips.com,
	hverkuil@xs4all.nl, maxime.ripard@bootlin.com, joro@8bytes.org,
	jernej.skrabec@gmail.com, paul.kocialkowski@bootlin.com,
	thomas.petazzoni@bootlin.com, mchehab@kernel.org,
	ezequiel@collabora.com, posciak@chromium.org,
	groeck@chromium.org, linux-rockchip@lists.infradead.org
Subject: Re: [PATCH v3 0/9] [WIP]: rockchip mpp for v4l2 video deocder
Date: Thu, 11 Apr 2019 09:30:02 +0800	[thread overview]
Message-ID: <18CD717A-1AB2-4043-AD7C-8F190618C1BD@soulik.info> (raw)
In-Reply-To: <7fec1a2101ec1304d35d5c757cc98f916eda20c6.camel@ndufresne.ca>



Sent from my iPad

> On Apr 11, 2019, at 12:01 AM, Nicolas Dufresne <nicolas@ndufresne.ca> wrote:
> 
>> Le mercredi 10 avril 2019 à 20:42 +0800, ayaka a écrit :
>> From: Randy 'ayaka' Li <ayaka@soulik.info>
>> 
>> Although I really hate the bitstream construction in kernel and I think
>> many people realise its problems, I still take the advise from ndufresne to
>> release this version. This should be released in a early week but
>> I was sick that time.
>> 
>> After reviewed the documents from Rockchip and I have confirmed that with
>> some rockchip staff, those documents are not update to date. So you may
>> find some part is different comparing to official document.
>> 
>> The v4l2-request-test from bootlin won't work. Its slice data doesn't
>> have a start code which making it not a complete nal unit. And I found
>> its slice header information may not be correct. Even comparing to the
>> Big buck bunny's origin files, neither the slice data nor sequence
>> information matches.
> 
> The un-ordered reflist table generated by these tests or the v4l2 VAAPI
> driver are known to be broken. They have never been tested. Ezequiel
> and I are going to validate against MVPP userspace if this un-ordered
> list effectively what we think it is, and will try and get some fixes
> in at least one selected userspace. Otherwise it's not possible to test
> easily.
> 
>> 
>> I extracted a slice data from Rockchip mpp to verify my driver, it work
>> fine, you can find it on my github. I only verified the I slice now,
>> I have not verified P or B slice. Hopefully it would work.
> 
> If you have some information to share it would be nice. I'm sure we can
> cooperate on this if you are willing to.
> 
>> 
>> I have the same problem with v4l2-request-test on HEVC as well so even
>> this version shipped with HEVC bitstream construction, I didn't know
>> whether it would work.
>> 
>> I need some time to prepare the userspace tool or it is really hard for
>> HEVC to write slice info manually.
>> 
>> Changlog
>> v3: add AVC support for rkvdec
>> v2: add MPEG-2 support for vdpu2
>> v1: inital version
>> 
>> Randy Li (7):
>>  staging: video: rockchip: add v4l2 decoder
>>  rockchip: mpp: rkvdec: rbsp
>>  [WIP]: rockchip: mpp: HEVC decoder ctrl data
>>  [TEST]: rockchip: mpp: support qtable
>>  [TEST]: rockchip: mpp: vdpu2: move qtable to input buffer
>>  arm64: dts: rockchip: boost clocks for rk3328
>>  arm64: dts: rockchip: add video codec for rk3328
>> 
>> ayaka (2):
>>  [WIP]: rockchip: mpp: H.264 decoder ctrl data
>>  [TEST]: rkvdec: spspps address alignment
>> 
>> arch/arm64/boot/dts/rockchip/rk3328-evb.dts   |   32 +
>> .../arm64/boot/dts/rockchip/rk3328-rock64.dts |   32 +
>> arch/arm64/boot/dts/rockchip/rk3328.dtsi      |  112 +-
>> drivers/staging/Kconfig                       |    2 +
>> drivers/staging/Makefile                      |    1 +
>> drivers/staging/rockchip-mpp/Kconfig          |   33 +
>> drivers/staging/rockchip-mpp/Makefile         |   12 +
>> drivers/staging/rockchip-mpp/mpp_debug.h      |   87 +
>> drivers/staging/rockchip-mpp/mpp_dev_common.c | 1390 +++++++
>> drivers/staging/rockchip-mpp/mpp_dev_common.h |  215 +
>> drivers/staging/rockchip-mpp/mpp_dev_rkvdec.c |  924 +++++
>> drivers/staging/rockchip-mpp/mpp_dev_vdpu2.c  |  607 +++
>> drivers/staging/rockchip-mpp/mpp_service.c    |  197 +
>> drivers/staging/rockchip-mpp/mpp_service.h    |   38 +
>> .../staging/rockchip-mpp/rkvdec/avc-data.c    |  239 ++
>> .../staging/rockchip-mpp/rkvdec/avc-data.h    |   40 +
>> drivers/staging/rockchip-mpp/rkvdec/avc.c     |  259 ++
>> drivers/staging/rockchip-mpp/rkvdec/cabac.h   | 3614 +++++++++++++++++
>> drivers/staging/rockchip-mpp/rkvdec/hal.h     |   70 +
>> .../staging/rockchip-mpp/rkvdec/hevc-data.c   |  208 +
>> .../staging/rockchip-mpp/rkvdec/hevc-data.h   |   27 +
>> drivers/staging/rockchip-mpp/rkvdec/hevc.c    |  169 +
>> drivers/staging/rockchip-mpp/rkvdec/rbsp.c    |   96 +
>> drivers/staging/rockchip-mpp/rkvdec/rbsp.h    |   30 +
>> drivers/staging/rockchip-mpp/rkvdec/regs.h    |  377 ++
>> drivers/staging/rockchip-mpp/vdpu2/avc.c      |  165 +
>> drivers/staging/rockchip-mpp/vdpu2/hal.h      |   52 +
>> drivers/staging/rockchip-mpp/vdpu2/mpeg2.c    |  277 ++
>> drivers/staging/rockchip-mpp/vdpu2/regs.h     |  670 +++
>> include/uapi/video/rk_vpu_service.h           |  101 +
>> 30 files changed, 10072 insertions(+), 4 deletions(-)
>> create mode 100644 drivers/staging/rockchip-mpp/Kconfig
>> create mode 100644 drivers/staging/rockchip-mpp/Makefile
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_debug.h
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_common.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_common.h
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_rkvdec.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_vdpu2.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_service.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_service.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/avc-data.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/avc-data.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/avc.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/cabac.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hal.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hevc-data.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hevc-data.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hevc.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/rbsp.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/rbsp.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/regs.h
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/avc.c
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/hal.h
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/mpeg2.c
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/regs.h
>> create mode 100644 include/uapi/video/rk_vpu_service.h
>> 


WARNING: multiple messages have this Message-ID (diff)
From: Ayaka <ayaka-xPW3/0Ywev/iB9QmIjCX8w@public.gmane.org>
To: Nicolas Dufresne <nicolas-dDhyB4GVkw9AFePFGvp55w@public.gmane.org>
Cc: paul.kocialkowski-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org,
	maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org,
	joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org,
	randy.li-TNX95d0MmH7DzftRWevZcw@public.gmane.org,
	jernej.skrabec-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	hverkuil-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org,
	linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	thomas.petazzoni-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org,
	groeck-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org,
	mchehab-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	ezequiel-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org,
	posciak-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org,
	linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH v3 0/9] [WIP]: rockchip mpp for v4l2 video deocder
Date: Thu, 11 Apr 2019 09:30:02 +0800	[thread overview]
Message-ID: <18CD717A-1AB2-4043-AD7C-8F190618C1BD@soulik.info> (raw)
In-Reply-To: <7fec1a2101ec1304d35d5c757cc98f916eda20c6.camel-dDhyB4GVkw9AFePFGvp55w@public.gmane.org>



Sent from my iPad

> On Apr 11, 2019, at 12:01 AM, Nicolas Dufresne <nicolas@ndufresne.ca> wrote:
> 
>> Le mercredi 10 avril 2019 à 20:42 +0800, ayaka a écrit :
>> From: Randy 'ayaka' Li <ayaka@soulik.info>
>> 
>> Although I really hate the bitstream construction in kernel and I think
>> many people realise its problems, I still take the advise from ndufresne to
>> release this version. This should be released in a early week but
>> I was sick that time.
>> 
>> After reviewed the documents from Rockchip and I have confirmed that with
>> some rockchip staff, those documents are not update to date. So you may
>> find some part is different comparing to official document.
>> 
>> The v4l2-request-test from bootlin won't work. Its slice data doesn't
>> have a start code which making it not a complete nal unit. And I found
>> its slice header information may not be correct. Even comparing to the
>> Big buck bunny's origin files, neither the slice data nor sequence
>> information matches.
> 
> The un-ordered reflist table generated by these tests or the v4l2 VAAPI
> driver are known to be broken. They have never been tested. Ezequiel
> and I are going to validate against MVPP userspace if this un-ordered
> list effectively what we think it is, and will try and get some fixes
> in at least one selected userspace. Otherwise it's not possible to test
> easily.
> 
>> 
>> I extracted a slice data from Rockchip mpp to verify my driver, it work
>> fine, you can find it on my github. I only verified the I slice now,
>> I have not verified P or B slice. Hopefully it would work.
> 
> If you have some information to share it would be nice. I'm sure we can
> cooperate on this if you are willing to.
> 
>> 
>> I have the same problem with v4l2-request-test on HEVC as well so even
>> this version shipped with HEVC bitstream construction, I didn't know
>> whether it would work.
>> 
>> I need some time to prepare the userspace tool or it is really hard for
>> HEVC to write slice info manually.
>> 
>> Changlog
>> v3: add AVC support for rkvdec
>> v2: add MPEG-2 support for vdpu2
>> v1: inital version
>> 
>> Randy Li (7):
>>  staging: video: rockchip: add v4l2 decoder
>>  rockchip: mpp: rkvdec: rbsp
>>  [WIP]: rockchip: mpp: HEVC decoder ctrl data
>>  [TEST]: rockchip: mpp: support qtable
>>  [TEST]: rockchip: mpp: vdpu2: move qtable to input buffer
>>  arm64: dts: rockchip: boost clocks for rk3328
>>  arm64: dts: rockchip: add video codec for rk3328
>> 
>> ayaka (2):
>>  [WIP]: rockchip: mpp: H.264 decoder ctrl data
>>  [TEST]: rkvdec: spspps address alignment
>> 
>> arch/arm64/boot/dts/rockchip/rk3328-evb.dts   |   32 +
>> .../arm64/boot/dts/rockchip/rk3328-rock64.dts |   32 +
>> arch/arm64/boot/dts/rockchip/rk3328.dtsi      |  112 +-
>> drivers/staging/Kconfig                       |    2 +
>> drivers/staging/Makefile                      |    1 +
>> drivers/staging/rockchip-mpp/Kconfig          |   33 +
>> drivers/staging/rockchip-mpp/Makefile         |   12 +
>> drivers/staging/rockchip-mpp/mpp_debug.h      |   87 +
>> drivers/staging/rockchip-mpp/mpp_dev_common.c | 1390 +++++++
>> drivers/staging/rockchip-mpp/mpp_dev_common.h |  215 +
>> drivers/staging/rockchip-mpp/mpp_dev_rkvdec.c |  924 +++++
>> drivers/staging/rockchip-mpp/mpp_dev_vdpu2.c  |  607 +++
>> drivers/staging/rockchip-mpp/mpp_service.c    |  197 +
>> drivers/staging/rockchip-mpp/mpp_service.h    |   38 +
>> .../staging/rockchip-mpp/rkvdec/avc-data.c    |  239 ++
>> .../staging/rockchip-mpp/rkvdec/avc-data.h    |   40 +
>> drivers/staging/rockchip-mpp/rkvdec/avc.c     |  259 ++
>> drivers/staging/rockchip-mpp/rkvdec/cabac.h   | 3614 +++++++++++++++++
>> drivers/staging/rockchip-mpp/rkvdec/hal.h     |   70 +
>> .../staging/rockchip-mpp/rkvdec/hevc-data.c   |  208 +
>> .../staging/rockchip-mpp/rkvdec/hevc-data.h   |   27 +
>> drivers/staging/rockchip-mpp/rkvdec/hevc.c    |  169 +
>> drivers/staging/rockchip-mpp/rkvdec/rbsp.c    |   96 +
>> drivers/staging/rockchip-mpp/rkvdec/rbsp.h    |   30 +
>> drivers/staging/rockchip-mpp/rkvdec/regs.h    |  377 ++
>> drivers/staging/rockchip-mpp/vdpu2/avc.c      |  165 +
>> drivers/staging/rockchip-mpp/vdpu2/hal.h      |   52 +
>> drivers/staging/rockchip-mpp/vdpu2/mpeg2.c    |  277 ++
>> drivers/staging/rockchip-mpp/vdpu2/regs.h     |  670 +++
>> include/uapi/video/rk_vpu_service.h           |  101 +
>> 30 files changed, 10072 insertions(+), 4 deletions(-)
>> create mode 100644 drivers/staging/rockchip-mpp/Kconfig
>> create mode 100644 drivers/staging/rockchip-mpp/Makefile
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_debug.h
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_common.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_common.h
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_rkvdec.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_dev_vdpu2.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_service.c
>> create mode 100644 drivers/staging/rockchip-mpp/mpp_service.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/avc-data.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/avc-data.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/avc.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/cabac.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hal.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hevc-data.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hevc-data.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/hevc.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/rbsp.c
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/rbsp.h
>> create mode 100644 drivers/staging/rockchip-mpp/rkvdec/regs.h
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/avc.c
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/hal.h
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/mpeg2.c
>> create mode 100644 drivers/staging/rockchip-mpp/vdpu2/regs.h
>> create mode 100644 include/uapi/video/rk_vpu_service.h
>> 


_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

  reply	other threads:[~2019-04-11  1:30 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-10 12:42 [PATCH v3 0/9] [WIP]: rockchip mpp for v4l2 video deocder ayaka
2019-04-10 12:42 ` ayaka
     [not found] ` <20190410124226.8612-1-ayaka-xPW3/0Ywev/iB9QmIjCX8w@public.gmane.org>
2019-04-10 12:42   ` [PATCH v3 1/9] staging: video: rockchip: add v4l2 decoder ayaka
     [not found]     ` <20190410124226.8612-2-ayaka-xPW3/0Ywev/iB9QmIjCX8w@public.gmane.org>
2019-04-10 15:57       ` Nicolas Dufresne
2019-04-11  1:29         ` Randy Li
2019-04-11  1:29           ` Randy Li
2019-04-11 16:12           ` Nicolas Dufresne
2019-04-11 16:12             ` Nicolas Dufresne
2019-04-11 23:13             ` ayaka
2019-04-11 23:13               ` ayaka
2019-04-10 12:42 ` [PATCH v3 2/9] rockchip: mpp: rkvdec: rbsp ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 12:42 ` [PATCH v3 3/9] [WIP]: rockchip: mpp: HEVC decoder ctrl data ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 12:42 ` [PATCH v3 4/9] [WIP]: rockchip: mpp: H.264 " ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 12:42 ` [PATCH v3 5/9] [TEST]: rockchip: mpp: support qtable ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 12:42 ` [PATCH v3 6/9] [TEST]: rockchip: mpp: vdpu2: move qtable to input buffer ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 12:42 ` [PATCH v3 7/9] [TEST]: rkvdec: spspps address alignment ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 12:42 ` [PATCH v3 8/9] arm64: dts: rockchip: boost clocks for rk3328 ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 12:42 ` [PATCH v3 9/9] arm64: dts: rockchip: add video codec " ayaka
2019-04-10 12:42   ` ayaka
2019-04-10 16:01 ` [PATCH v3 0/9] [WIP]: rockchip mpp for v4l2 video deocder Nicolas Dufresne
2019-04-10 16:01   ` Nicolas Dufresne
2019-04-11  1:30   ` Ayaka [this message]
2019-04-11  1:30     ` Ayaka
2019-04-11  1:33   ` Ayaka
2019-04-11  1:33     ` Ayaka

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=18CD717A-1AB2-4043-AD7C-8F190618C1BD@soulik.info \
    --to=ayaka@soulik.info \
    --cc=ezequiel@collabora.com \
    --cc=groeck@chromium.org \
    --cc=hverkuil@xs4all.nl \
    --cc=jernej.skrabec@gmail.com \
    --cc=joro@8bytes.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=maxime.ripard@bootlin.com \
    --cc=mchehab@kernel.org \
    --cc=nicolas@ndufresne.ca \
    --cc=paul.kocialkowski@bootlin.com \
    --cc=posciak@chromium.org \
    --cc=randy.li@rock-chips.com \
    --cc=thomas.petazzoni@bootlin.com \
    /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 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.