2020-05-14.log

+ nemunaire (~nemunaire@82-64-151-41.subs.proxad.net)00:39
chartreusePersonally I would have wised for more ram, perhaps with a sodimm socket. But I understand that an ideal open hardware system module wasn't out there.00:40
chartreuse*wished00:40
chartreuse4GB should be plenty enough for now, even if my current laptop runs 16.00:41
mntmnchartreuse: yeah, with what i'm doing with reform i haven't really had a problem with the 4 GB, but others might. i'm positive that future SoCs/SoMs can get us more memory.00:43
chartreuseYeah, that's a really great feature with the reform, being able to swap out the system module.  Maybe it needs a 6502 module instead :)00:44
mntmn:D00:45
mntmni wanna make (or maybe someone else will be faster) an FPGA module, with that you could experiment with any available smaller cpu core00:46
swivelmy x220 would OOM with some regularity on 4G, just firefox with too many tabs00:58
- embden (QUIT: Ping timeout: 260 seconds) (~embden@mue-88-130-57-065.dsl.tropolys.de)02:02
Jookia1congrats on the funding02:19
Jookia1isn't the whole point of virtual memory and swap that you don't need tons of RAM02:26
swivelswap sure, but I don't run any swap on my flash-based systems02:29
swiveleven without that my ssd is already pretty aged according to the smart info02:29
ex-parrotI generally like to run a small swap and set vm.swappiness to low04:15
ex-parrotbest of both worlds then04:15
swivelnowadays i at least run my web browser in an nspawn container which makes resource control a lot easier, i limit its memory to 2G and it'll thrash and OOM without affecting the rest of the system04:18
swivelbut i also have 16G on the x220 now04:18
ex-parrotlast year I got a nitrocaster kit for my X23004:20
ex-parrotvery good upgrade but fiddly04:20
swivelive been meaning to swap my x220 keyboard onto the x230 i have just haven't gotten around to it, it'll be nice to have a vulkan-capable laptop04:20
swivelwhat resolution display did you get with the nitrocaster?04:21
ex-parrotsadly I actually like the X230 keyboard04:21
ex-parrot1080p04:21
swivelnice, lots better than the original display04:21
ex-parrotyeah, so much better04:21
swivelmy hands are pretty small so both the x220 and x230 keyboards suck for me, but i'll always prefer the classic thinkpad key style04:22
swivelthe X40 was the best keyboard for me, hoping the reform will be more like that04:23
ex-parrotmmm the T/X 40 was (is?) pure bliss05:06
swiveli still have my X40 but haven't used it for anything in ages, if it had a SXGA+ LED-backlit display i'd prolly still use it for coding05:12
ex-parrotI swapped a 1050 panel in to mine05:16
ex-parrotwait no, I swapped the 1050 panel in to the T60 from a T4005:16
technomancysuch a good panel05:17
technomancylegendary05:17
ex-parrotfor the time certainly05:17
ex-parrotmine has got fairly dim now05:17
ex-parrotI had to add an i2c PROM to it for the edid as well05:17
swiveli did the swap on my old X61S from the SXGA+ tablet, even replaced the CCFL with LED, but the results were mediocre and after a couple years it failed05:20
ex-parrot:(05:21
swivelit's a perfect resolution for that size though, i just wish they were available from factory w/LED05:22
ex-parrotagreed05:22
technomancydecent brightness, reasonable resolution, matte; pick any 2 =\05:24
ex-parrotthe panel I got in my X230 now is amazing05:28
ex-parrotand it just came from aliexpress05:28
ex-parrotthe original novena panels were quite nice too05:28
technomancynot a big fan of the aspect ratio but other than that it's good05:49
ex-parrotmm the 1050 panels in the T series have the best aspect ratio :)06:10
+ jfred (~jfred@li1925-247.members.linode.com)06:19
+ B[] (~Thunderbi@125-239-58-43-fibre.sparkbb.co.nz)06:21
* Jookia1 -> Jookia06:46
Jookiaswivel: you can use systemd-run to limit resources since it puts it in its own cgroup06:46
swivelJookia: yeah, there's some feature overlap there w/systemd-nspawn, i like using nspawn containers for a number of reasons, and have kind of stopped installing much directly on the host06:48
Jookiaah ok06:48
swivelit's nice to run something internet-facing like firefox where it can't access my home dir/ssh keys etc ;)06:48
- paulk-leonov (QUIT: Ping timeout: 246 seconds) (~paulk-leo@leonov.paulk.fr)06:50
+ paulk-leonov (~paulk-leo@leonov.paulk.fr)06:51
Jookiayeah i use multiple users for that atm06:58
- Jookia (QUIT: Ping timeout: 240 seconds) (~Jookia@gateway/tor-sasl/jookia)09:11
+ Jookia (~Jookia@gateway/tor-sasl/jookia)09:13
+ embden (~embden@mue-88-130-57-191.dsl.tropolys.de)10:09
- B[] (QUIT: Ping timeout: 256 seconds) (~Thunderbi@125-239-58-43-fibre.sparkbb.co.nz)13:14
- erlehmann (QUIT: Ping timeout: 264 seconds) (~erlehmann@46.114.39.202)16:29
+ erlehmann (~erlehmann@46.114.33.49)16:41
ndufresnemntmn: just saw you report with the HW decoder, quite some progress, simple question, do you get these glitches with all videos ? what ezequiel is proposing to to record the decoding into a file, that is simply to rule out potential GL issues17:09
ndufresnemntmn: I know @cphealy carries some patches for implicit fences, so there is known glitches when doing v4l2/gpu there, but it didn't look like this17:10
mntmnndufresne: oh i had similar glitches with kms-sink, so i’m confident these are decode errors. you can see smearing of motion vectors etc17:12
mntmnndufresne: these videos come from ffmpeg’s standard settings when you encode to .mp4 with libx26417:12
ndufresneif you have a link to a sample, I can git it a try here17:13
ndufresnewould be nice is this issue is also visible through ffmpeg17:14
ndufresnethis is of course all very early, I'm basically picking up broken files, one after another and fixing17:14
mntmnsure, let me see if i can make you a minimal example video17:18
ndufresnecool17:18
ndufresneyou already got Khodi running on top of https://github.com/Kwiboo/FFmpeg ?17:19
mntmnndufresne: when i use gst-build, that also seems to yield libavcodec and friends, right? how can i build the ffmpeg tools in that environment?17:21
mntmn(my system ffmpeg doesn't work when the gst-build devenv is active, crashes)17:22
ndufresneunless you pass --wrap-mode=nofallback to meson,  or if you have ffmpeg-devel already, it will use some ffmpeg port, but it does not have anything v4l2 or HW accelerated in the build17:22
ndufresnewe don't support ffmpeg HW accel in gst, as the buffer management was too weak until recently17:23
ndufresnewe could possibly change, but usually we have more flexible implementation17:23
ndufresne"work when the gst-build devenv is active, crashes", would need to be looked at, works on Fedora AARCH64 here17:24
mntmnndufresne: here is a video that i just generated purely with ffmpeg that is not decoded correctly http://dump.mntmn.com/testvid.mp417:25
mntmnregarding ffmpeg crash, probably debian bullseye's ffmpeg is a bit too old and i should build it myself17:26
mntmnndufresne: the video was generated using the command ffmpeg -f lavfi -i testsrc=duration=10:size=1920x1080:rate=25 testvid.mp417:27
ndufresnemntmn: thanks, I'll give that a look, see if reproduce first17:45
ndufresnemntmn: would you mind doing an extra test ? gst-play-1.0 --videosink="capsfilter caps=video/x-raw,format=YUY2 ! glimagesink" testvid.mp4 ?18:00
ndufresnehmm, wait, might need playbin3 for that to work18:01
ndufresnemntmn: in gst build, when the build is gone, you do ./gst-uninstalled.py, that give you a shell to use what you just built, if ffmpeg was build as a subproject, then the related plugin will be available18:03
ndufresnejust do gst-inspect-1.0 libav18:04
ndufresneyou'll see all ffmpeg based features18:04
mntmnndufresne: thanks! were you able to play back my test video?18:06
ndufresnenot yet, working, will happen after lunch18:08
ndufresneit's nice an sunny, got a go out, spending too much time inside, you all know why18:08
buckket /scripts18:09
+ cphealy (~cphealy@2605:e000:160b:911f:4ffb:a92e:a44b:20d3)18:10
mntmnndufresne: haha yes indeed18:10
mntmnbuckket: script scrapt18:11
+ B[] (~Thunderbi@125-239-58-43-fibre.sparkbb.co.nz)18:31
mntmnndufresne: the problem is related to h264 profiles. i just reencoded the video to baseline profile and it decodes fine then.18:43
+ cyrillu[m] (cyrillumat@gateway/shell/matrix.org/x-kgmrzzbqkanycmgz)19:12
ndufresnemntmn: so it's clean here with ezequielg kernel19:33
ndufresnefor the reference, gst-launch-1.0 filesrc location=videos/testvid.mp4 ! parsebin ! v4l2slh264dec ! videoconvert ! jpegenc ! filesink location=test.jpeg19:33
ndufresneWe'll check that out, I suspect some patches didn't land yet19:33
ndufresne(getting patches into the kernel is a really slow process, each patches takes months)19:34
mntmnndufresne: oh, my test video works on your end, yeah?19:37
ndufresneyes19:38
mntmnwow ok19:38
ndufresnemntmn: so you are on Linus tree ?19:38
mntmnndufresne: yes19:41
mntmnfrom around ~ apr 2919:42
ndufresneso I'm building 5.7 rc4 here to see19:44
mntmncool19:45
mntmnndufresne: this is what i get with your command http://dump.mntmn.com/test.jpg19:46
mntmnndufresne: the buffer includes content from another video i played previously :D19:46
ndufresnecute19:46
mntmnindeed19:47
ndufresnehmm, hantro does not even probe on linus master here20:02
mntmnin my case that needed some non-obvious kernel config option20:03
ndufresneyes, the config issue is fixed in linuxtv/master now20:05
ndufresnebut here the DTS changes for imx8mq evk board is not in yet20:06
mntmnndufresne: ok, do you need them?20:06
ndufresneI got them in another branch, I'm just susprised these two things didn't make it in the same merge window20:07
mntmnok :)20:07
cphealyYou need staging drivers and then you should see: CONFIG_VIDEO_HANTRO_IMX8M20:09
+ ezequielg (sid363064@gateway/web/irccloud.com/x-epvwplxwfjmvfqqz)20:13
ezequielgso we have hantro :)20:13
ezequielg\o/20:14
mntmn:D20:14
mntmnyes20:14
ndufresneyou had to pull some CAMERA config at some point, that was a bug though20:14
ndufresnethe .jpeg is bigger, that's a bad sign ;-P20:15
ezequielgmntmn: what's your kernel tree? would be nice to check if we have any fixes or anything.20:15
ndufresne(currupted output don't compress well)20:15
ndufresneezequielg: that's what I was looking20:16
mntmnezequielg: linus master from 2 weeks ago with some patches on top, https://gist.github.com/mntmn/c1005bd9f4cbc53e71058f0a45084da320:16
ndufresneso I got linus master from today running, pulling the result now (my board is in the office)20:16
ndufresnemntmn: I confirm that decoding is broken on  5.7 rc520:17
ndufresneso now the question is which patches are needed20:18
ezequielgmntmn: define "broken" :)20:18
ndufresneezequielg: unless you have a 5.7 rebase handy ?20:18
ndufresneezequielg: very corrupted ;-P20:18
ezequielgon all profiles/samples ?20:18
ezequielgany other hint?20:18
mntmnezequielg: Baseline seems to work20:19
ndufresneno idea, just tested one file20:19
mntmn(i mean for me)20:19
ndufresneI have a display less running remotely board for testing, so it takes a bit of time20:19
mntmnHigh 4:4:4 Predictive and High did not work for me20:19
ndufresneHigh 4:4:4 is not supported at all20:20
ndufresne4:2:2 is not implemented, only 4:2:0 is currently implemented20:20
ndufresneand now I notice that the testvid.mp4 is high 4:4:4... how come it worked ...20:22
ezequielgmntmn: might be a good idea to push your sample.20:23
ndufresnehe did20:23
ndufresne11:25 <@mntmn> ndufresne: here is a video that i just generated purely with ffmpeg that is not decoded correctly http://dump.mntmn.com/testvid.mp420:24
ezequielgdoh.20:24
ezequielgoky doky -- i have to finish a few things, but i can take a look shortly. saturday at most.20:24
ndufresneinteresting, it's not the same file as I downloaded few minutes ago20:24
mntmnok? :D20:25
mntmnthe video with glitches/smears: High, yuvj420p(pc)20:26
mntmnthe high 4:4:4, testvid.mp4, doesn't render at all, it just generates noise for me  (as expected?)20:26
ndufresneyes, so high 4:4:4 is not support by the g1 at least20:32
mntmnok20:32
ndufresneI have discussed this issue with ezequielg, we think we need a patch to make this hard failure, and also to expose the supported profiles20:32
ndufresneand I'll add the code in gst too, so it can fallback to software20:33
mntmnawesome20:33
ndufresnefor 4:2:2, it's a limitation of the driver20:33
mntmnany idea why yuvj420p(pc) would kind of work but cause these smears and glitches?20:33
mntmn(if that's the cause)20:33
ndufresneis it as bad as what you show me, or just diagonal stripes, with sometimes black flashes ?20:34
mntmnndufresne: http://dump.mntmn.com/IMG_8224.mp420:34
mntmnndufresne: and this is what i got from the 4:4:4 (probably expected) http://dump.mntmn.com/IMG_8223.mp420:35
mntmnndufresne: it seems like it ~mostly~ works20:36
mntmnbut there's some corruption that is then smeared around, too20:36
ndufresnestrange, normally you don't get anything for 4:4:4, unless I'm missing something20:36
mntmnndufresne: the content you see in the 4:4:4 is not from the video itself, but old buffers from the previous video20:36
mntmnit keeps something around20:36
mntmn(not sure where exactly)20:37
ndufresneok make sense, there is not enough bits in the register to tell the HW we are doing 4:4:4, right now it just get truncated, that really need fixing20:37
mntmnok cool20:38
ndufresneas for 4:2:2: we pass a too small memory buffer, so of course it will go wrong20:40
ndufresneok, to recap, High 4:4:4 need to be filtered out20:41
ndufresne4:2:2 is missing implementation, so we need to temporily filter this out20:42
mntmnok20:42
ndufresneand gst need to expose the profiles, so that software fallback can work in playbin/playbin320:42
ndufresneas for g2 (VP9 and HEVC) those will be 4:2:0 only, HW limitation, but they will have 10bit support20:43
ndufresne(no driver yet)20:43
mntmngot it20:43
mntmnis G2 very different from the G1 driver implementation work wise?20:44
ndufresnewe'll try and improve this, thanks a lot for testing and reporting, not always simple to sort things out20:44
ndufresnemntmn: same workflow, different registers, and a lot of registers as this is complex codecs (HEVC and VP9)20:44
ezequielgndufresne: note that the hantro driver is exposing some profiles through the V4L2_CID_MPEG_VIDEO_H264_PROFILE control. maybe we should double check if it's not exposing anything it doesn't support.20:45
mntmncool, thank you for your hard work, i'm glad to test new things when you have them20:45
ndufresneezequielg: ok, so it expose profiles but ignores the pps ?20:45
ndufresnesorry sps ?20:45
ezequielgmost likely, yes.20:45
ezequielgthat's definitely pending.20:45
ndufresnewell, means it worth that I implement profile in gst already, as it's better then giving user corrupted frames20:46
ndufresnelet me check the list20:46
ndufresne(trying to remember my v4l2-ctl foo)20:46
ezequielgwell, it uses profile_idc, but it's not rejecting what can't support.20:46
ndufresneok, so we expose baseline, constrained-baseline, main and high20:47
ndufresnein theory these should work, though there is one counter example20:47
ndufresneand baseline is a lie, the hardware supports it, but that would require a new kernel interface, and afaic, we'll never expose that20:48
ndufresneat the same time, most baseline files are secretly contrained20:48
ndufresneand there is no software fallback, since ffmpeg does not support the advance features in baseline20:49
ndufresnemntmn: when I thought it worked, I was basically lucky and the decoder picked up frames from the previous decode ;-P20:52
ndufresneso the "random content" was valid images20:52
mntmnahhh20:54
mntmn:D20:54
ndufresnewe will let you know when we have updates, I'll definatly add profiles filtering in gst, as this will help20:55
ndufresneyou can launch epiphany (the gnome browser) to test what happens on the web, maybe youtube ? I never tested htat20:56
mntmnit uses gstreamer?20:56
ndufresneepiphany is using webkitgtk, which uses gstreamer yes20:56
ndufresnecervo, the Mozilla experimental browser (written in rust) is also GStreamer base20:57
mntmnoh20:57
ndufresneas for Firefox, it's ffmpeg based, and chromium has it's own native implementation for that codec, if you can figure-out the build knob20:57
ndufresneit's used on RK3288 and rK3399 chromebook20:58
ndufresnefor Firefox, some work is needed, I'm not sure they have DMAbuf/EGLImage support yet, so pretty far20:58
ndufresnewhen webkitgtk goes gtk4, that will make a huge difference for embedded GPU, I'm really looking forward21:00
ndufresnemntmn: stupid question, but what's the window manage in your demos ?21:01
mntmnndufresne: it's sway!21:01
mntmnhttps://swaywm.org/21:01
mntmn(wayland)21:02
ndufresneah, I know I had seen it before, they are the folks behind wlroots iirc21:02
mntmnyep21:02
mntmnso, epiphany is generally very sluggish here, and it does not pick up the hw decoding, just tried it21:02
ndufresnehmm, ok, well, most of web content is VP9, and that's on the g221:03
ndufresnemight be why21:03
ndufresnewe'll get there at some point for sure21:04
ezequielgsway <321:07
ndufresnehehe, then you might like to know that it's developers are looking into gstreamer waylandsink, as sending directly you decoded frames to the compositor have showed to yield better video streaming performance ;-P21:15
ndufresneof course, wlroot needs a minimum support, like scaling ;-P21:15
mntmngood good :)21:18
- ehmry (QUIT: Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) (~quassel@2a03:3b40:fe:ab::1)23:02
+ ehmry (~quassel@2a03:3b40:fe:ab::1)23:10
ex-parrotmorning23:25
mntmnyo!23:33
ex-parrothow's it going mntmn?23:44
mntmngood good, getting back to KiCAD today to finish D-4 motherboard revision23:44
ex-parrot\o/23:44
ex-parrotextremely misc question: on the "real" reform is the bottom panel frosted acrylic or clear or something else?23:45
ex-parrotalso, I am super pleased that reform is done in KiCAD23:47
ex-parrotalso mntmn, not sure if I ever mention, but I started following your work after Interim. that was very inspirational! thank you for all your good work so far in the community23:55
ex-parrotmentioned*23:55

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!