humbleui

motform 2022-10-13T13:49:34.602149Z

Is there any way one could play video in HumbleUI (now, or in the future)? I assume such a thing would go through skija, or would I have to pipe in something like gstreamer?

Niki 2022-10-13T17:44:17.863739Z

I haven’t tried yet. There’s probably some way to marry Skia and whatever thing decodes video since Chrome and Android do it somehow. Certainly will have to look into it eventually

phronmophobic 2022-10-13T17:48:27.254539Z

It's definitely possible. As far as I know, skia doesn't have builtin support for video. I hadn't seen gstreamer. It's neat and should work. I have an example of playing video using https://github.com/cnuernber/avclj with skija. It shouldn't be too hard to port to work with HumbleUI. It currently doesn't do audio, but it shouldn't be too hard. There might also be an existing solution with gstreamer or avclj for handling audio. https://github.com/phronmophobic/clj-media/blob/main/src/com/phronemophobic/clj_media/skija.clj

🎉 3
Niki 2022-10-13T18:47:32.926719Z

@smith.adriane that’s a great example! I might use it to embed video in humble-deck!

1
phronmophobic 2022-10-13T18:50:26.158059Z

just fyi, even though all the code in clj-media is EPL, avclj is gplv2.

phronmophobic 2022-10-13T18:50:40.926779Z

if you do get audio working, I would love to hear about it (pun intended)

Niki 2022-10-13T18:50:54.031949Z

Thanks for the heads up!

Niki 2022-10-13T18:51:22.317419Z

I don’t need audio for the talk, so it will probably come later

👍 1
phronmophobic 2022-10-13T18:52:15.051529Z

I haven't needed audio yet, but I'll probably get around to implementing it at some point

Niki 2022-10-13T19:18:17.760619Z

Why everything related to video is always so complicated?

motform 2022-10-14T06:13:18.079319Z

Good question @tonsky, and fantastic example @smith.adriane! After looking into the hell that is video file formats I was almost ready to get a licence for http://www.radgametools.com/bnkmain.htm as it seems like the only sensible and high performance solution to what should not be this difficult of a problem. Not open source obviously, but who knows what might happen now that Epic acquired RAD.