Proof-of-Concept Port of XBMC to SDL 2.0 and Wayland
hypnosec wrote in with news that XBMC has experimental Wayland support now. Even better, it's implemented by porting XBMC to SDL 2.0, something that will become important as SDL 1.2 development officially ended and SDL 2.0 should be out in the wild in the not-too-distant-future. The code is only a few days old and has a few serious limitations (input is broken and a bug in weston with threaded clients causes rendering hangs) , but it seems like a pretty good start. The port should also bring SDL 2.0 support to the X11 backend.
What is XBMC?
What is SDL?
What is Wayland?
FFS TFS needs some TLC.
Is that good?
We just had a story Monday that Wayland is deader than a doornail. Kinda makes this a waste of time and effort.
http://forum.xbmc.org/showthread.php?tid=146711
NES, SNES, MAME, and others. I'll admit Wayland and SDL are interesting but my hardware already runs XBMC fine using VDPAU and I'm more excited about getting the ability to run games vs a different display technology...
Build it, Drive it, Improve it! Hybridz.org
At first it made sense not using X.org since it's such a terrible mess. But the XBMC developers were being silly trying to keep the dependencies down by doing it all in house. Either SDL or Wayland or both should have been used much earlier...
Hopefully now we'll get the sluggishness out of the GUI's rendering on 1080p in small embedded machines.
Somebody ported some code and it's buggy and it's just another day on da net!
This is a "proof of concept" in the same way that turning over a shovelful of dirt is a proof of concept for digging a basement. The "concept" isn't at issue; it's all the gruntwork and polish that would be required to make it good enough to displace what's already out there and working. With software, the first few function points appear to solve the crux of the problem, but unfortunately the vast majority of function points still remain and each is just as time-consuming, yet less rewarding, than the first few.
It is always a good idea to use a platform independant library to make porting between different platforms easier. Now that it is working on Wayland, one hopes that Ubuntus plans to fracture the Linux ecosystem can be averted. One thing that people need to remember about the situation situation with Canonicals arrogant plan to attempt a coup d'etat of the Linux graphics stack, is that unlike the window manager where choice is a good thing, having a lot of competing window systems is NOT a good thing. Lets imagine that Canonical announced that it would start using its own kernel, and that this Kernel would not support POSIX, but its own proprietary API. Now Linux applications would not be able to easily run on Ubuntu, and applications for Ubuntu would not be able to easily run on Linux. Having a bunch of incompatible window systems is as bad as that. The Window System is basically the kernel for GUI applications. Basically Canonicals Mir announcement is pretty much does the same, applications must talk to the Window system, so the Window system is as important as the kernel for application cross compatibility between OSs. Canonical is fracturing the Linux ecosystem and trying to greedily and arrogantly grab control of the Linux graphics stack and basically one of the most critical parts of the Linux ecosystem. Canonical's behaviour is outrageous and the Linux community should not tolerate this.
I think now is the time for other Linux Distros to commit to Wayland, leaving Canonical isolated.
We also need to start a petition to get Canonical to commit to wayland and stop trying to develop its own window system.
I also think that Wayland should be made a part of the Linux Standards Base. Perhaps the rights to use of the Linux trademark for companies such as Canonical who blatantly ignore Linux standards should be revoked.
Have you tried setting the dirty regions option? For whatever reason the default re-renders the entire screen 60 times per second... but you can flip it to only updating when regions are damaged. Once I flipped that on I was able to use xbmc alright on my ancient athlon.
HAL 7000, fewer features than the HAL 9000, but just as homicidal!
At first it made sense not using X.org since it's such a terrible mess.
What people usually mean when they say xorg is a mess (without any qualification or substantiation) is that they're bored with it. In reality, xorg is pretty damn powerful: it has a hell of a lot to do, and on the whole it does it remarkably well.
In reality, xorg is pretty damn powerful: it has a hell of a lot to do, and on the whole it does it remarkably well.
FFS it works on my phone. I don't see what problem people have with poor old X.
Watch this Heartland Institute video
SDL will soon be dropped from XBMC. I'll quote Cory here to explain things:
"This is an interesting POC, however it’s not really in fitting with how we had planned to handle wayland. I recently rewrote our egl handling so that we can dynamically support various windowsystems on the fly, so that we can have a single binary capable of running X11/wayland/framebuffer. It was explicitly written with wayland in mind. See https://github.com/xbmc/xbmc/commit/2b49c791eb236ae4fe2be90ac7e7b8ccf0aad72f for the pull, and https://github.com/xbmc/xbmc/blob/master/xbmc/windowing/egl/EGLNativeType.h for the interface.
It’s very pluggable, and I suspect it’d be far less work than what you’ve done here. I was hoping to get to it ages ago, it just hasn’t been a priority yet.
We’ll be dropping SDL soon, since we prefer our own abstractions. See here: https://github.com/xbmc/xbmc/pull/1175"
Wayland is of course a way to dump images on a dumb framebuffer as distinct from the extra abstraction within X to place the images in a variety of places, resolutions, color depths etc, so your "educate yourself" line is somewhat comical in this context. Please at least bother to read entire sentences before accusing people of ignorance.
Is Daniel Stone enough of "qualification" for you?
http://mirror.linux.org.au/linux.conf.au/2013/ogv/The_real_story_behind_Wayland_and_X.ogv
Now do Mir.