More UI features please

What would you like to see in MythTV and why? Find others who might want to help implement your ideas!
Forum rules
Please be reasonable and positive with your feature requests, remember that all contributions to MythTV are by volunteers in their spare time. MythTV won't support piracy in any form, including torrents and use of soft cams, so to avoid embarrassment please do not ask.

* One suggestion per thread please. Do not post new suggestions in replies. *
Post Reply
User avatar
justinh
Moderator
Posts: 9
Joined: Thu Feb 06, 2014 8:53 pm
Great Britain

More UI features please

Post by justinh »

Something I've looked at trying to implement many a time but it frankly made my head hurt, is making lists (buttonlists, grids & whatever) scroll smoothly.

The ability to have transitions on more elements than just popups or whole screens would be neat too IMHO. Yes neat but again it's another thing that made my head hurt.

Effects such as rotation, blur, mono (removing saturation) etc. I had a good go at putting a rotate effect into the GL painter & didn't do too badly by my own reckoning - even as far as making an analogue clock widget. Then the GL painter was refactored & I got lost in the sea. I had a crack at blurring but my shader skills just weren't getting up to speed.

Here's my effort at getting an analogue clock going: http://homepage.ntlworld.com/justin.hor ... otate.diff - last seen working with er... revision 21355 (yes, way before MythTV stopped using svn).
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: More UI features please

Post by paulh »

One possibility I've been thinking about since we depend on Qt why not use Qt's Qml. It offers all the things you talk about and a lot more but without having to mess with OpenGL directly. It's cross platform so a frontend written in qml should run on linux, windows, android, iOS etc. It really needs Qt 5.1 or greater which may be a problem for some but we could keep mythfrontend-legacy for them :) Ithink a qml FE would use the services api either directly by registering the classes with qml or over the network like the web frontend does. Which ever method is used it's likely a qml FE would speed up the development of the service api which in turn helps the web FE and other third party FE's.

Exactly how you present the power of qml to themers I don't know. It would probably be best to keep the xml theme files with extensions for animations, transitions etc and somehow generate the qml from that.

At the moment I've got more questions than answers but it's something to think about and discuss.

This demo running on a Pi is a good introduction to qml.

This example shows you how to do your analogue clock :)

Someone was working on a full qml frontend but has since got bored and abandoned it. It is very rough around the edges but gives an idea of what can be done. The code is here but be warned it is pre alpha so is still very buggy.
User avatar
justinh
Moderator
Posts: 9
Joined: Thu Feb 06, 2014 8:53 pm
Great Britain

Re: More UI features please

Post by justinh »

Heh back when I was playing with this I was already bitterly aware of what Qt could do natively - Qt5+ would even do away with the need for separate painters, but for the fact the VDPAU painter was needed at the time (it likely still is needed).
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: More UI features please

Post by paulh »

There's one of the QMultimedia qml demos that demonstrates the video playback features of qml and I had no problem at all having two side by side recordings playing. Qt have made QMultimedia extendible so you can add your own backend and there are already example backends that use ffmpeg for decoding. ffmpeg now has support for native hw decoders so hopefully with the right backend added to QMultimedia VDPAU should just work.

It all seems to easy I must be missing something :)
User avatar
justinh
Moderator
Posts: 9
Joined: Thu Feb 06, 2014 8:53 pm
Great Britain

Re: More UI features please

Post by justinh »

Hang a sec.. aren't all the 'new' animations etc tied together with existing Qt functions? I seem to remember they are (I could likely be wrong though)...

This being the case it might not be too much effort to bring some new features to themes without having to deal with shaders & junk I don't understand.

And thinking about it.. the one block I ran into where it was originally suggested that effects in GL would have to be replicated in the Qt painter.. the animations for popups etc are only supported by the GL painter. So, that could be temptation enough to pick up the coding stick again :-)
User avatar
justinh
Moderator
Posts: 9
Joined: Thu Feb 06, 2014 8:53 pm
Great Britain

Re: More UI features please

Post by justinh »

Having played about a bit with existing themes I've found that buttonlists & stuff *can* be animated (yay!) but I can't seem to find a way to override the original opengl screen to screen transition effect - this is overriding any nice 'appear' animation I'm trying.

So - how hard might it be to override the screen transitions?
User avatar
natanojl
Developer
Posts: 32
Joined: Fri Feb 07, 2014 7:08 pm
Contact:
Sweden

Re: More UI features please

Post by natanojl »

Have you checked the documentation at http://www.mythtv.org/wiki/MythUI_Theme ... Animations? The first code example should give you an idea.

There is no support to override the default transition for all screens at the moment; you will have to specify the transition for each window for now.
Post Reply