====== RPI Kiosk ======
Upgrade:
sudo apt-get update
sudo apt-get dist-upgrade
apt-get install build-essential
[[http://michaelteeuw.nl/tagged/magicmirror | Magic Mirror]]
[[http://www.nytlabs.com/projects/mirror.html | Times Mirror]]
[[https://jasperproject.github.io/ | Jasper Voice Control]]
[[http://www.raspberrypi.org/downloads/ | RPI OS Download]]
[[http://stevenhickson.blogspot.com/2013/04/voice-control-on-raspberry-pi.html | RPI voice control]]
[[http://stevenhickson.blogspot.com/2014/05/rpi-video-looper-20.html | Video Looper]]
[[https://thinkrpi.wordpress.com/2013/04/05/step-3-install-softwares-for-webcam-and-computer-vision/ | CV]]
[[http://elinux.org/RPi_USB_Webcams | USB Web Cams]]
[[http://jacobsalmela.com/raspberry-pi-webcam-using-mjpg-streamer-over-internet/ | RPI Streamer ]]
[[http://sirlagz.net/2012/08/04/how-to-stream-a-webcam-from-the-raspberry-pi/ | Streamming]]
[[https://thinkrpi.wordpress.com/ | Facial Recog]]
[[http://www.theweather.com/widget/ | Weather Widget]]
[[http://openweathermap.org/city/5101393 | Morganville, NJ]]
[[http://elinux.org/RPi_Advanced_Setup| Advanced avahi]]
[[http://elinux.org/RPiconfig | RPI Config ]]
[[http://www.instructables.com/id/View-RTMP-Stream-on-Raspberry-Pi/ | RTMP Stream]]
[[http://raspi.tv/2012/get_iplayer-installation-on-raspberry-pi-with-raspbian | Recording a Stream ]]
[[http://stackoverflow.com/questions/14087135/how-would-i-use-rtmpdump-to-download-this-stream | Downloading the stream]]
[[http://www.raspberrypi-spy.co.uk/2013/05/capturing-hd-video-with-the-pi-camera-module/ | RPI Camera]]
[[http://wiki.elphel.com/index.php?title=Using_FFmpeg_with_Video_API | ffmpeg usage]]
Webserver
To host the interface (which is simply a webpage), i needed an Apache webserver to be running on the Raspberry. Since this is one of the most common uses of the Rasberry, the installation of Apache is very streamlined.
First I made sure i was running the latest system software by running the following command:
sudo apt-get update && apt-get upgrade -y
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
sudo rpi-update
No it’s time to actually install apache:
sudo apt-get install apache2 apache2-doc apache2-utils
Done! That’s all there is. But to make sure I was able to use some PHP scripts on the webserver (more about that later), I also added PHP support:
sudo apt-get install libapache2-mod-php5 php5 php-pear php5-xcache
Done … again! Reboot, and the webserver is up and running! I dropped a index.php file in the /var/www folder, and pointed my browser to the Raspberry’s ip adress and yes, it worked.
Kioskmode
Now, to make sure the Raspberry actually shows the webpage I will be using Chromium in kioskmode. Chromium is an open source browser which is able to run on the Raspberry’s OS.
Once again, installing was easy:
sudo apt-get install chromium x11-xserver-utils unclutter
But this time, it needed some extra configuration to disable the
screensaver and autoboot in kioskmode. To do this i
edited /etc/xdg/lxsession/LXDE/autostart and added a # before:
/etc/xdg/lxsession/LXDE-pi
@xscreensaver -no-splash
Additionally, I added the following lines:
@xset s off
@xset -dpms
@xset s noblank
@chromium --kiosk --incognito http://localhost
This completely disables all screensaving features, and makes sure chromium will start after boot an points to the localhost webserver in full screen mode.
Time to save the file and reboot once more to check if it works. Since the Raspberry isn’t worlds fastest computer, it took a while, but eventually the testsite appeared on the 90 degrees rotated screen … Yeah!
On to the last part of the project. The development of the interface.
# enable raspicam
start_x=1
gpu_mem=256
# magic mirror
display_rotate=1
display_rotate=0 Normal
display_rotate=1 90 degrees
display_rotate=2 180 degrees
display_rotate=3 270 degrees
display_rotate=0x10000 horizontal flip
display_rotate=0x20000 vertical flip
sudo apt-get install sqlite3
sudo apt-get install php5-sqlite
Install avahi with the following commands on the Pi:
sudo apt-get install avahi-daemon
and then on older Debian installs:
sudo update-rc.d avahi-daemon defaults
or on newer Raspbian installs:
sudo insserv avahi-daemon
(if in doubt, you're probably on the newer one).
Create a configfile for Avahi at /etc/avahi/services/multiple.service. I did this with the following command:
sudo pico /etc/avahi/services/multiple.service
The contents of this file should be something like the following, courtesy of aXon on the Rasperry Pi forums:
%h
_device-info._tcp
0
model=RackMac
_ssh._tcp
22
Apply the new configuration with:
sudo /etc/init.d/avahi-daemon restart
The Pi should now be addressable from other machines as raspberrypi.local, for example:
ssh pi@raspberrypi.local
I managed to stream from my PI to a Web server with the compiled in module nginx-rtmp. To save hassles with ffmpeg I recommend a rolling distribution like Archlinux Arm. raspivid -vf -t 0 -fps 25 -b 2000000 -o - | ffmpeg -i - -vcodec copy -an -r 25 -f flv rtmp://x220/myapp/mystream Some notes: The hardware encoded h264 video stream takes about ...
webcam streaming-video camera
answered Aug 3 '13 at 4:36
hendry
1694
4
What streaming solution for the Picam has the smallest lag?
With Ubuntu 14.10 and Gstreamer I reach 100 to 116 ms latency with 1280 x 720 @ 60Hz. Tanks to @Antonvh who puts me on the right way. I reproduce here the solution for latter reference. To stream from the Pi : raspivid -t 0 -b 2000000 -fps 60 -w 1280 -h 720 -o - \ | gst-launch-1.0 -e -vvv fdsrc ! h264parse ! rtph264pay pt=96 config-interval=5 \ ! ...
http://raspberrypi.stackexchange.com/tags/streaming-video/hot
flash tests
apt-get install xmms2-plugin-flv
apt-get install xul-ext-flashblock
Installing Flash Player
The usual flashplugin-nonfree for Linux is not available for ARM devices. The solution is to use PepperFlash plugin. It's not available for the public from the Google team, but thanks to Lee Harris we can download it from his site. It's a link for the plugin for ARMv7 ripped from original Google OS from Chromebook. If you don't trust the link above you may try to rip it out yourself. After you download the archive you should extract the Pepperflash dir to /usr/lib. After that you need to do the following changes to the Chromium config file /etc/chromium-browser/default. You should modify it, so it has a line:
CHROMIUM_FLAGS="--ppapi-flash-path=/usr/lib/PepperFlash/libpepflashplayer.so --ppapi-flash-version=12.0.0.77"
Running Chromium with root rights
The Chromium browser doesn't launch as a root. You can change that behavior by editing it's config file /etc/chromium-browser/default. You should modify it, so it has a line:
CHROMIUM_FLAGS="-password-store=detect -user-data-dir"
If you need flash support, the line should look like this:
CHROMIUM_FLAGS="--ppapi-flash-path=/usr/lib/PepperFlash/libpepflashplayer.so --ppapi-flash-version=12.0.0.77 -password-store=detect -user-data-dir"
wget http://odroidxu.leeharris.me.uk/PepperFlash-12.0.0.77-armv7h.tar.gz
tar -xzf PepperFlash-12.0.0.77-armv7h.tar.gz
cd PepperFlash
chmod +x *
sudo cp * /usr/lib/chromium/plugins
sudo nano /etc/chromium/default
Open Chromium
enter
chrome://plugins
The pepperflash-plugin should be visible. Enable it.
Done.
http://www.raspberrypi.org/forums/viewtopic.php?f=66&t=99202
http://www.thisismyrobot.com/2012/08/getting-logitech-c270-webcam-working-on.html
1. Add UVC support to the image
Download and run rpi-update as described here. This will update your image to include the initially-missing UVC support. Reboot as suggested.
2. Update your packages
sudo apt-get update
sudo apt-get upgrade
3. Install the guvcview webcam viewer
sudo apt-get install guvcview
4. Set up your permissions and enable the driver
sudo usermod -a -G video pi
sudo modprobe uvcvideo
Reboot the Pi.
5. Open up the cam (these are the settings that worked for me)
guvcview --size=544x288 --format=yuyv
# apt-get install php5-curl
compile sqlite3
sqlite3-build $ ./sqlite3 -version
3.8.10.1 2015-05-09 12:14:55 05b4b1f2a937c06c90db70c09890038f6c98ec40
sqlite-autoconf-3081001.tar
apt-get remove sqlite3
{{::sqlite-autoconf-3081001.tar.gz|}}
[[https://console.aws.amazon.com/ec2/v2/home?region=us-east-1#Instances:sort=instanceId | EC2 east]]
apt-get install ntp
insserv ntp
/etc/timezone
/usr/bin/tzselect
/etc/apache2/envvars
change RUN_USER/RUN_GROUP