[00:11] *** lyakh__ has joined #linux-media [00:18] *** lyakh_ has quit IRC (Ping timeout: 480 seconds) [01:29] *** eelstrebor has quit IRC (Remote host closed the connection) [01:31] *** eelstrebor has joined #linux-media [02:01] *** camus has joined #linux-media [02:26] *** eelstrebor has quit IRC (Quit: Ex-Chat) [02:31] *** camus1 has joined #linux-media [02:36] *** camus has quit IRC (Ping timeout: 480 seconds) [03:24] *** darkapex1 is now known as darkapex [03:28] *** camus has joined #linux-media [03:31] *** camus1 has quit IRC (Ping timeout: 480 seconds) [03:51] *** camus1 has joined #linux-media [03:56] *** camus has quit IRC (Ping timeout: 480 seconds) [04:26] *** darkapex has quit IRC (Read error: No route to host) [04:27] *** darkapex has joined #linux-media [04:35] *** tomba has joined #linux-media [05:19] *** camus has joined #linux-media [05:24] *** camus1 has quit IRC (Ping timeout: 480 seconds) [05:30] *** lyakh__ is now known as lyakh [05:42] *** camus1 has joined #linux-media [05:42] *** camus has quit IRC (Read error: Connection reset by peer) [06:42] *** camus has joined #linux-media [06:47] *** camus1 has quit IRC (Ping timeout: 480 seconds) [06:54] *** jm_h has joined #linux-media [07:11] *** jernej has quit IRC (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) [07:11] *** jernej has joined #linux-media [07:47] *** camus1 has joined #linux-media [07:50] *** djrscally has joined #linux-media [07:51] *** camus has quit IRC (Ping timeout: 480 seconds) [09:00] *** GBenji has joined #linux-media [10:11] *** inky1003 has joined #linux-media [10:12] <inky1003> hi, just to confirm: all easycap chips drivers work well on linux, right? I mean, em28xx, utv007, somagic, etc.? [10:37] *** inky1003 has quit IRC (Ping timeout: 480 seconds) [10:37] *** griffinp has joined #linux-media [10:41] *** inky1003 has joined #linux-media [10:57] <mchehab> inky1003: hard to tell,as easycap doesn't send us patches directly [10:58] <mchehab> so, we rely on patches from easycap users to add board support where it is needed [11:23] <inky1003> i'm thinking on buying one with utv007 chip, as it's easier to find... [11:59] *** camus has joined #linux-media [12:04] *** camus1 has quit IRC (Ping timeout: 480 seconds) [12:22] *** dafna2[m] has joined #linux-media [12:49] *** x[m] has joined #linux-media [13:18] *** eelstrebor has joined #linux-media [13:27] <pinchartl> hverkuil: it looks like a check is missing in v4l2-compliance [13:27] <pinchartl> we've just found a driver that miscalculates bytesperline for planar formats [13:28] <ndufresne> hverkuil: thanks for the intership idea, I have forwarded to Gustavo, we'll see if the works with him [13:28] <pinchartl> as sizeimage (all planes) / height [13:28] <pinchartl> while it should be for the first plane only according to the documentation [13:28] <ndufresne> pinchartl: why are drivers still reimplementing the wheel, didn't ezequielg started adding helpers for that ? [13:29] <pinchartl> no idea [13:29] <ndufresne> this is getting a joke, you know I'm not a kernel dev, but 100% of my upstream patches are that [13:29] <pinchartl> fixing bpl ? [13:29] <ndufresne> byeperline, and size images [13:30] <pinchartl> then we clearly have a problem [13:30] <ndufresne> literally all my patches are that, speciallyf or ARM drivers developped for Android [13:30] <ndufresne> as usually they have loads and loads of format, but Android uses exactly 1 [13:31] <ndufresne> sometimes it only crash the software on top, but very often it crashes the entire kernel [13:32] <pinchartl> I wish I could say I'm shocked [13:32] * ndufresne can engage in writing v4l2-compliance tests, in few weeks though, but I don't think I want to keep fixing custom implementations [13:35] <ndufresne> pinchartl: of course, you cannot catch if the HW has some requirement, but you can catch if the stride isn't e.g. align to a power of two when padded, or too short, that would be rediculous but yeah [13:37] <ndufresne> hverkuil: can you remind me if Helene's proposal was allowing single allocation / multi-stride ? [13:38] <pinchartl> I'd say that if bpl == width * 1.5 for NV12, it could be that the hardware has a weird stride requirement, but most likely it's a bug [13:39] <ndufresne> if you take the stride, and calculate the sizeimage from it, it won't match in your case [13:40] *** inky1003 has quit IRC (Quit: Quit) [13:40] <ndufresne> stride * height + stride * (ROUNDUP_2(height)/2 != sizeimage / height [13:41] <ndufresne> I wonder if CODEC if we include the MV buffer for reference picture, it can be as large as 1/2 of the image size [13:41] <ndufresne> that could easily confuse the above ^ [13:41] <pinchartl> yes, that too [13:45] <ndufresne> but testing for >= with a per format formula would have catch your case [13:46] <ndufresne> I'm always impressed in gst when I add pixel formats how much the generic test can cover (I don't think I edited that test in the last 5-7 years) [13:58] <pinchartl> mchehab: could you pick up "[PATCH][next] media: uvcvideo: Fix memory leak of object map on error exit path" from the list ? I have no other patches queued for v5.16 at this point [14:46] *** darkapex has quit IRC (Ping timeout: 480 seconds) [15:02] *** svarbanov has quit IRC (Ping timeout: 480 seconds) [15:24] *** GBenji has quit IRC (Quit: Leaving.) [15:47] *** darkapex has joined #linux-media [16:27] <ndufresne> hverkuil: gnurou: There is something gone wrong with the media controller topology on the MTK 8183 decoder, https://imgur.com/a/snzaNyB [16:28] <ndufresne> video1 is the encoder, should point to video0 [16:28] <ndufresne> as gst does identification through media controller topology it breaks, v4l2compliance still uses video nodes iirc for that [16:29] <ndufresne> that was reported by macc24, let me invite him here [16:30] *** macc24 has joined #linux-media [16:30] <macc24> o/ ndufresne [16:31] <ndufresne> hey macc24, so I sent to hverkuil and gnurou the broken topology image I pasted on imgur [16:31] <macc24> ndufresne: i yote the mtk-vcodec-enc module and it's now pointing at right devices [16:31] <ndufresne> but I think best is to report this issue on the ML as a reply to the patchs introducing it [16:32] <ndufresne> you mean you simply unloaded the encoder and that fixed the media topology ? [16:32] <macc24> unloaded [16:32] <ndufresne> I'm wondering if that is not some bug fixed with the "multi-decoder" patchset .... [16:32] <macc24> yote the /lib/modules/5.15.0-cadmium+/kernel/media/whatever/mtk-vcodec-enc.ko into /dev/null [16:33] <macc24> rebooted [16:33] <macc24> and it's fixed [16:33] <ndufresne> it's a bug, for sure [16:33] <macc24> now it looks like this https://bpa.st/6REA [16:36] <ndufresne> macc24: something is broken with the debug category here, can you add ,default:7 to your logs ? [16:39] <macc24> ndufresne: https://bpa.st/BRWA [16:39] <macc24> that's as far as my terminal allows me to scroll [16:39] <ndufresne> macc24: I will fix the debug log, I know what is the issue (that's the CRITICAL assert you get), normally it should fallback to the default category, but it will basically say "Not registering H264 decoder since it produces no supported format" [16:39] <macc24> brb [16:40] <ndufresne> macc24: looks like the trace was lost, but I'm sure this is were the storry ends [16:41] <hverkuil> ndufresne: https://patchwork.linuxtv.org/project/linux-media/cover/20210114180738.1758707-1-helen.koike@collabora.com/ [16:42] <hverkuil> ndufresne: I don't know the details anymore whether or not multi-stride was supported. I think so, though. [16:44] <macc24> ndufresne: :| [16:46] <ndufresne> hverkuil: yep, looks correct, if I read correctly, let's take NV12, you must pass 2 v4l2_plane_pix_format event if you only have 1 allocation [16:47] <hverkuil> ndufresne: re MTK 8183 decoder: so the function of the codec entity according to the media device is MEDIA_ENT_F_PROC_VIDEO_DECODER, but the video node is actually an Encoder, and v4l2-compliance doesn't check for that mismatch, correct? [16:47] <ndufresne> macc24: there is not more logs implemented in there, but basically, it does not look like you have NM21, or the device didn't enumerate ... [16:47] <macc24> ndufresne: NM21? [16:47] <ndufresne> hverkuil: not sure if you can detect it, but the node in the media controller topology is not the decoder node, but everything says decoder properly [16:48] <ndufresne> it basically got the node wrong, not sure how that happened .... [16:48] <ndufresne> macc24: NM12 sorry [16:48] <ndufresne> or was it MM12, anyway, mediatek proprietary format that no userspace supports except chromium [16:48] <macc24> mm21 [16:49] <ndufresne> ok, heading for lunch now [17:04] *** gouchi has joined #linux-media [17:25] <hverkuil> ndufresne: macc24: added a check for correct entity function value for codecs to v4l2-compliance. The mtk driver should now fail with v4l2-compliance. [17:25] <ndufresne> hverkuil: excellent ! thanks [17:26] * macc24 blames herself for believing that mtk drivers would just work [17:26] <macc24> hverkuil: thank you [17:29] <ndufresne> macc24: this driver is still one of these thing only tested on chrome os with a 5.10 backport, I do hope we can fix that situation and get proper mainline work from them in the future [17:30] <macc24> ndufresne: well, considering how many patches i needed just to boot 5.10 upstream kernel, it's getting better [17:31] *** BrianG61UK has joined #linux-media [17:32] <hverkuil> macc24: it would be great if you can verify that v4l2-compliance indeed fails with the new check for that codec. I've only tested it with vicodec (which obviously passes the test). [17:33] <macc24> ndufresne: ok i can test it tomorrow if you remind me [17:40] <macc24> ndufresne: "proprietary format no userspace supports except chromium" does it? [18:38] *** mort_ has quit IRC (Quit: Ping timeout (120 seconds)) [18:38] *** mort_ has joined #linux-media [18:47] <ndufresne> macc24: well, there is tone of mid-range chromebooks [18:50] *** jarthur has joined #linux-media [19:05] <pinchartl> macc24: I think we should all be able to expect that driver submitted to mainline work [19:05] <pinchartl> we're clearly not there though, and it's more painful with some vendors than others [19:06] <pinchartl> dumping a pile of non-working code that nobody has any intention of maintaining, to satisfy business obligations, puts an unfair strain on the community [19:51] <macc24> pinchartl: well, being able to output only in proprietary mm21 pixel format is the biggest issue of mt8183's video decoder [20:31] *** darkapex1 has joined #linux-media [20:33] *** darkapex has quit IRC (Ping timeout: 480 seconds) [20:45] *** fleebs has joined #linux-media [20:46] *** darkapex2 has joined #linux-media [20:50] *** darkapex1 has quit IRC (Ping timeout: 480 seconds) [20:56] <ndufresne> macc24: that's why hverkuil mention Helene's work, which is currently stalled, but address some issues in v4l2, including modifier support [20:57] <ndufresne> DRM modifier is a way to avoid the combinatory explosion and exposes vendor compression in a sensible way [20:57] <ndufresne> I just hope it won't be too late, since we already have a lot of format being added for vendors that would have fit better with modifiers [20:58] <ndufresne> I also have to do my part and finish modifier support for gst, I hope near christmas, when folks start being on vacation I'll be able to give it another try [20:59] <ndufresne> macc24: cause right now, the only way forward adding MM21 would be reverse it and tread it as raw format in libgstvideo, which might not be possible if its actually compressed [20:59] <macc24> ndufresne: okay.... do you have any pointers on stapling enough code onto v4l2codecs for it to not be broken? [20:59] <ndufresne> (in gstreamer that is) [20:59] <macc24> ndufresne: MM21 is *not* compressed. MT21C is [21:00] <ndufresne> right, that is my hope that MM21 is short term reversible [21:00] <pinchartl> ndufresne: do you also wish the whole world would take a year off so you could catch up ? [21:00] <ndufresne> what I suggest to dafna, was to map MM21 to NV21, and use that to dump some data to disk, so we can start looking [21:01] <ndufresne> pinchartl: I'm sure I'm not the only one to wish that sometimes, the first movie the Matrix is so inspiring in ways to fix our issues ;-P [21:01] <macc24> ndufresne: yea no crap [21:02] <macc24> mm21 is non contigous soooooooooooo v4l2codecs will need to be adapted for that [21:04] <macc24> currently i'm trying my best to not give up [21:05] <ndufresne> ah right, I don't recall what would be difficult to support non-contiguous (multi-allocation) [21:05] <ndufresne> gstreamer code in general does not care [21:09] <ndufresne> macc24: ok, so not too bad, the internal FormatEntry support it, a start, then you need to add all sizeimages in one spot, and to use the strides rather then extrapolating them [21:10] <macc24> i know some of these words [21:10] <ndufresne> oh, and you have to sue sizeimage for the offset [21:11] <ndufresne> see gstv4l2format.c [21:11] <ndufresne> I think that's it, the beauty of v4l2codecs is that it's still simple and minimal [21:11] *** svarbanov has joined #linux-media [21:12] <ndufresne> I only added formats I could test, so basically NV12, YUV2 and SUNXI_TILED [21:12] <macc24> umm [21:12] <ndufresne> that covers hantro, rkvdec and cedrus [21:13] <ndufresne> without 10bit support, on my todo to [21:16] <macc24> ndufresne: do you have time to answer dumbest questions you ever heard? [21:16] *** jarthur has quit IRC (Ping timeout: 480 seconds) [21:35] <ndufresne> lol, got 2 minutes left though ;-P [21:35] <ndufresne> macc24: remember IRC is async, you can ask question, and I can reply later ;-P [21:35] <macc24> ndufresne: i guess [21:52] *** djrscally has quit IRC (Quit: Konversation terminated!) [21:59] *** jm_h has quit IRC (Remote host closed the connection) [22:05] *** gouchi has quit IRC (Remote host closed the connection) [22:20] *** djrscally has joined #linux-media [22:49] *** svarbanov has quit IRC (Ping timeout: 480 seconds) [23:07] *** djrscally has quit IRC (Quit: Konversation terminated!) [23:30] *** mugnierb1 has joined #linux-media [23:35] *** mugnierb has quit IRC (Ping timeout: 480 seconds) [23:36] *** mugnierb1 has quit IRC (Read error: Connection reset by peer) [23:36] *** mugnierb1 has joined #linux-media