Wednesday, 2021-04-14

OksanaHow do I create a Sailfish OS patch? I have half a dozen email accounts, and intend to add more, I would like them to have unique icons, instead of generic yellow envelopes. ag-tool shows iconPath setting for each of the accounts, I would like to be able to change that - in GUI. Like, Settings->Accounts->MyEmailAccount, click/tap the icon - and instead of doing nothing, that opens a File/Image-Chooser, to select the image you want00:20
*** frinring_ is now known as frinring01:56
*** nyov is now known as Guest3665803:21
*** ersatzmaus is now known as fledermaus09:14
Mister_Magisterabranson: hear me out, ffmpeg with gpu acceleration on adreno/gst-droid12:46
Mister_Magisterl13:03
abransonMister_Magister: would be nice! not so keen on hw adaptation builds of ffmpeg though. it's a big one.13:14
Mister_Magisterabranson: couldn't we do video conversion, hw accelerated using gstreamer?13:14
malthe issue is that ffmpeg doesn't have any good plugin interface13:15
Mister_Magisterbasically i'm searching for way of reencoding recorded vids cause sfos camera can't into encoding13:15
Mister_Magisteralso abranson do you know if there has been any movement with gst-droid example usage13:15
Mister_Magisterlike discussed on meeting13:16
malMister_Magister: to what format are you trying to re-encode?13:16
Mister_Magistermp413:16
Nico[m]I would just use gstreamer in that case, it can also do recording and would fit better with gst-droid, I think? :D13:16
Mister_Magisterbut saner13:16
Mister_Magisterso that 20 min vid doesn't weight 2GB13:16
abransonno, as I said it's not really a supported way to use the media stack, so providing docs on it wouldn't be something we'd want to do13:16
Mister_Magisterbut 200MB instead13:16
Mister_Magisterabranson: but you are using gst-droid13:17
abransononly through qtmultimedia13:17
Mister_Magisterand browser13:17
malgstreamer should be able to re-encode quite well, in theory even with hw acceeleration, assuming the decoder and encoder things in gst-droid work as they should13:17
abransonand that's all people should be using in their apps13:17
Mister_Magisterabranson: but thats insanely limiting13:18
abransoni don't think gst-droid venc is working very well atm13:18
Mister_Magisterwhy can't we simply use gstreamer13:18
Mister_Magisterlike13:18
Mister_Magisterwhy gstreamer isn't gpu accelerated by default13:18
Mister_Magisterlike on pc13:18
abransonbecause the codecs are behind hybris, not standard linux ones13:18
abransonthere's some interesting possibilties on the pinephone for that though! gst-vaapi etc13:19
abransonnot sure that's stable yet though13:19
Mister_Magisterand it couldn't be done to use hw acceleration by default?13:19
Mister_Magisterabranson: let me ask different question then. Do you have any idea how to get video playback not through qtmultimedia13:20
abransonI think if there's something not possible through qtmultimedia, then we should get it working through that instead.13:21
Mister_Magisterbut qtmultimedia is insanely limited13:21
Mister_Magisterbasically all i need is to access gst pipeline13:22
Mister_Magisterbecause qtmulimedia will only play one source on single pipeline13:22
Mister_Magisterand using gst droid directly you can have two sources on one pipeline13:22
Mister_Magisterso that they're synced13:22
Mister_Magisteryou can't do that through qtmultimedia13:22
Mister_Magisterthats why i'm in such pain13:22
Mister_Magisterand qtmultimedia doesn't allow subtitles13:22
abransonswitching between different bitrate streams?13:23
Mister_Magisterand has shitload of other limitations13:23
Mister_Magisterabranson: on13:23
Mister_Magisterabranson: no, playing audio and video13:23
Mister_Magisterfrom separate streams13:23
abransonsubtitles would be nice too. very surprised that's not in qtmm already. but if it were added, then it would be available for anyone writing qt/qml apps.13:24
Mister_Magisterabranson: granted jolla will ever update qt (HAH)13:24
abransonare subtitles in newer versions?13:25
abransoni'm sure qt will be updated eventually, but in the meantime we can add things to our version (as long as they don't backport code from later versions with a different license)13:25
abransonthis playbackrate pitch compensation thing with thigg is looking very nice, for example13:26
Nico[m]Wasn't QtMumtimedia mostly redesigned for Qt6 too? And a lot of features dropped?13:26
Mister_Magisterabranson: i don't think so13:27
Mister_Magisterabranson: playbackrate pitch compensation?13:27
Mister_Magisterabranson: so what you are saying is, if i patched qtmlutimedia to allow playing 2 streams one for vid second for audio, you would merge it?13:28
abransonyeah. quite cool: https://forum.sailfishos.org/t/no-pitch-compensation-when-playing-audio-with-playbackrate-1/136913:28
abransonMister_Magister: well it wouldn't be up to me, so it would have to be sane :D13:28
abransonso you're loading the video and audio from two different streams? both coming from the network??13:29
Mister_Magisterwdym sane13:29
Mister_Magisterabranson: yep13:29
Mister_Magisterthats what youtube gives13:29
Mister_Magisterits not really MPD even13:29
Mister_Magisterits just 2 separate streams13:29
abransonsane = passing pvuorela code review :D13:29
Mister_Magisterbut its possible to get it merged13:29
Nico[m]I also need to use gstreamer directly in the future and having access to the camera via gst would be important as well as the compositing parts .-.13:30
abransonyeah community stuff gets merged to our qtmm. piggz' camera params for instance. that even got upstreamed I think.13:30
Mister_Magisteri mean like multi camera13:31
Mister_Magisterbut thats something…13:31
Mister_Magisterwell its not that different13:31
Mister_Magisterokay then13:31
Mister_Magisteryou got yourself a patch13:31
Mister_Magisteri'll have look into displaying subtitles aswell13:31
Mister_Magisterdeal abranson?13:31
abransonwe don't need a deal. patches are always welcome ;)13:33
abransonbut just be careful of that upstream license change. we just can't take anything that's too similar to later upstream right now.13:34
Mister_Magisterabranson: there's nothing liket his in upstream13:37
Mister_Magisterhence minitube uses some 3rd party video players13:37
Mister_Magisterthat can actually play 2 streams13:37
Mister_Magisterif i just get the damn 2 streams i'll make so many people happy that jesus13:37
abransonso there are two streams that can trigger a buffering state? sounds crazy. i thought all that dash stuff was supposed to bundle them all up together in one.13:38
malso the streams are not in anyway together in how youtube gives those?13:38
Mister_Magisteryep13:39
Mister_Magisteryou literally have 2 separate urls13:39
Mister_Magisterone contains vid, second contains audio13:39
Mister_Magisterif you play it on single pipeline they are going to be synced13:39
Nico[m]Yeah, you have that issue with reddit video for example13:39
Mister_Magister^13:40
Mister_Magisterhe also plays 480p13:40
Mister_Magisteryoutube has combained streams for <=720p13:40
Mister_Magisterand native 1080p youtube playback is what people been asking for ever13:40
Mister_Magisterand i'm THIS close to doing it, i already know how to do it13:41
abransonis that part of one of those streaming standards like dash or smoothstreaming etc?13:41
abransoncos they have licensing dangers too13:41
Mister_Magisterheck i did it already before gst-droid update13:41
Mister_Magisterabranson: i don't think so13:41
Mister_Magisterits just 2 stream13:41
Mister_Magistermpeg dash is different13:41
Mister_Magisteryou need .mpd manifest for them13:41
Mister_Magisterand i still think they have licensing danger for streaming not receiving13:42
Mister_Magistercause there are literally opensource libs for that13:42
malsome of those have licensing costs even for client apps13:46
Mister_Magisterye you keep worrying me13:47
Mister_Magisterbut i really don't think its part of dash13:47
Mister_Magisterdash manipulates quality depending on bandwith13:47
Mister_Magisterand here quality is static,  whichever i choose13:47
Mister_Magisterso just playing 2 streams13:48
Mister_Magisterabranson: mal: from some random website "Dash Clients are defined in the summary as "products capable of parsing a Media Presentation Description and accessing or playing DASH Segments"14:06
Mister_Magisterso just playing 2 separate streams doesn't qualify as dash14:06
Mister_Magisteryou happy now14:06
abransonaren't those 2 streams actually dash segments?14:06
abransonor is that bit not going in qtmm? :D14:06
Mister_Magisterperhaps?14:07
Mister_Magisterlike14:07
Mister_Magisterthey don't have to be14:07
Mister_Magisterthey could be, but that depends on user14:07
Mister_Magisternot on owner14:07
Mister_Magisterdamn licenses idk anymoer14:10
Nico[m]I also need to play multiple steams, one from the camera, 2 from the network, which is pretty easy with gstreamer14:11
Nico[m]*streams14:12
Mister_Magistertwo video streams is something different14:12
Nico[m]For sure14:12
Nico[m]But you usually have the remote video and audio composited with your own camera in video calls14:13
Nico[m]And having the flexibility of gstreamer is very helpful there + gstreamer can do all the webrtc part14:13
Mister_Magisterhttps://github.com/videojs/videojs-contrib-dash/issues/358 mm i asked some random opensource dash player guys about license14:16
Mister_Magisteri also asked minitube guy if he's paying but he prably won't reply14:16
Mister_Magisterhe never does14:16
Mister_Magisterimagine you wanted to do something awesome but someone had to put license on it14:31
Mister_Magisteri'll still have a look into subtitles tho14:32
*** vilpan is now known as Guest1612414:41
*** Guest16124 is now known as vilpan14:41
Mister_Magisterits actually hard to find any licensing info14:59
Mister_Magisteradditionally you can't even buy the dash license anymore15:01
Mister_Magisteris it licensed still15:01
Mister_Magisterhttps://www.mpegla.com/programs/dash/15:01
Mister_MagisterThe DASH Patent Portfolio License is no longer offered to new Licensees15:02
Mister_Magisteri really don't think that you need to pay anything to playback dash at this point15:03
Mister_Magisterabranson: if you can't even buy DASH license how do you know you even need to have one15:07
Mister_Magisterhow do you know there exists some paid license15:07
abransonthat's weird. it's not very old so i doubt the patents have expired15:09
Mister_Magisterhecc, write to DASH-IF and ask them for license15:11
Mister_Magisterhecc i will do it15:12
Mister_Magisterabranson: also this https://dashif.org/ipr-declarations/ google/microsoft/qualcomm they all license their own patents free of charge15:31
Mister_Magisterhere it is kinda explained how it went https://streaminglearningcenter.com/articles/dash-royalties-resurface-in-three-law-suits.html15:34
Mister_Magisterstill no definitve if there are some royalties or not15:35
abransonprobably need some lawyer's eyes, but good news if true15:35
abransonwe can enable all the dash in gst then15:35
Mister_Magisterthat's useless to me still15:36
Mister_Magisterall i want is just to play separate audio and video15:36
Mister_Magisterabranson: i've also sent email to DASH-IF which seems to lead implementations, they should know the best how does it work15:37
abransonwouldn't that mean you'd need to do less? and just enable dash playback in qtmm, then gstreamer would look it up15:37
Mister_Magisterespecially that they promote some opensource players15:37
Mister_Magisterabranson: i don't have mpd file15:37
Mister_Magisteri could create one but thats not what i want15:37
abransonwhat are you getting from them?15:38
Mister_Magisterurls15:38
Mister_Magisterall i have is urls15:38
abransonnot in some meta format?15:38
Mister_Magisterno15:38
Mister_Magisterliterally playing 2 urls on one pipeline is my dream15:39
Mister_Magisteri know how to do it, i know that it works15:39
Mister_Magisteri just CAN'T do it :<15:39
Mister_Magister4k@60fps is only a dream15:39
Mister_Magisterabranson: its literally if you  used youtube-dl and got yourself video and audio stream15:39
Mister_Magisteryou pick format that suits you15:40
Mister_Magisterand thats what u have, 2 urls15:40
abransonah so youtube-dl is doing the parsing of whatever it is?15:40
Mister_Magisterye15:40
Mister_Magisteri can put those 2 urls in gst-launch on desktop and it works pefectly and thats exactly what i need15:41
abransonso what broke in your earlier impl? the video buffers?15:41
Mister_Magistertotall gst-droid api changed15:42
Mister_Magistertotally different signal15:42
Mister_Magisterno frame-ready and that kind of stuff15:42
Mister_Magisternot even sure as i don't get this code, if i understood it i would adapt it15:42
abransonthe r0kk3rz thing? wouldn't know where to start. gst code always ends up being a bit of a headful15:43
Mister_Magisterye15:43
abransonbut I think maybe it was a casualty of the buffer recycling stuff that denexter did.15:44
abransonso it's passing droid gralloc buffers from the source to the display, then cycling them back again to be reused15:44
Mister_Magisteri can patch qtmultimedia as adding some audio url parameters and then changing pipeline is childplay at this point15:44
abransonbut i didn't think the api had changed that much. it's a big commit though so maybe.15:45
Mister_Magisterno signals match15:45
Mister_Magisterthey do completely different things15:45
abransondid you triage which commit broke it?15:46
Mister_Magisterthat was year ago man15:52
Mister_Magisteri don't remember15:52
abransonah, longer than i thought then. so you can just build old versions and try it out15:58
Mister_Magisterwhat do you mean?15:59
abransonif they're still compatible, you could roll back gst-droid to progressively older versions, and see when it starts working again. then at least you'll know which commit is the culprit and we might be able to figure out what the problem is16:00
Mister_Magisterhaven't we tried that already here16:01
abransoncould also grep old version for that frame-ready you're talking about. or anything else you know is missing16:09
Mister_Magisterframe-ready is still here16:11
Mister_Magisterabranson: nemo-gst-interfaces this thing still used?16:14
Mister_Magisterlets do it that way, i'll just build and GST_DEBUG it16:18
Mister_Magisterabranson: oh ye i remembered correctly  ../gobject/gsignal.c:2529: signal 'frame-ready' is invalid for instance '0xb75301d8' of type 'GstDroidEglSink'16:28
Mister_Magisteri'm already looking at 3 different projects, gst-droid is indeed mess16:28
Mister_Magisteri mean… it should be working, why is it invalid16:30
Mister_Magisterhttps://github.com/sailfishos/gst-jolla/blob/master/gst/droideglsink/gstdroideglsink.c#L320 like this is here16:30
Mister_Magisterand  that leads to https://git.sailfishos.org/mer-core/nemo-gst-interfaces/blob/master/gst-libs/gst/interfaces/nemovideotexture.c#L30216:31
Mister_Magisteram i missing something16:32
abransonnone of that's changed in a very long time16:33
Mister_Magisteryeah so why does it not connect16:35
Mister_Magisterwhy is it invalid16:35
Mister_Magisterfirst of all, qtmultimedia doesn't do gst_element_factory_make("droideglsink",                       "QtCamViewfinderRendererNemoSink");     if (!m_sink) {16:35
Mister_Magisterye see thats hella out of my scope16:36
abransonabove you linked 'gst-jolla' which is a really old thing that's not used16:36
Mister_Magisterabranson: oh i found original example https://github.com/foolab/gst-droid/blob/master/tools/simple-camera/renderernemo.cpp16:37
Mister_Magisterwell maybe not original16:37
Mister_Magisterabranson: yeee i'm just googling things16:37
Mister_Magisterhelp is appreciated as i don't even know what i'm doing16:37
abransonyes that's the original developer. doesn't work at jolla anymore16:37
Mister_Magisterjust throwing stuff at you xd16:37
Mister_Magisteridk at this point, thats all i was able to do16:38
Mister_Magisterliek it does create droideglsink object just fine16:38
Mister_Magisterbut signal is missing or something16:38
abransonwhen did that stuff last work? because by the looks of this it shouldn't have done for many years16:38
Mister_Magisteridk i remember it working year ago16:38
Mister_Magisteryeah i'm literally getting source as it was year ago and it doesn't work16:41
abransoni think it might be in here you should be looking: https://github.com/sailfishos/gst-droid/commit/b0a25efff149e8fa0f039e35917dac4e958fb72c16:41
abransonthere's a new element in there. videotexture sink.16:42
abransonmight be that should be involved instead, but I don't know really16:42
Mister_Magisterhttps://github.com/starkDbl07/sailfishIRC-localArchiver this thing is brokeh :<16:42
Mister_Magisterthats possible16:42
abransonthe timing looks right, and that's the biggest change that's happened in gst-droid lately16:43
Mister_Magisterye see its not easy xd16:43
Mister_Magisterabranson: and i have a hunch that its the one16:43
Mister_Magisterlike i don't remember, but something is telling me…16:43
abransonthat changed how buffers are created and passed around. if that r0kk3rz package is trying to do that then that might be why it fails16:44
Mister_Magisterlike it sends signal BUFFERS_INVALIDATED16:44
Mister_Magisterwe are not using it16:44
Mister_Magisterabranson: here it is16:48
Mister_Magisterhttps://github.com/sailfishos/gst-droid/commit/b0a25efff149e8fa0f039e35917dac4e958fb72c#diff-de385d5f0552f9aca46129d2c55b09b180fe1dc5147f345c01ff89ba2d9e3d70R24016:49
Mister_Magisterits using new signal show frame16:49
Mister_Magisterand not frame-ready16:49
Mister_Magisterthats what i've been telling about changed signals16:50
Mister_Magisterhttps://github.com/sailfishos/gst-droid/commit/b0a25efff149e8fa0f039e35917dac4e958fb72c#diff-de385d5f0552f9aca46129d2c55b09b180fe1dc5147f345c01ff89ba2d9e3d70R3216:50
Mister_Magisterthis entire thing is completely incompatible16:50
Mister_Magisterbecause you can see that previously https://git.sailfishos.org/mer-core/nemo-gst-interfaces/blob/master/gst-libs/gst/interfaces/nemovideotexture.c#L3416:51
Mister_Magisteronly 1 signal was there16:51
Mister_Magisternow there are 4 and we support neither16:51
Mister_Magisterhere you go, explained signals incompatibility16:51
malwhat other signals?16:52
Mister_Magisterclick the links mal16:53
malI did16:53
Mister_Magisterthen its explained in links16:53
Mister_Magisterlike you see 2 completely different sets of enums right16:53
malthe SIGNAL_FRAME_READY is still sent afaik, nemo_gst_video_texture_frame_ready (NEMO_GST_VIDEO_TEXTURE (sink), 0);16:54
Mister_Magisterliterally explained it above16:54
Mister_Magistertell that to this error signal 'frame-ready' is invalid for instance '0xb75301d8' of type 'GstDroidEglSink16:54
Mister_Magisteror its parameter changed16:54
malwell I didn't see you telling that before16:54
Mister_Magisteri did16:54
malI missed that in backlog16:54
abransonmal: one of those links above was from the really old gst-jolla project. ignore that one16:54
Mister_Magisteri copied it from above16:55
malabranson: which one?16:55
abransonweirdly i don't see any dramatic changes in qtmultimedia for this though, so i guess whatever was done was internel16:55
Mister_Magisterabranson: can you find what parameters are sent in frame-ready?16:55
Mister_Magisteri think the parameters changed16:56
abransonmal: the one where I saw that nemo_gst_video_texture_frame_ready16:56
malyou mean the line I mentioned?16:56
* Mister_Magister im really trying hard to remember it sorry for confusion16:56
Mister_Magisterlike the app gets rame_ready(GstElement *sink, int frame,                            QtCamViewfinderRendererNemo *r)16:56
Mister_Magisteri don't think int frame is here anymore iirc16:56
malabranson: https://github.com/sailfishos/gst-droid/blob/master/gst/droideglsink/gstdroidvideotexturesink.c#L22016:57
Mister_Magisterthat sounds correct still16:58
Mister_Magisterthe object and the frame number16:58
malso some threading issue or something?16:59
Mister_Magisteri don't think so16:59
Mister_Magisteri think the goal is to check how the signal changed17:02
Mister_Magisteri think it did change17:02
Mister_Magisterabranson: mal: found it https://github.com/sailfishos/gst-droid/commit/b0a25efff149e8fa0f039e35917dac4e958fb72c#diff-de385d5f0552f9aca46129d2c55b09b180fe1dc5147f345c01ff89ba2d9e3d70L3917:14
Mister_MagisterG_IMPLEMENT_INTERFACE (NEMO_GST_TYPE_VIDEO_TEXTURE17:14
Mister_Magisterthis object has frame-ready signal and all the previous stuff we were using17:14
Mister_Magisterhecc we even cast it to NEMO_GST_TYPE_VIDEO_TEXTURE17:15
Mister_Magisterin new one we don't implement it FINE_TYPE (GstDroidEglSink, gst_droideglsink, GST_TYPE_VIDEO_SINK);17:15
Mister_Magisterso we have only signals from the enum https://github.com/sailfishos/gst-droid/commit/b0a25efff149e8fa0f039e35917dac4e958fb72c#diff-de385d5f0552f9aca46129d2c55b09b180fe1dc5147f345c01ff89ba2d9e3d70R3217:15
Mister_Magisterwhich means show-frame which is incompatible with frame-ready because it gives us buffer and not frame number17:16
Mister_Magisterhope thats enough my head is steaming17:16
Mister_Magisterbasically after this commit the object changed completely17:16
malargh, so difficult to figure out what you mean in each case because the links won't go to the actual line17:18
malI need to manually try to find the line you mean17:18
Mister_Magisteroh17:18
Mister_Magisterthey don17:18
Mister_Magisterin this commit https://github.com/sailfishos/gst-droid/commit/b0a25efff149e8fa0f039e35917dac4e958fb72c# file gst/droideglsink/gstdroideglsink.c line 51 changes type17:19
Mister_Magisterline 32 adds new enums17:19
Mister_Magisterit needs new enums cause older ones were in the interface which is from super old project abranson was talking about17:20
Mister_Magisterthe interface had one singal only17:20
Mister_Magisterframe-ready17:20
abransonwhat i don't get is why nothing else seems to care about this change17:20
Mister_Magisterit was adjusted? it doesn't do things the way we are doing?17:21
Mister_Magisterlike qtmultimedia doesn't even create droideglsink object17:21
Mister_Magisterat least i can't find it17:21
Mister_Magisterhttps://git.sailfishos.org/mer-core/qtmultimedia/blob/master/qtmultimedia/src/gsttools/qgstreamergltexturerenderer.cpp#L19517:22
Mister_Magisterlike here, different object17:22
Mister_Magisteri might have looking at not updated qtmultimedia17:24
Mister_Magisterbecause pushing to master isn't jolla's strong point xd17:25
malwell those have a point of not using master but the default should be set correctly17:26
Mister_Magisterdefault is 7yo17:27
Mister_Magisterand its master17:27
malthat should have mer-5.6 as default branch17:27
Mister_Magisteridk how qtmultimedia uses gstrdoid17:28
Mister_Magistercan't find sane gst_element_factory_make17:28
malit doesn't use it directly, somehow in gstreamer it selects correct things17:32
Mister_Magisteryeah i can't even see that17:33
Mister_Magisterthere's no gstdroid reference or making any gstdroid object17:33
malgstreamer is not very simple to understand17:33
Mister_Magisterits magical17:33
malcan you give some example command how to test that error?17:36
Mister_Magistereeeee17:37
Mister_Magisternot really17:37
Mister_Magisterit wouldn't help you anyway17:39
Mister_Magisterye so qtmultimedia doesn't use droideglsink17:43
Mister_Magisterat least not directly17:43
Mister_Magisteridk what does17:43
Mister_Magisterthats the end for me17:43
malMister_Magister: this https://git.sailfishos.org/mer-core/nemo-qtmultimedia-plugins/tree/master ?17:47
Mister_Magistermaybe17:49
Mister_Magisterjolla camera does create droideglsink17:49
Mister_Magisteri mean jolla-gallery17:49
Mister_Magisterhow does it do that? no idea17:50
Nico[m]Maybe it doesn't create it directly, but it creates a video sync and gstreamer then creates the right one?17:50
malabranson: hmm, that https://git.sailfishos.org/mer-core/nemo-qtmultimedia-plugins change to use the show-frame signal but this still uses the old frame-ready https://git.sailfishos.org/mer-core/nemo-gst-interfaces/blob/master/gst-libs/gst/interfaces/nemovideotexture.c#L9217:50
Mister_MagisterNico[m]: you are asking wrong man17:50
Mister_Magisteri literally have no idea what i'm doing17:51
Mister_Magistermal: where does it use it17:51
malMister_Magister: what do you mean, in the link I gave17:52
Mister_Magisteri don't see frame-ready in it17:52
malhttps://git.sailfishos.org/mer-core/nemo-gst-interfaces/blob/master/gst-libs/gst/interfaces/nemovideotexture.c#L30717:52
Mister_Magisteri mean in here https://git.sailfishos.org/mer-core/nemo-qtmultimedia-plugins/blob/master/src/videotexturebackend/videotexturebackend.cpp17:53
Mister_Magisterno frame-ready here17:53
Mister_Magisterneither nemo_gst_video_texture_frame_ready17:53
malMister_Magister: I just said that had moved to the new show-frame17:53
Mister_Magistermal: let me explain then17:53
malbut nemo-gst-interfaces didn't17:53
Mister_Magisternemo-gst-interfaces is old project, like i shown before the droideglsink was using it as interface. Now after the commit i linked its no longer used in droideglsink. It's not client library its source library17:54
Mister_Magisternemo-gst-interfaces doesn't use frame-ready, it provides it17:54
Mister_Magisterand its now out of use17:54
Mister_Magisterlike abranson said at the beginning17:55
malso what was the whole talk about frame-ready error17:55
abransonyeah I think this shows you what you have to do: https://git.sailfishos.org/mer-core/nemo-qtmultimedia-plugins/commit/98046c0fdb12dd1fbafa2f69fba2feb338e1aacc17:55
Mister_Magistermal: what do you mean?17:55
malyou showed "error signal 'frame-ready' is invalid for instance '0xb75301d8' of type 'GstDroidEglSink"17:55
Mister_Magisterabranson: i think too17:55
Mister_Magistermal: yep17:55
Mister_Magisterand?17:55
abransondidn't see changes in qtmultimedia, because they're all in the plugins project17:55
Mister_Magisterdroideglsink doesn't have frame-ready anymore17:56
Mister_Magisterabranson: ahhh17:56
malMister_Magister: so wtf is that related to if you say the code is not used17:56
Mister_Magisterbecause it was17:56
Mister_Magisteryear ago17:56
Mister_Magisterwhen the app was working17:56
malhttps://github.com/sailfishos/gst-droid/blob/master/gst/droideglsink/gstdroidvideotexturesink.c#L22017:56
malthat is where it's still called17:57
abransoni think nemo-gst-interfaces is still used, though not that bit. he added nemoeglimagememory then.17:57
Mister_Magistereven if its still called you can't connect to it17:57
abransonbut i think that other texture thing in there is deprecated17:57
Mister_Magisterabranson: does my explanation make sense?17:57
malabranson: still the line I mentioned will be calling frame-ready instead of show-frame afaik17:58
malsomehow17:59
abransonmaybe, but i can't say i really understand this enough. seems to me that droideglsink stopped implementing the NemoGstVideoTexture interface that r0kk3rz code was using.17:59
malhttps://git.sailfishos.org/mer-core/nemo-gst-interfaces/blob/master/gst-libs/gst/interfaces/nemovideotexture.c#L30217:59
Mister_Magisterbut the signal definition is gone mal17:59
Mister_Magisterabranson: thats what i said yes17:59
malMister_Magister: not in nemo-gst-interfaces17:59
Mister_Magisterand now its defining different signals17:59
Mister_Magistermal: but nemo-gst-interfaces isn't used in droideglsink anymore17:59
Mister_Magisterso droideglsink doesn't provide signals from nemo-gst-interfaces anymore18:00
Mister_Magisterlike from link above now its providing its own signals18:00
Mister_Magisterlike show-frame18:00
malMister_Magister: so you are saying this line doesn't exist https://github.com/sailfishos/gst-droid/blob/master/gst/droideglsink/gstdroidvideotexturesink.c#L22018:00
Mister_Magisterit doesn't define signal18:00
Mister_Magistermal you are confing things18:00
abransonin that nemo-qtmultimedia-plugins videotexturebackend class, you can see that NemoGstVideoTexture *sink = NEMO_GST_VIDEO_TEXTURE(m_sink); was removed18:01
malhttps://git.sailfishos.org/mer-core/nemo-gst-interfaces/blob/master/gst-libs/gst/interfaces/nemovideotexture.c#L29818:01
abransonfrom there on is what needs to be done instead18:01
Mister_Magisterabranson: yep i know im just trying to explain tihngs to mal18:01
Mister_Magisterbut its hard :<18:02
malmy point was that the line I showed triggers a signal which is not used anywhere18:02
abransonm_buffer replaces m_sink in there18:02
Mister_Magistermal: oh ye thats true18:03
Mister_Magisteri can confirm that18:03
malMister_Magister: which could cause error signal 'frame-ready' is invalid for instance '0xb75301d8' of type 'GstDroidEglSink18:03
Mister_Magistermal: thats different18:03
Mister_Magisterlet me show you18:03
Mister_Magisterwe are trying to get gstdroid-player to work18:03
Mister_Magisterhttps://github.com/r0kk3rz/gstdroid-player/blob/master/src/renderernemo.cpp#L21518:03
Mister_Magisterand it was connecting to that signal18:03
Mister_Magistersince its gone now from droideglsink, it displays that error18:04
Mister_Magisternot because its sent18:04
malshouldn't you be tapping to show-frame signal now?18:04
Mister_Magisteryes thats what we were figuring out18:04
abransoncasting droidegl sink to GstDroidVideoTexture will cause those errors now, because it isn't one anymore18:05
Mister_Magisterand we figured out that my job is to get these changes my job now is to put this18:05
Mister_Magisterand we figured out that my job is to get these changes https://git.sailfishos.org/mer-core/nemo-qtmultimedia-plugins/commit/98046c0fdb12dd1fbafa2f69fba2feb338e1aacc18:05
Mister_Magisterin the gstdroid-player app18:05
Mister_Magisterand it should be fixed18:05
abransonso if there's a NemoGstVideoTexture *sink = NEMO_GST_VIDEO_TEXTURE(m_sink); in gstdroid-player, then that's where you start18:05
Mister_Magisterabranson: i know, from now on i can do it18:06
abransongreat! good luck...18:06
Mister_Magisterstill there's licensing part but just playing 2 urls is like… come one18:06
Mister_Magistereveryone does that18:06
Mister_Magisterabranson: yeah thanks!18:06
Mister_Magisterits all thank to mal providing the plugins link18:06
malabranson: anyway we still have the non-used signal triggering18:06
abransonmaybe the dash guys will give you a license in reply to your email ;)18:06
Mister_Magistermal: thats true :P18:07
abransonmal: yeah i think that gst-interfaces needs cleanup18:07
Mister_Magisterabranson: maybe thet will say you don't need one and you will reopen my issue to gstreamer >:318:07
abranson:)18:07
Mister_Magisterdang that was long figuring out18:07
Mister_Magisterlots of info18:08
abransonbut finding that code in qtmm-plugins really stresses how the supported layer is qtmm, and anything under that may change18:08
malthat code of gstdroid-player seems very similar to the old code in nemo-qtmultimedia-plugins18:08
Mister_Magistermal: it is old code18:09
Mister_Magisterwait18:09
Mister_Magisterhttps://github.com/foolab/gst-droid/blob/master/tools/simple-camera/renderernemo.cpp here18:09
Mister_Magisterits basically this code, this entire simple-camera18:10
Mister_Magisterpheeeeeeeeeeeeeeew18:10
*** eagle is now known as Guest51419:13

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