Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Readers > Kobo Reader > Kobo Developer's Corner

Notices

Reply
 
Thread Tools Search this Thread
Old 10-15-2023, 02:08 PM   #1
Szybet
Connoisseur
Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.
 
Posts: 88
Karma: 3892
Join Date: Feb 2022
Device: Kobo nia
Question Help decide which e-ink render is more clean

After 3 weeks of looking arround Qt docs I have found another way of rendering qt. I won't go into details because placebo, please just vote on which video e-ink rendering is cleaner. The diffrence is not too much, so please look into it:
Video 1 Video2

I will explain the change after it's decided which one is better
Szybet is offline   Reply With Quote
Old 10-17-2023, 07:46 AM   #2
elinkser
Groupie
elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.
 
Posts: 186
Karma: 146236
Join Date: Oct 2022
Device: Kobo Clara HD
Maybe I am out to lunch, but just viewing on my little phone display, one of them has obviously less flashing and stepped rendering.
My verdict is ... clear win.

Also, notice how you are one of the very few people brave enough to develop in Qt here?
Let's see, there's you and, uh OfficerAction(UMR), Aramir(Obenkyobo), and umm...

Even the Remarkable seems to have less Qt.
I wonder why that is. Maybe toolkits like rmkit are easier?
As a non-dev, I thought rmkit was much easier to build
Again I could be out to lunch!

Last edited by elinkser; 10-18-2023 at 08:35 AM.
elinkser is offline   Reply With Quote
Advert
Old 10-17-2023, 11:22 AM   #3
JSWolf
Resident Curmudgeon
JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.JSWolf ought to be getting tired of karma fortunes by now.
 
JSWolf's Avatar
 
Posts: 74,398
Karma: 129358310
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
Can you please post these videos on Youtube. I am not going to download them I will watch them f they are on Youtube.
JSWolf is offline   Reply With Quote
Old 10-17-2023, 12:10 PM   #4
Szybet
Connoisseur
Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.
 
Posts: 88
Karma: 3892
Join Date: Feb 2022
Device: Kobo nia
So, which one @elinkser? Try watching it on a bigger screen

About Qt, hmm there are a lot of reasons
1. C++ is hard ( but qt it's a lot easier... ) and python sucks with speed for Qt. Using bare FBink is even more harder and plato rust is rust so it's awesome but in my opinion compllicated too. There are not a lot of developers at all. I don't think there would be even an active 15 people? ( apart from koreader project )
2. Not many even have kobo devices, remarkable is a lot more popular - rmkit is easier, but python so slower and badly portable to more devices ( fixed width and height... )
3. When i began using Qt, there were no docs, no tutorials, setup scripts were broken... It took me a week to figure it out. Not many people have such a will. Now there is a working guide so it's easier
4. You forgot nicolas, he wrote a lot for InkBox and helped me a bit

That's still very sad. Qt is heavly and eassly portable, superior to any other e-ink renderer :/. There are also many Qt apps that can be eassly ported. Inkbox user apps are an example for some


@JSWolf is streamable ok? I dont see myself creating a Yt channel just for this
Szybet is offline   Reply With Quote
Old 10-17-2023, 12:57 PM   #5
Quoth
the rook, bossing Never.
Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.Quoth ought to be getting tired of karma fortunes by now.
 
Quoth's Avatar
 
Posts: 11,384
Karma: 87013929
Join Date: Jun 2017
Location: Ireland
Device: All 4 Kinds: epub eink, Kindle, android eink, NxtPaper11
Quote:
Originally Posted by Szybet View Post
S
2. Not many even have kobo devices, remarkable is a lot more popular - rmkit is easier, but python so slower and badly portable to more devices ( fixed width and height... )
What?
The reMarkable is a totally hyped very niche product orientated at PDFs. Two similar models, one of which replaced the other and unexpandable 6Gbyte and network USB access. It's a disaster. I gave mine away. Likely the niche Android ereaders outsell it.

The Kobo is much more widely distributed even in local retail and used much more widely and is a true ereader.

QT has a tough learning curve to start, but it's over 10 years ago for me. It didn't help it being owned by Nokia for a while during one of their worst periods.
I think QT and C++ is a good idea for cross platform development.
Quoth is offline   Reply With Quote
Advert
Old 10-17-2023, 05:11 PM   #6
elinkser
Groupie
elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.
 
Posts: 186
Karma: 146236
Join Date: Oct 2022
Device: Kobo Clara HD
Quote:
Originally Posted by Szybet
So, which one @elinkser?
For me it's Video2, no contest.


Quote:
Originally Posted by Szybet
3. When i began using Qt, there were no docs, no tutorials, setup scripts were broken... It took me a week to figure it out. Not many people have such a will. Now there is a working guide so it's easier
Man, they sure didn't make it easy to start.
I hope they don't go and change the setup again.
elinkser is offline   Reply With Quote
Old 10-18-2023, 03:36 AM   #7
Szybet
Connoisseur
Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.
 
Posts: 88
Karma: 3892
Join Date: Feb 2022
Device: Kobo nia
Thanks

I created my own setup and guides, tutorials:
https://github.com/Szybet/niAudio/tr...n/apps-on-kobo

And those will work for the end of time
Szybet is offline   Reply With Quote
Old 10-18-2023, 08:42 AM   #8
elinkser
Groupie
elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.elinkser has survived committing the World's Second Greatest Blunder.
 
Posts: 186
Karma: 146236
Join Date: Oct 2022
Device: Kobo Clara HD
Quote:
Originally Posted by Szybet View Post
I created my own setup and guides, tutorials:
https://github.com/Szybet/niAudio/tr...n/apps-on-kobo

That is a fantastic resource, Szybet. That should save alot of time for others.
I did try that Aryetis-guide.md maybe a couple of months ago to see if their "[Broken at the moment]" was true. Unfortunately, at that time, it still was. Maybe has been updated since.
elinkser is offline   Reply With Quote
Old 10-18-2023, 01:46 PM   #9
Szybet
Connoisseur
Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.
 
Posts: 88
Karma: 3892
Join Date: Feb 2022
Device: Kobo nia
mine is more minimal for dependiencies, uses a fixed qt version ( which can be worse, using a maintained version is always better ) but i haven't seen any diffrences in qt / problems which are fixed in kde qt. If creating the bare toolchain won't break, everything else will work too.

Also, to avoid compability problems ( there are problems if 2 identical toolchains, compiled on diffrent machines try to work together... ) we just ship the binaries for inkbox apps, which can be used anywhere else too

https://github.com/Kobo-InkBox/compiled-binaries

The description is wrong, it is maintained but i can't change the description - thanks nicolas
Szybet is offline   Reply With Quote
Old 10-19-2023, 07:02 PM   #10
Alastair_S
Zealot
Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.Alastair_S ought to be getting tired of karma fortunes by now.
 
Posts: 114
Karma: 1425448
Join Date: Feb 2014
Device: Kobo Touch
Having downloaded the videos I no longer know which is video 1 or 2! However I see ghosting in VID_20231015_194014, therefore VID_20231015_193820 shows the better rendering.
Alastair_S is offline   Reply With Quote
Old 10-20-2023, 11:14 AM   #11
Szybet
Connoisseur
Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.Szybet can teach chickens to fly.
 
Posts: 88
Karma: 3892
Join Date: Feb 2022
Device: Kobo nia
It's video 2 then, thanks

Well let's share what made it work
Here is the main sanki commit:
https://github.com/Szybet/sanki/comm...61e09a21fa3b12

Description:
I put the whole qmainwindow ( Maybe there are other ways to do that, propably - findng this one took me 3 weeks ) inside of QGraphicsView which has QGraphicsView::MinimalViewportUpdate:
https://doc.qt.io/qt-6/qgraphicsview...pdateMode-enum

TLDR: It uses Qt built in graphics class and its function to minimase screen updates to save resources for the whole app - which is perfect for eink, because we don't want too much refreshes.

Example: If we change text of a widget, the whole widget text area is gonna update, which can cause unnecessarily using a full screen waveform mode, which will flash. This makes it update only the Rectangle of the text inside of it.

Problems ( found till now... ):
- QMainwindow cannot be added to a layout anymore, it refuses: Just use qwidget
- QDialogs aren't using this render, they cause even more flashing by using full screen flashing: Manually steer flashing option to avoid this
- QGestures are a lot harder to make work, took me 4 hours: Nowyou can just copy the code to make it work
- other code related issues described in sanki source code, can be worked with

Conclusions:
- Worth adding as an option to a new app, to make it work from the ground app, if an app uses too much qdialogs, it's code base is massive then it's not worth it ( InkBox )
- By setting flashing platform option and updateEnabled to a widget manually the result is pretty similar to this
- You can use this only for certain parts in the application, it's not needed for a whole app.
- Could enable zooming in and out of the whole application ( accessibility )

Funny:
I found out Qt has a built in in app window system? This could enable making a lightweight eink window manager more eassly ( at least for Qt apps, for others you would need to create artificiall framebuffers to imit the screen )
Here is the video of it:
Another discord download link ;p

Last edited by Szybet; 02-15-2024 at 03:39 PM. Reason: typo
Szybet is offline   Reply With Quote
Reply


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
calibre, version 6.22.0 ERROR: Render process crashed: The Qt WebEngine Render proces georgezh9617 Viewer 2 07-24-2023 10:44 AM
Short Fiction Martinez, Brian: A Good Clean, A Harsh Clean. v1. PDF, 13th Dec 2010 BrianMartinez Other Books 0 12-13-2010 09:27 PM
Short Fiction Martinez, Brian: A Good Clean, A Harsh Clean. v1. 13th Dec 2010 BrianMartinez Kindle Books 0 12-13-2010 09:25 PM
Short Fiction Martinez, Brian: A Good Clean, A Harsh Clean. v1. 13th Dec 2010 BrianMartinez ePub Books 0 12-13-2010 09:23 PM
At Last: *Front-Lit* E-Ink, Flexible E-Ink and ... E-Ink Watches! NatCh News 1 10-27-2007 10:50 AM


All times are GMT -4. The time now is 12:39 PM.


MobileRead.com is a privately owned, operated and funded community.