Send display to projector
| align="center" style="background:#90EE90;" | Good
| DISPLAY=:0 vncviewer -listen 0 -fullscreen -x11cursor #on pix11vnc -connect projector.fixme.ch:5500 -noxdamage #on laptop
|-
| '''PulseAudio'''
| align="center" style="background:#90EE90;" | Good
| Select ''pulse@projector'' from Sound settings
Doesn't work too well over WiFi
|}
| align="center" style="background:#90EE90;" | Good
| Select 'Projector' from DLNA/UPnP devices
BubbleUPNP is a good software for thisWorks with Samsung Video/Music/Photo default app, [https://play.google.com/store/apps/details?id=com.bubblesoft.android.bubbleupnp Bubble UPnP], [https://play.google.com/store/apps/details?id=com.skifta.android.app Skifta], other DLNA/UPnP compatible apps
|-
| '''Chromecast'''
Send audio to HiFi
| align="center" style="background:#FFFFE0F08080;" | SometimesPoor
| Select 'Projector' from Chromecast menu
Works with YouTube, ''Please note that Chromecast is a new standard and third party implementations are not all apps functionalways fully functional yet.''
|}
The parts still need to be automated, a web control interface is desirable. Currently the clients need to be launched manually, although this can be done via ssh - scripts are available. More clients can be added as needed, and a further control interface for the projector and stereo system will need to be put in place. ssh -p 47382 pi@62.220.135.197
== Goal ==
*** e.g 1205 for HTTP x264 streams
* Link with trigger interface?
== Obstacles ==
* There aren't any solid similar solutions for remote screen sharing, we have to hack something together
* Will the Raspberry Pi's power be sufficient?
== Component ==
=== Screen sharing Implemented === ===== HTTP x264/h264 ===== Advantage of HTTP x264 sharing is reduced lag (RPi limited to 100mbit ethernet)VLC screen sharing (screen://) on sender + omxplayer on Pi (for hardware acceleration) (reeealy sketchy atm, can't get to work)
===== VNC =====
xtightvncviewer on Pi
DISPLAY=:0 vncviewer -listen 0 -fullscreen -x11cursor #on pi (scripted already)
x11vnc or your favorite server on your laptop
Veency on iOS
DroidVNC or others on Android
==== AirPlay & Chromecast ====perl-net-sdp + shairport on Pi --> [http://www.raywenderlichvmlite.com/44918/raspberry-pi-index.php?option=com_kunena&func=view&catid=23&id=10991 rPlay] is used for everything AirPlay and Chromecast. Sending music over airplay-tutorial works nowfine, mirroring works intermittently. Chromecast works sometimes.
'''Chromecast using rPlay for AirPlay mirroring (sketchy)=== DLNA/UPnP ===does not function very well, do not hesitate to suggest alternative servers.'''
==== DLNA/UPnP ====[https://github.com/hzeller/gmrender-resurrect ThisGmrender]=== MPD ===is used for DLNA/UPnP. This works quite well, apps on Android phones can stream music without difficulty to the sound system.
sudo apt==== PulseAudio ====[http://www.foell.org/justin/raspberry-get install mpd basicallypulse/ Raspberry Pi pulse audio guide.] This was a pain to set up, however now you can select 'bcm2835 ALSA Analog Stereo on pulse@projector' on your laptop that has pulseaudio. Doesn't work very well over WiFi.
Maybe something like http://www.raspyfi.com/ ? Maybe we can build a nice interface too.=== Chromecast Not Implemented=== Turns out it* '''HTTP x264/h264 Desktop Mirroring''s not really chromecast, it's a tool that allows you to open websites automatically and in full screen. Works for less lag/higher framerate compared with general websitesVNC, youtube links (opens FS and autoplay), netflix linksseeing as the RPi has a hardware decoder, and a few other things by sending a link to compression helps overcome the piRPi's bandwidth limitations (100mbit). Sounded better when I first heard of it. [httpshttp://githubwww.comoblivion-software.de/lanceseidman/picast PiCast] =index.php?id=56&type= PulseAudio ===98 Installing VLC with hardware acceleration on Pi]. [http://www.foellwaitwut.orginfo/justinblog/raspberry2013/06/07/desktop-pulsestreaming-with-vlc/Using VLC for screen sharing]. Status: to be implemented. First attempts failed. === LimeLight (?) ===* [https://github.com/irtimmer/limelight-pi '''Limelight '''] is an open-source Java client which allows you to stream games from your home PC (as long as you have an Nvidia GTX 600 or 700 Series graphics card and enough bandwidth on your home network) to the Raspberry Pi that’s attached to your television. (You do have a Raspberry Pi attached to your television, right?) And it’s Status: not just Steam games: any content can be streamed. Right nowimplemented, only mouse and keyboard are supported, but there’s work being done to support other controllers too. So now you can play PC content from the machine upstairs may be installed if there is demand in the study on future.* '''MPD''' is a music player demon that great big flatscreen monolith in the corner of your living roomruns on a server, and is controllable from any device connected to the comfort of your own sofanetwork. [http://www.raspyfi.com/ RaspyFi] is a distro specifically made for this. Status: not implemented, this is currently [https://fixme.ch/wiki/MPD_Daemon handled by foo]. * [https://github.com/irtimmerlanceseidman/limelight-pi === Other ==={| border="1" cellspacing="0" cellpadding="2" stye="text-align:center;" width="100%"|-| PiCAST '''PiCast'''Any | Sortof| Send link ] opens links and plays streaming videos in fullscreen, Chromecast style. You can open links by sending it via online interface|-an URL. Status: implemented but removed due to very poor performance and difficulty in setting up correctly. Not very useful either.| * '''Synergy'''Linuxallows for remote keyboard/Macmouse control. Status: installed, and then removed. Why? [http:/Win/i.imgur.com/WFcCb2K.png Because].| Sortof| Mouse and keyboard controlDoesn't work at the moment|-|* '''MiraCast'''offers native screen sharing for many Android devices| No| Android screen mirroring|. Status: OSS implementation wasn't available when the project started, however there is one now ([https://github.com/codemonkeyricky/piracast Piracast]) which requires a TP-Link dongle and doesn't work with DRMd material. May be implemented in the future.| * '''LimeLightRDP'''| No| Send from nVidia GTX 700 and 800 series cards|}is a Windows remote desktop utility, although proprietary, there are open source clients such as [https://github.com/FreeRDP/FreeRDP FreeRDP]. Status: in the future if there is demand.
=== Control ===
Use RPi to turn on/off projector via IR LED, also (maybe) change the input of the stereo system. [http://alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/]
Synergy was also installed on the Pi to allow access remotely
https://github.com/afaqurk/linux-dash?utm_source=explore-newsletter&utm_medium=email&utm_term=weekly&utm_campaign=explore-email
== Schedule ==
* '''December 2013''' - Zephyz bought pi with 10 CHF contributions from gcmalloc, sasha and noskill, each contributed 10 CHF, and the . The SD Card was provided by fixme/rorist. Raspbian was set up and updated, ssh access was set up (see above), and experimentation began.* '''January 2014''' - The Raspberry Pi was mounted in a custom 3D printed thing holder next to the projector, all the wires were hooked up and made tidyish. PiCast, VNC, Synergy and AirPlay were installed. Development rigorous at times* '''February 2014''' - Proper Airplay (with screen mirroring) and Chromecast were installed. An IR receiver and LED was hooked up in order to be able to control the projector remotely. A splitter was attached to the audio line to allow for playback from both MPD and the projector without switching.* '''March 2014''' - Synergy and Picast removed due to poor performance. A DLNA/UPnP receiver was set up on the Pi to allow streaming media from devices such as Android phones & tablets. A Pulseaudio sink was also installed. We experimented with an external DSP to amplify sound, however this didn't work. Reverse VNC now runs on startup so there is no need to run script each time.
== Participants ==
* [[User:Sasha|Sasha]] (Leader)
* Zephyz* [[User:GcmallocFrancois|GcmallocFrancois]]
* Other ppl