lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <59e87d8e346bb16b225382b9a4500e1b16bbf776.camel@ndufresne.ca>
Date: Thu, 04 Sep 2025 11:54:20 -0400
From: Nicolas Dufresne <nicolas@...fresne.ca>
To: Marek Vasut <marek.vasut@...lbox.org>, Nas Chung
 <nas.chung@...psnmedia.com>, 	mchehab@...nel.org, hverkuil@...all.nl,
 sebastian.fricke@...labora.com, 	robh@...nel.org, krzk+dt@...nel.org,
 conor+dt@...nel.org
Cc: linux-media@...r.kernel.org, devicetree@...r.kernel.org, 
	linux-kernel@...r.kernel.org, linux-imx@....com,
 jackson.lee@...psnmedia.com, 	lafley.kim@...psnmedia.com
Subject: Re: [PATCH v2 0/8] Add support for Wave6 video codec driver

Hi,

Le jeudi 04 septembre 2025 à 17:32 +0200, Marek Vasut a écrit :
> On 9/4/25 3:25 PM, Nicolas Dufresne wrote:
> > Hi,
> > 
> > Le mercredi 03 septembre 2025 à 23:47 +0200, Marek Vasut a écrit :
> > > On 4/22/25 11:31 AM, Nas Chung wrote:
> > > > This patch series introduces support for the Chips&Media Wave6 video
> > > > codec IP, a completely different hardware architecture compared to Wave5.
> > > > 
> > > > The wave6 driver is a M2M stateful encoder/decoder driver.
> > > > It supports various video formats, including H.264 and H.265,
> > > > for both encoding and decoding.
> > > > While other versions of the Wave6 IP may support VP9 decoding and
> > > > AV1 decoding and encoding those formats are not implemented or validated
> > > > in this driver at this time.
> > > > 
> > > > On NXP i.MX SoCs, the Wave6 IP functionality is split between two regions:
> > > > VPU Control region, Manages shared resources such as firmware memory.
> > > > VPU Core region, Provides encoding and decoding capabilities.
> > > > The VPU core cannot operate independently without the VPU control region.
> > > > 
> > > > This driver has been tested with GStreamer on:
> > > > - NXP i.MX95 board
> > > > - pre-silicon FPGA environment
> > > > 
> > > > Test results for decoder fluster:
> > > > - JVT-AVC_V1, Ran 77/135 tests successfully              in 35.519 secs
> > > > - JVT-FR-EXT, Ran 25/69 tests successfully               in 17.725 secs
> > > > - JCT-VC-HEVC_V1, Ran 132/147 tests successfully         in 81.549 secs
> > > > - All failures are due to unsupported hardware features:
> > > > -- 10bit, Resolutions higher than 4K, FMO, MBAFF
> > > > -- Extended profile, Field encoding and High422 sreams.
> > > > 
> > > > Test results for v4l2-compliance:
> > > > v4l2-compliance 1.29.0-5359, 64 bits, 64-bit time_t
> > > > v4l2-compliance SHA: 2a91a869eb8a 2025-04-12 11:35:53
> > > > 
> > > > Compliance test for wave6-dec device /dev/video0:
> > > >                   fail: ../utils/v4l2-compliance/v4l2-test-controls.cpp(1180): !have_source_change || !have_eos
> > > >           test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: FAIL
> > > > Total for wave6-dec device /dev/video0: 48, Succeeded: 47, Failed: 1, Warnings: 0
> > > > 
> > > > Compliance test for wave6-enc device /dev/video1:
> > > >                   fail: ../utils/v4l2-compliance/v4l2-test-controls.cpp(1169): node->codec_mask & STATEFUL_ENCODER
> > > >           test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: FAIL
> > > > Total for wave6-enc device /dev/video1: 48, Succeeded: 47, Failed: 1, Warnings: 0
> > > > 
> > > > Note: the failures are all related with the eos event.
> > > 
> > > For what its worth, the whole series:
> > > 
> > > Tested-by: Marek Vasut <marek.vasut@...lbox.org> # NXP i.MX95 rev. A0
> > 
> > Do you mind sharing what tests you have done ? Are you confirming the same
> > fluster and compliance results, have you done more ? Since this is largely
> > inspired on Wave5, I'd like to see people testing real-world playback, with
> > seeks, dynamic resolution changes, data lost. On Wave5, latest performance
> > patches leads to crash or hangs.
> I did not use fluster this time, I used h264 decode of 1920x1080 60 FPS 
> stream. The pipeline was very basic, something along the lines of:
> 
> gst-launch-1.0 -v filesrc location=/test.mp4 ! qtdemux ! h264parse ! 
> v4l2h264dec ! fpsdisplaysink text-overlay=false video-sink=waylandsink

Thanks for the detail. Since you have a running setup, perhaps consider testing
with the following, left/right keyboard arrow will let you jump around in the
media.

  gst-play-1.0 --audiosink=fakeaudiosink --videosink=waylandsink /test.mp4

That would at least cover seeking use cases. I provided Nas a stream that
aggressively do resolution changes to reproduce a Wave5 crash, I would expect
him to test and report against Wave6 too. If you'd like to have that sample, let
me know, its not very big, and free, but I'd rather not do attachements over the
mailing list.

regards,
Nicolas

Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ