Xibo player (work) on raspberrypi


357 posts   Page 1 of 15   1, 2, 3, 4, 5 ... 15
by icfr » Mon Dec 17, 2012 12:45 pm
after 3 days of test , xibo player 1.4.1 start on the raspberry

xibo player 1.5 work too

it s not 100% working ...

i follow the script for automated install on ubuntu with some change

work:
start player with fullscreen
dysplay image
display video with sound (sound not good all the time ...)

dont work
display text (arial font missing but i dont think it's this because when i test with libavg text is ok with the same warning message )
maximum resolution is 1180x620

i will give a script this week for a automated installation :)

there is the installed packet

libboost-python1.50.0 libboost-thread1.50.0 python-soappy libavcodec53 libavformat53 bzr python-feedparser python-serial libavutil51 libgtk2.0-0 libdc1394-22 libswscale2 libsdl1.2debian libvdpau1 python-imaging

after libavg

http://launchpad.net/xibo/1.4/1.4.0/+do ... m11.tar.gz

i change folder python2.6 to 2.7

i follow this installation
https://www.libavg.de/site/projects/libavg/wiki/RPI

get python client from bzr and comment os.exit on line 4174 in xiboclient.py

after configure xibo client and let's go ;)
Posts: 9
Joined: Mon Dec 17, 2012 9:35 am
by redhawk » Mon Dec 17, 2012 12:51 pm
Does this have openmax drivers??

Richard S.
User avatar
Posts: 3329
Joined: Sun Mar 04, 2012 2:13 pm
Location: ::1
by icfr » Mon Dec 17, 2012 1:27 pm
good question :)

i dont know i put a debian image and i dont change anything before installing xibo player just a apt-get update and apt-get upgrade
Posts: 9
Joined: Mon Dec 17, 2012 9:35 am
by dmknob » Mon Dec 17, 2012 11:13 pm
Did you use Raspbian?

I'm with "raspberrypi 3.2.27+ #307 PREEMPT".
And not get this working..

I install the packages, wget the TAR and unpacked as instructed ( tar -C /usr/local -xjf libavg*)
Following the installer script i create the folder, do "ldconfig", get pyclient with "bzr branch lp:xibo/1.4 pyclient" to folder "/opt/xibo"

So i comment the "os.exit" on line 4174 in xiboclient.py and try to run the client with:
python2.7 /opt/xibo/pyclient/client/python/XiboClient.py

And i get this error:
"File "/opt/xibo/pyclient/client/python/XiboClient.py", line 24, in <module>
from libavg import avg, anim
ImportError: cannot import name anim"
Posts: 13
Joined: Tue Jul 31, 2012 3:19 am
by geti12 » Tue Dec 18, 2012 7:58 am
I'm running in a similar problem, could someone help to fix the error?
Wondering about the second import error in the folder I have avg.so
lrwxrwxrwx 1 root staff 12 Dec 18 08:34 avg.so -> avg.so.0.0.0
lrwxrwxrwx 1 root staff 12 Dec 18 08:34 avg.so.0 -> avg.so.0.0.0
-rwxr-xr-x 1 root staff 35813921 Dec 18 08:34 avg.so.0.0.0



The errors if I try to use run.sh
Traceback (most recent call last):
File "XiboClient.py", line 24, in <module>
from libavg import avg, anim
File "/usr/local/lib/python2.7/dist-packages/libavg/__init__.py", line 10, in <module>
from avg import *
ImportError: /usr/local/lib/python2.7/dist-packages/libavg/avg.so: cannot open shared object file: No such file or directory
Posts: 6
Joined: Fri Dec 07, 2012 8:27 pm
by geti12 » Tue Dec 18, 2012 8:09 am
I found the solution and works now
Posts: 6
Joined: Fri Dec 07, 2012 8:27 pm
by icfr » Tue Dec 18, 2012 8:19 am
yes i use the debian image in download section of the site


it's a libavg probleme did you have untar the libavg from xibo launchpad first ? and then install the precompiled package
Posts: 9
Joined: Mon Dec 17, 2012 9:35 am
by geti12 » Tue Dec 18, 2012 10:39 am
The client is working with the raspberry but the simple content created on the xibo server under Windows 7 don't works properly on the raspberry. I can only see the background color but the text is missing.
Posts: 6
Joined: Fri Dec 07, 2012 8:27 pm
by icfr » Tue Dec 18, 2012 10:45 am
i say it in the first post

i think it's the browsernode plugin i try to cross compiling today and try with it

so for the moment player can only show video and images
Posts: 9
Joined: Mon Dec 17, 2012 9:35 am
by andnitro » Mon Dec 24, 2012 11:45 pm
Hello again,

Ulrich, Thank you for responding.

Install as it says on the page: https://www.libavg.de/site/projects/libavg/wiki/RPI

Install the client run Xibo but get the following error:

pi @ raspberrypi / opt / Xibo / pyclient / client / python $. / run.sh
ERROR: ld.so: object '/ usr / lib / libstdc + +. So.6' from LD_PRELOAD can not be preloaded: ignored.
ERROR: ld.so: object '/ usr / lib / libstdc + +. So.6' from LD_PRELOAD can not be preloaded: ignored.
Traceback (most recent call last):
File "XiboClient.py", line 24, in <module>
libavg import from avg, anim
ImportError: can not import name anim
pi @ raspberrypi / opt / Xibo / pyclient / client / python $

comment out the line in the file Following run.sh # export LD_PRELOAD = / usr / lib / libstdc + +. so.6 and rerun the run.sh get the following error:

pi @ raspberrypi / opt / Xibo / pyclient / client / python $. / run.sh
Traceback (most recent call last):
File "XiboClient.py", line 24, in <module>
libavg import from avg, anim
ImportError: can not import name anim
pi @ raspberrypi / opt / Xibo / pyclient / client / python $

comment out the line in the file Following XiboClient.py

# Self.player.loadPlugin ("libbrowsernode")

but run.sh rerun the following error:

pi @ raspberrypi / opt / Xibo / pyclient / client / python $. / run.sh
File "XiboClient.py", line 4169
RuntimeError except:
^
IndentationError: expected an indented block
pi @ raspberrypi / opt / Xibo / pyclient / client / python $

Is anyone having the libraries libbrowsernode Berkelium and compiled for ARM or other support to run in the pi Xibo like how it goes on page http://www.cnx-software.com.

Greetings from Chile.
Posts: 2
Joined: Mon Dec 24, 2012 11:43 pm
by icfr » Tue Dec 25, 2012 1:38 am
i look for libbrowsernode Berkelium for arm but i' ve got lot of error dfor compiling so when i get this working i give you all my work
Posts: 9
Joined: Mon Dec 17, 2012 9:35 am
by solutionssquad » Tue Dec 25, 2012 11:08 pm
It would be AMAZING to see this work along with a step by step how-to!!!!!
Posts: 15
Joined: Wed Jun 06, 2012 2:56 pm
by hellbender » Wed Dec 26, 2012 9:36 pm
I have been trying to get the Xibo Client working on the Raspberry Pi. But i run into a problem with LibAVG. I installed the RPi version as stated on the website of libavg, but when i start the Xibo client it starts the new window but in the shell window it says : AVGAssertError: Assert failed in EGLcontext.cpp : 146.

Looking at EGLContext.cpp the code failes to create a surface which is needed to paint on.
I reflashed my raspbian once to make sure i didn't screw up while trying to install Xibo and libavg, but the same result returns.

Does anybody have an idea about how to fix this problem??

With regards

Ok, the above problem seems to accure because i put the resolution on 1280x720, i changed back to 800x600 and it starts a bit more. But it opens the new screen removes the borders and start using 100% CPU for about 45 seconds. After that it once again jump out with an assertion error. This time it says : Assertion failed in GLContext.cpp : 471

Time to figure out what that problem is... or if somebody has an answer :-)
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem
by hellbender » Wed Dec 26, 2012 11:28 pm
Alright, i fixed the above error also. I gave the GPU 64Mb of memory and now these error stopped. Problem is that now it opens with a blank black screen. No splash screen, no template which i assigned in Xibo Server.

There seems to be a problem with libavg or something.. I put my resolution to 800x600 windowed. No clues found in the log or somewhere else. Is there a way to test libavg??
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem
by andnitro » Thu Dec 27, 2012 1:36 am
hellbender,

You can create an img of your SD with the "USB Image Tool" and upload it to some free server download. We could all Xibo probrar and collaborate with the Pi.

regards
Posts: 2
Joined: Mon Dec 24, 2012 11:43 pm
by icfr » Thu Dec 27, 2012 7:59 am
for testing libavg without xibo go to the sample folder of libavg and try some scrypt
Posts: 9
Joined: Mon Dec 17, 2012 9:35 am
by hellbender » Thu Dec 27, 2012 11:54 pm
Alright i got that working also, the problem with the black screen seemed to be coming from the use of x11vnc. When rebooting it clean and loading xibo it worked. I even got it working in 1280x720 when i select the option fullscreen. The reason it isn't working on this resolution when windowed is probably because it isn't able to create a surface with the correct dimensions due to the fact that the window itself is substracted from the actual resolution ( my screen is 1280x720 ).

Well not all is won yet, because after a few minutes it drops out of fullscreen once again with the Assertion failed in GLContext.cpp 471. I will see if i can give the GPU more memory once more to see if this problem ends, but to be honest I only showed two images, so where is all that memory going to :-S..

I also noticed that jumping from one image to the next at the end of the timeline is not really smooth. It shows a small gap ( approx half a second ) of blackscreen in between.

well back to the testing, lets hope it gets stable. Maybe somebody from libavg can tell us how to see memory usage or a better way to log what is going on inside libavg

cheers
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem
by dmknob » Thu Jan 17, 2013 2:03 pm
So, any progress here?

I would increase the video memory and do some tests again. I'm always using the max possible memory for system, that's can cause some troubles..
Posts: 13
Joined: Tue Jul 31, 2012 3:19 am
by hellbender » Thu Jan 24, 2013 12:36 am
Hi, certainly some progress. I have made the choice to take the time and compile all needed software natively on my raspberry with raspbian. I started of with simply installing the Xibo client and the libavg which are supplied from the websites of their owners. I edited out the loading of libbrowsernode and changed a few lines of code from the XiboClient.py so it is compatible with the 1.7.x branch of libavg. Since libavg now has a raspberry enabled version this all started to work. It is not really fast when starting and downloading but it works with images and movies ( buy the codecs, really makes the movies fly ). I then set out to get libbrowsernode working on the raspberry. Downloading the berkelium package and using and altered version of the CNX-Software method to compile for hardfp made the compile and link process work. ( it took 2 full days to compile ). I altered the dependencies file from chromium 11 to use an arm enabled version of libjpeg-turbo. so this code could also be build. After that I tested chrome and it worked in X window. I then build berkelium and now have the binaries needed to install berkelium.

Next I set out to build libbrowser node as by the specifications on the Xibo site. Instead of using the trunk version of libavg I used the egl2 branch of libavg which is specially made for use on the raspberry pi. After Uli from libavg fixed a bug for me the whole thing is currently building and when this is ready I can test and see if libbrowsernode has been build correctly.

If that is true I will combine all the projects and see if Xibo finally works with text as well. I hope it does, because I am already working on this project for over 2 weeks now.

With regards,
Hellbender
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem
by hellbender » Tue Jan 29, 2013 8:32 am
Alright, time for an update.

LibAVG has been patched and is currently working on the RPi. Libbrowsernode also compiled and is ready. The only problem during testing was that Berkelium segfaulted when loading a page. I am currently looking into the possibility that using libjpeg-turbo could be the source of the fault.

When Berkelium runs stable all packages and dependencies are ready to come together and start working.

I will keep you posted.

Hellbender
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem
by uzadow » Thu Jan 31, 2013 11:16 am
Hi,

Hellbender, good to see progress :-).

Wrt Browsernode: I had a short look at the code on launchpad, and I can see the cause for the scrolling speed issues that people have mentioned - should be easy to fix. Hellbender - where can I get browsernode code that compiles with current libavg?

Regards,

Uli
Posts: 3
Joined: Tue Nov 27, 2012 10:48 pm
by icfr » Tue Feb 05, 2013 7:22 pm
the segfault problem wil come from v8 source in chrome

http://blog.tomg.co/post/21322413373/how-to-install-node-js-on-your-raspberry-pi
Posts: 9
Joined: Mon Dec 17, 2012 9:35 am
by hellbender » Sat Feb 09, 2013 6:14 pm
Hi All,
another update here. The segfault actually comes from the libjpeg_turbo. I have asked the berkelium team to look in to this. In the meanwhile I have been busy with compiling a debug version of chromium to get more information about this error. But since it is in libjpeg_turbo and Xibo doesn't use berkelium to show images ( at least not as far as I use it, since I use it to render text ) it should not be a show stopper. When compiling the debug version of berkelium ( the debug version of chromium built and linked in about 7 days ) is ready my raspberry is once again free to try and install the current version of berkelium, libavg and libbrowsernode onto the image where Xibo is living. ( I probably should just get another RPi to speed things up ). When all this work is placed on the Xibo image it should give us a starting Xibo. Reading the post above Uli has noticed a possible inproofment in libbrowsernode to speed up the scrolling issue some people have been writing about. I hope this collaboration will have a nice result.

It would also be nice to ask the people from Xibo to update the code to exchange the deprecated functions from LibAVG with the newer once ( new event handling system in libAVG ) and ( a personal favorite ) include the transitions code to the server because if i read the blog right the code has already been implemented in the client and the XML.

I will keep you posted
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem
by hellbender » Sun Feb 17, 2013 7:51 am
Alright, last night I put all the code together and tried starting Xibo. It didn't run :-(... But after some tweeking about ( where does the libavg go, which libraries does it require and can it find them and so on ) Xibo finally started up and rendered my first image ( well no joy there because it did that anyhow ) but after about 10 seconds it loaded my tekst from berkelium. First it was way to large ( i selected the "fit to region" button but that was not a good choice ). After that it started my movie, an MP4 which can be played fast and fullscreen by omxplayer, but didn't really butch on the RPi because libAVG not yet supports HW acceleration. I noticed in their blog that they are currently working on that so there is good hope for the future.

Still a few things I noticed that need to be solved. My Xibo doesn't enlarge the images and movie to fullscreen ( probably some setting I think, but I need to look into that ) and the transistion from one frame to the other is very slow.It takes somewhere between 2 to 5 seconds to get to the next frame, while in the meantime a blackscreen is shown.

Still some minor bug that need to be solved are

- the fact that Xibo doesn't have a scheduler object when it starts the XiboDisplayManager. This is probably some race condition between the threads which should be tackled with the use of semaphores. ( need to look into that but it's my first python code I am looking at ). Xibo starts normally after this message
- I have patched revision 5 of libbrowsernode, because it stated that browsernodes are only valid within AVG nodes but Xibo puts them inside DIV nodes. Request to update code has been placed with the makers of libbrowsernode.
- It for some reason states a segfault when I kill the Xibo process, I figure this is from berkelium, but I can't find the error when I start berkelium by hand. Running the Zygote mode by hand, crashes berkelium with a constant flow of "Socket operation on a non socket" messages. No clue as to what this error is related to. Any help would be appriciated.

Well the main thing is that it works ( finally ) but at least the frame transistions should be almost instant. Don't know of people know how to profile or debug python code to figure out where this delay is coming from?

If people are already interested in an image with this setup, I will be more than happy to make one.

With regards,
Hellbender
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem
by hellbender » Sun Feb 17, 2013 8:20 am
Ok the scheduler error seems to have disappeared now that i have cleared my data directory. It problably was due to some stray data being left behind.

one down.. next please :-)
Posts: 73
Joined: Wed Dec 26, 2012 9:29 pm
Location: Arnhem