Concerto Digital Signage Client Scripts


14 posts
by flamewave000 » Fri Feb 15, 2013 4:43 am
I don't know if this has been done already but it's a little project I have had fun with for the last month or so. I'm currently a student worker at my University which is trying to bring digital signage to the campus. I stumbled upon the Raspberry Pi and, due to their low cost, they were approved for use as client machines for the various TVs that will display the signage. (Originally they were going to use old desktops at each TV haha).

So anyways! I spent the last month of my spare time at my 10hr a week job here on campus to piece together this simple script. It's only tested on the Wheezy distro but so far it has worked perfectly. We are running the open sourced Concerto Digital Signage server and this script package will automatically setup a Raspberry Pi to act as a client machine.

The script simply ensures that when ever the Pi starts, the mouse is hidden, the screen does not go to sleep and a Midori browser is opened fullscreen to the concerto signage page for the particular screen the pi is running. I've placed the script in a public GitHub. Let me know what you think!

Thanks

GitHub: https://github.com/flamewave000/concerto_rpi
Concerto: http://www.concerto-signage.org
Posts: 3
Joined: Wed Nov 28, 2012 7:27 pm
Location: Ontario Canada
by liamb53 » Wed Mar 20, 2013 1:36 pm
I have spent almost five days searching the internet for a solution to this problem and was suprissed to find that no webpage had one full set of instructions that worked for me on raspian. Therefore i decided to document my progress to help others easily use concerto on raspberry pi. Just follow these easy steps:
1. format memory card in exfat
2. open disk imager and write the wheezy raspian iso file to the memory card
3. insert into raspberry pi and switch on
4. type startx to boot raspberry pi
5. open LX terminal and type sudo nano /etc/inittab press enter
6. this will open a new file scroll to 1:2345:respawn:/sbin/getty 38400 tty1
7. add a # to the start of this line then on the line below type 1:2345:respawn:/bin/login -f pi tty1 </dev/tty1 >/dev/tty1 2>&1
8. then press ctrl x to save and y to accept with enter
9. you should now be back in the lx terminal on the second line
10. next type sudo nano /etc/profile then press enter
11. a new file will open at the very bottom of it type startx
12. ctrl x to save with y and enter to confirm
13. next type in the lx terminal sudo nano /etc/xdg/lxsession/LXDE/autostart
14. underneath that write @midori –e Fullscreen –a http://your server ip/concerto/screen/?mac= YOUR MAC ADDRESS
15. Next open midori and sign into the web filtering
16. Then type sudo apt-get install x11-xserver-utils
17. When this has installed type sudo nano ~/.xinitrc
18. This will open a new file in here type
xset s off
xset -dpms
xset s noblank

exec /etc/alternatives/x-session-manager
19. Then in the lx terminal type sudo apt-get install unclutter
20. Then in the lx terminal sudo nano /etc/xdg/lxsession/LXDE/autostart type @unclutter
21. When the process is complete type sudo reboot your pi will reboot and open the digital signage.
(note you must first setup concerto on your server)
Posts: 2
Joined: Wed Mar 20, 2013 1:18 pm
by scramlo » Fri Mar 22, 2013 12:09 am
Your my hero... Can't wait to get this rolling.

I work for a church and we recently put up three flat panels to display weekly announcements. I've known about the Pi for awhile and have tried two other methods:

1. Screenly (http://www.screenlyapp.com/) which is EXCELLENT for the Pi, but running CAT/HDMI isn't a viable option for our setup because of the cost.

2. Nate Jones' WP theme (http://wpdigitalsign.pixelydo.com/) which is also excellent, and very pretty... but the Pi does not render the JS very smoothly, and while that isn't a huge deal-breaker, it sure isn't good. So I thought maybe I just need to wait until Android gains GPU support on the Pi or something...

But I have never heard of Concerto, hope it will work for us. Are you using WiFi to connect to them? Does Concerto cache on the Pi itself? And if so have you ran into any issues yet? Would love to see a pic/vid of it in action.
Posts: 1
Joined: Thu Mar 21, 2013 11:51 pm
by KenT » Fri Mar 22, 2013 8:11 am
My Pi Presents might be worth a look. Its more focused on stand alone museum exhibit animation but it has some remote control digital signage capabilites in its Liveshow.

https://github.com/KenT2/pipresents
Pi Presents - A toolkit to produce multi-media interactive display applications for museums, visitor centres, and more
Download from http://pipresents.wordpress.com
Posts: 759
Joined: Tue Jan 24, 2012 9:30 am
Location: Hertfordshire, UK
by liamb53 » Fri Mar 22, 2013 2:23 pm
we have currently been experimently with screenly using that to run concerto so we can have a concerto screen which then swaps to other websites, videos and images that screenly support. I am using a gigabit core switch with cat 5 as i work in a school so its the best option for me, although as far as wireless goes i have read posts which enable you to use it with a wireless adapter. I dont believe it caches to pi as you have to install concerto to a server and you then connect to that when editing your content, so im not sure if it will be the most viable solution with your setup. Although as far as problems go it has run perfectly since setup i just found the pi is prone to corrupting and it is an idea to sudo halt before removing the memory card. I hope this helps sorry cant get you any images at the moment my monitor that is connected to the pi is currently being used for the cctv.
Posts: 2
Joined: Wed Mar 20, 2013 1:18 pm
by sm7urw » Wed Jun 05, 2013 5:52 pm
flamewave000 wrote: So anyways! I spent the last month of my spare time at my 10hr a week job here on campus to piece together this simple script. It's only tested on the Wheezy distro but so far it has worked perfectly. We are running the open sourced Concerto Digital Signage server and this script package will automatically setup a Raspberry Pi to act as a client machine.

The script simply ensures that when ever the Pi starts, the mouse is hidden, the screen does not go to sleep and a Midori browser is opened fullscreen to the concerto signage page for the particular screen the pi is running. I've placed the script in a public GitHub. Let me know what you think!


I'm really interested to try this script but there isn't anything to find at GitHub. Is there a new link available?

Cheers!
Posts: 1
Joined: Wed Jun 05, 2013 5:46 pm
by colleseus06 » Sun Jul 13, 2014 12:05 pm
Hi Everybody,

I have an LCD in my lab that i want to convert into something interactive and dynamic. It should show the ongoing projects in a more effective way rather than boring ppts. So while searching I fumbled upon digital signage tools and I feel concerto can fulfill me needs, so I just want to clarify some doubts before proceeding:

Can concerto be used to fetch content dynamically and can it run videos effectively?
Can I write some scripts to go to internet and display some specific data?
Midori browser cannot stream videos effectively, so any other alternative is available?
Can i setup concerto server on pi? Is it fast enough?
Posts: 8
Joined: Mon Jun 16, 2014 7:56 am
Location: Bangalore, India
by flamewave000 » Fri Aug 01, 2014 6:11 pm
sm7urw wrote:I'm really interested to try this script but there isn't anything to find at GitHub. Is there a new link available?

Cheers!

Hi sm7urw,
The link seems to still be valid for me. If you are having issues with it, I can always send you a zip via email.

[edit] Sorry for late reply, apparently I don't get notifications of responses to my posts here. Never knew anyone was commenting here haha
Posts: 3
Joined: Wed Nov 28, 2012 7:27 pm
Location: Ontario Canada
by gkreidl » Fri Aug 01, 2014 7:31 pm
colleseus06 wrote:Hi Everybody,

I have an LCD in my lab that i want to convert into something interactive and dynamic. It should show the ongoing projects in a more effective way rather than boring ppts. So while searching I fumbled upon digital signage tools and I feel concerto can fulfill me needs, so I just want to clarify some doubts before proceeding:

Can concerto be used to fetch content dynamically and can it run videos effectively?
Can I write some scripts to go to internet and display some specific data?
Midori browser cannot stream videos effectively, so any other alternative is available?
Can i setup concerto server on pi? Is it fast enough?


Minimal Kiosk Browser can do it by using omxplayer(GUI). But I don't know concerto.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer
Posts: 5058
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany
by colleseus06 » Sat Aug 02, 2014 8:06 am
gkreidl wrote:Minimal Kiosk Browser can do it by using omxplayer(GUI). But I don't know concerto.


I have installed the browser but the video streaming from youtube is not as per my needs.

I need concerto because I have a lot of content to display and it keeps on changing.
Posts: 8
Joined: Mon Jun 16, 2014 7:56 am
Location: Bangalore, India
by gkreidl » Sat Aug 02, 2014 8:32 am
colleseus06 wrote:I have installed the browser but the video streaming from youtube is not as per my needs.


What are your needs?
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer
Posts: 5058
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany
by colleseus06 » Sat Aug 02, 2014 2:21 pm
gkreidl wrote:What are your needs?


Thanks for helping
I want to display movie clips (right now I am trying to play youtube videos). The kiosk browser runs the videos from the youtube website but in framewise manner. While if I put the videos in concerto, it doesnot play at all.

So I tried the epiphany web browser, the results are better but not sufficient. So I am thinking to playing gifs instead of videos. I can convert some ppt (movies) to gifs and show them in concerto.

Here too I am facing the same problem, the gifs are running fine seperately, but when I send them through concerto the donot show any animations.

Do I need to install some plugins?
Posts: 8
Joined: Mon Jun 16, 2014 7:56 am
Location: Bangalore, India
by gkreidl » Sat Aug 02, 2014 2:37 pm
colleseus06 wrote:
gkreidl wrote:I want to display movie clips (right now I am trying to play youtube videos). The kiosk browser runs the videos from the youtube website but in framewise manner. While if I put the videos in concerto, it doesnot play at all.


what do you mean by "framewise" manner?

Running videos inside the browser without hardware acceleration is impossible. HTML5 videos will "run", but only one image every few seconds. Newer webkit engines with a hardware accelerated gstreamer-1,x may be able to do this (I suppose, that's what they are trying to do with epiphany=web beta). But such a webkit library cannot be installed on Raspbian wheezy without replacing half of the system (and loosing stability). And as far as I know, a hw acclelerated gstreamers-1.x is not available for Jessie yet (which contains the other libs needed). At the moment this is a deadlock.

Minimal Kiosk Browser can play youtube (and everything supported by youtube-dl) and HTML5 videos in a separate window (omxplayerGUI) or full screen using omxplayer. Inside a Kiosk application it is also possible to simulate video playing inside the browser window by using the right settings and creating specially prepared web pages. You can include a black iframe, for example, pointing to a video source (direct link), and set up omxplayer (kweb settings) to play the video exactly inside that frame area, using its --win option.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer
Posts: 5058
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany
by colleseus06 » Mon Aug 04, 2014 10:57 am
gkreidl wrote:what do you mean by "framewise" manner?


From Framewise manner, I meant that the video displays one frame for 1-2 seconds and then abruptly switches to next frame. So there is no smooth transition as it should happen in a video. I researched a lot about this issue and the options I concluded could be
  1. Using a much lighter OS (maybe arch linux)
  2. Switching from video to gifs (all the browsers support gifs and footprint is less compared to videos) (currently considering this option)


Thanks for helping and do let me know if you have any ideas. :idea:
Posts: 8
Joined: Mon Jun 16, 2014 7:56 am
Location: Bangalore, India