Comments (41)
Chrome App client driven:
I have already developed three years ago an app built-in chrome for digital signage, but it was not a good solution. In public place there is not enough interaction control with chrome and a javascript chrome app works slowly. Basically it's hard to build a safe kiosk in chrome.
An issue was: what i can do in the chrome crash case ? The most of the time I needed to connect to terminal services to reboot chrome.
I learned that I can not trust in a viewer that controls itself, especially if there are users touch interactions.
from xibo.
Chrome App signage:
https://github.com/cooperhewitt/chromecast-signage
or
chromecast.com by google
or
https://code.google.com/p/risevision/source/checkout
or
http://www.novisign.com/android/android-based-digital-signage/
... anymore ?
from xibo.
Xibo should provide the protocol specifications for create a generic client able to comunicate with xibo server. Xibo server should provide an infrastructure to: design, schedule, manage permissions, templates etc.
Everyone should be able to make their own client with capatibilities to manage regions, levels, positions. I could write a simple client (c++, javascript, .net etc) that get web media regions from the server: the client will inherit the web page interactivity without any other changes. In that case the client app will manage the lifecycle of the application and web component render the interactive contents.
I would like to spend my time to create a real cross-platform application with interaction capatibilities: the 80% of work has been done, because xibo server works well. The really needed thing is to have a client side protocol specifications.
from xibo.
Xibo contains a WSDL that explains the interactions between the player and CMS, and should also provide a Schema for the XLF (the layout XML sent to the player).
I totally agree with you that everyone should be able to make their own client - that would be great. However 99% of the user base have no interest in making their own client, all they want to do is download and use a solution that works and is free (cheap).
That is the ethos Xibo was born with and why we have developed the .NET and Pyclient players - unfortunately the Pyclient player didn't work out and the .NET player is built on ageing technology (I started coding it in 2006!).
What we want is a new client that can run cross platform and has an understanding of XMDS and XLF that rivals the current offerings.
I take your points about building signage that runs within a web page - Xibo started out as a .HTA application in 2004, which we of course abandoned due to all the problems you mentioned. However, Chrome Packaged Apps is a long way from a simple webpage and I have yet to see a better proposition for a client that could integrate well with the way Xibo functions (native content augmented with web content).
We have looked at:
- Air
- Python-QT
- C++
- WPF
I am happy to work with you on the XMDS specification (the WSDL is a great starting point) and the XLF schema. We will be looking to enhance both XMDS and the XLF schema to support things like monitor control, interactivity, etc, so we will need a detailed map of the current situation before we start anyway.
from xibo.
My previous version of DS client was built on Air/chrome javascript app software. Beginning June 14 2011, Adobe AIR is no longer supported for desktop Linux distributions. I will upload on github that client.
I agree to doc. the XMDS / XLF as first step. I can start to do that. Please let me know where sync the doc on git.
from xibo.
I suggest forking the wiki (very empty at the moment) https://github.com/xibosignage/xibo.wiki.git, adding the pages and then letting me know here where they are - I can then pull them in to the main documentation, making any necessary corrections as I go.
Sounds OK?
from xibo.
yes,ok !
from xibo.
In your blog post you wrote "Unfortunately the Python Player development has been fraught with problems and limitations"
Is there no chance these limitations and problems could be fixed?
from xibo.
Well, there is always a chance :)
The big problem is that Xibo uses a lot of web content, because people want to show web content. Libavg is very good at displaying video and image content, but before Xibo did not support displaying web content at all.
We helped develop the libbrowsernode addition to libavg, with the help of the folks over at libavg HQ, but it was never that reliable and always a pain to build (hence the requirement for 10.04 until recently).
Unfortunately we just don't have the expertise required to keep libbrowsernode up to date or actually to keep 2 separate clients up to date (libbrowsernode never worked on windows).
In short it would have to:
- Become more reliable (libbrowsernode)
- Become more portable within Linux
- Become usable on Windows
If those are things that can be achieved, we'd be more than happy to keep it!
from xibo.
i agree that libavg is not the best way for render web content.
from xibo.
It is also interesting to say that the current windows player suffers with some of the same problems, although the .NET WebBrowser control is more reliable (but not cross platform). 1.7 started the integration of the CEF browser control, which also has its own problems.
from xibo.
the windows player on linux should be use with mono, for the moment.
from xibo.
Unfortunately it is not that simple, the windows player uses activex for flash, video and the webbrowser control for webcontent (which marshals IE underneath).
None of those things work on Mono.
from xibo.
What about writing client based in openFrameworks ? Free, open source, C++, multimedia oriented, cross platform...
from xibo.
I don't see support for web content (perhaps I am missing something!)
At first glance it looks a lot like libavg in terms of focus and feature set.
from xibo.
there is a lot of addons which are not included in the core framework and i always find them to be of very good quality. Maybe you can find something useful there. See official addons page : http://www.ofxaddons.com/
from xibo.
Maybe move with everything to HTML5 and use any browser in kiosk mode? On any OS?
from xibo.
We are leaning heavily towards that, except we'd want to wrap it in something a little more managed (like chrome packaged app, or firefox extension, simple application hosting a browser control, etc - or all of them).
That being said openframeworks.cc does look interesting.
from xibo.
using openFrameworks, i would recommend going with ofxUI addon to design user interface :
http://www.syedrezaali.com/ofxui/
from xibo.
... there is a good kiosk extension for Opera browser (it's most used for digital signage) , but the problem of clients built on browser is: what can we do if something changed in the browser and the plugin doesn't works anymore ?
from xibo.
I'd say that the layout itself should be able to be shown directly without any extension. The extension should provide just the extra things like remote screenshot.
And since the displays use dedicated PCs, one should perhaps delay updating the browser to the latest version until xibo supports it.
from xibo.
Qt (http://qt-project.org/) seems also a very good alternative with its cross platform ability. Using Qt/QML to build the application for desktop and mobile. There are great multimedia features + a good integration of Web see QtWebEngine : http://qt-project.org/wiki/QtWebEngine#5ef787a743aaa025fb1edb5f7086eab1
The problem may be the license though
from xibo.
has any one tried to port the windows version over via mono or god forbid run the installer on linux via wine?
from xibo.
@freibuis one of the issues is that the current implementation of the windows player is at its end of life - its build on Windows Forms which means we are limited with the visual things we can do. It also uses ActiveX to hook into Windows Media Player, etc which won't work on Linux.
@martialgallorini We've explored Qt before and hit several brick walls - we've not had massive time on it, so they may be "overcome-able".
@nagyrobi - this is in line with our current thinking, use HTML5 for rendering as a lot of modules are already rendered in this way, but wrap the whole thing in a more controllable technology - where this will fall down is video.
from xibo.
For me the PowerPoint feature is very important. I hope a new cross-plattform player could still come with this feature.
from xibo.
I think it would be highly unlikely to be honest - supporting PowerPoint basically means being tied to Internet Explorer and to a technology that can spawn ActiveX to embed internet explorer in another application - I think that would mean sticking with what we have, which isn't an option.
I had though that an Office application that plugged into PowerPoint and automatically uploaded videos to Xibo may be a workaround - but I have no idea if that is possible and even if it would be sufficient for peoples needs.
from xibo.
I do not think that the support for Powerpoint will become a problem. There are various solutions regarding the PowerPoint viewer implemementation:
- to use openoffice API : https://wiki.openoffice.org/wiki/API
- to use a chrome extension like: https://chrome.google.com/webstore/detail/docs-pdfpowerpoint-viewer/nnbmlagghjjcbdhgmkedmbmedengocbn?hl=it
- to use a chrome extension like: https://chrome.google.com/webstore/detail/office-editing-for-docs-s/gbkeegbaiigmenfmjfclcdgdpimamgkj
- to use a javascript extension: http://viewerjs.org/examples/
- simply embed in to html5 web page: http://stackoverflow.com/questions/39855/embed-a-powerpoint-presentation-into-html
... search for more solutions googling...
from xibo.
I would prefer a standalone application, but if you prefer using a webapp, between openFrameworks (which i really love !) and HTML/JS there is another great tool used a lot by creative coders called Processing (https://processing.org/) . It is open source, and of course cross platform, based on Javascript and supports a lot a multimedia formats, PDF, XML, OpenGL, python and a great bunch of additional libraries. It is also possible to embed the app into web page using ProcessingJS (http://p5js.org/)
But because it is an interpreted language which needs a runtime environment, it might use more ressources than an openFrameworks app though. Might be an issue for full HD video player but never tested.
from xibo.
There was an earlier xibo java client project.. Why not continue from there using JavaFX?
from xibo.
I think its time to drop support for power point. Its nice to have, but not worth holding back the client.
I believe the client should be able to work on any platform with out any baggage.
maybe a tool that can read powerpoint and create a html5 slide show or output as mp4/webm. Lets face it. powerpoints are not that interactive.
from xibo.
I'm currently struggling to display some presentation created on http://prezi.com/ and the only way to do it in a fashionable manner and offline is to make a Full HD fullscreen screencap at 25-30fps and save it as an MP4 video file. That should be the way to go with powerpoints too imho...
from xibo.
I totally agree - we try to encourage people to export powerpoint as MP4 where-ever possible. An office plugin that made that process simple might just be enough to get people to switch over.
from xibo.
JavaFX might be a contender...
from xibo.
Hi,
Is there a way we get Xibo Android source code?
from xibo.
No, sorry. Xibo for Android is a proprietary software and protected by licence and copyright law. Its the main thing keeping this project alive in terms of funding and without it the project would cease.
from xibo.
What could be the problematic issues about creating a Xibo Linux player fully installable as a deb package for Ubuntu or any Debian like OS ? Working on a chrome kernel about the web contents and VLC for other media contents ?
from xibo.
😄 you make it sound simple
The saying "the devil is in the detail" is most appropriate here - there are lots of options and lots of ways this can be done... we've tried 4 different ones now and they all have their pros and cons.
Given we have no expertise with C++, we are leaning towards either JavaFX or Chrome Apps with a slight preference for JavaFX.
from xibo.
Another solution (not a replacement for a "real" cross plattform desktop client!) i am currently testing:
- Use chromium with --kiosk --remote-debugging-port --noerrdialogs --incognito
- Remote control chromium with crconsole (https://github.com/sidorares/crconsole) and then display fetched/cached html/js content
Scripting chromium - didn't test it and i am not sure if it is possible to compile on all plattforms: http://breach.cc/ (and http://tampermonkey.net/ or http://www.greasespot.net/ for userscripts)
This is how i keep software running on linux (Answer one - http://stackoverflow.com/questions/696839/how-do-i-write-a-bash-script-to-restart-a-process-if-it-dies):
until myserver; do
echo "Server 'myserver' crashed with exit code $?. Respawning.." >&2
sleep 1
done
Interaction with remote controled browser or disabling some input on linux would be easy (event device/hid/etc), for example https://github.com/billroy/bitlash-commander is implemented in nodejs
from xibo.
https://crosswalk-project.org/
from xibo.
Hi Dan et al:
I'm late to this thread and also #27 (interactivity), both of which are of serious interest to me. i indend to post my thoughts on the matter on the community forum. Either as a new post or in reply to others of like mindedness. But I wanted to catch-up with the github posts before going there.
I have 0 interest in windows for anything and i realize I am likely in the minority, but would like to contribute to that end. Having built Lib_Browsernode's libberkelium from source and understanding (mostly) the reasons for transiting to CEF is a large undertaking and good reason to pause to design a better client.
I saw your comment on the difficulty of maintaining two client players and would like to forsee a time when
LAMP dev grows strong in the community at large because windows does not hold 1/2 a candle to linux
in any regard (solely the opinion of a LAMP programmer and sysaadmin).
I've been side-linded for a bit, and am in process of up'ing to 1.6.0 server, and get up2speed with CEF
and have high hopes for its future. I look forward to seeing more on the 'community' forums!
Thanks for everything and my finding a place/people of like-mindedness (pubblisoft, Speedy-Gonzalez, martialgallorini, et al)!
from xibo.
Great - we look forward to hearing from you (all of you in fact!)
Please don't take my short replies in the wrong way - I just have a lot to read though 😄 it will be great to discuss with you on the forums.
With that in mind I have summarised here: https://community.xibo.org.uk/t/replacement-player-for-the-discontinued-ubuntu-python-client/77
from xibo.
Related Issues (20)
- Editor preview: Stop button doesn't refresh viewer HOT 1
- Canvas layout stuck on screen
- Schedule: nothing shown in the grid view
- Playlist Timeline: Owner filter showing empty in the dropdown list HOT 1
- Date Format input helper: Scroll doesn't work HOT 1
- Layout Editor: Elements with names HOT 1
- Editor: Make playlist fullscreen doesn't resize thumbnail HOT 1
- Global Elements: New configuration shouldn't be enabled HOT 1
- Widget: v4 calendar missing an option from v3 to "show only current" HOT 1
- Widget: calendar widget should have an option to hide past events
- Widget: static widgets which return no data are incorrectly marked as faults and invalidate the layout HOT 1
- Analogue Clock: Offset is not applied to the clock HOT 1
- Elements: Duplicated element error message disappears HOT 1
- Element slots: Save broken with many elements in a single widget HOT 1
- Shell Command: Stored command dropdown shows empty and commandCode an integer HOT 1
- Widget: Analogue clock import from v3 to v4, or upgrade, dark theme lost HOT 1
- Layout Editor: positioning of background image behind region is wrong HOT 3
- Widget: digital clock font different between various player types
- Widget: not possible to make embedded widget transparent or preloaded
- Custom templates: Javascript is escaping some characters HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from xibo.