## Documentation for building PocketVJ on raspberry Pi 2 ### Install Raspbian Lite Find the instruction in the link below https://www.raspberrypi.org/documentation/installation/installing-images/README.md ### Install dependencies ```shell $ sudo apt-get update $ sudo apt-get -y install lxde-core lxterminal lxappearance xinit lightdm ntfs-3g python-pexpect vim figlet git-core firmware-ralink hostapd isc-dhcp-server lighttpd samba samba-common-bin php5-common php5-cgi php5 php5-mysql screen fbi ttf-mscorefonts-installer mediainfo gparted php5-cli iptables xtightvncviewer imagemagick dosfstools exfat-utils exfat-fuse hfsplus hfsprogs hfsutils xdotool expect expect-dev avahi-daemon libavahi-compat-libdnssd-dev feh libjpeg8 libjpeg8-dev libao-dev avahi-utils libavahi-compat-libdnssd-dev libva-dev youtube-dl python-smbus mpg321 mpg123 libreoffice-impress rc-gui python-pip iceweasel python-dev python-dbus xpdf x11-xserver-utils libncurses5-dev shellinabox tk okular usbmount libgstreamer0.10-0 libgstreamer0.10-dev gstreamer0.10-tools gstreamer0.10-plugins-base libgstreamer-plugins-base0.10-dev gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly gstreamer0.10-plugins-bad libgstreamer-plugins-base1.0-dev gstreamer1.0 $ sudo pip install pjlink python-osc svgtools svgpathtools svgwrite ``` If you have trouble installing "svgtools", upgrade "pip & setuptools". An other option is to install the dependencies over the package manager and the install the "svgtools" with "pip". ```shell $ sudo pip install --upgrade pip $ sudo pip install --upgrade setuptools $ sudo apt-get install python-networkx python-numpy python-scipy python-sklearn python-pandas $ sudo pip install svgtools ``` ### Setup PocketVJ Control Panel server ```shell $ cd /tmp $ git clone https://github.com/magdesign/PocketVJ-CP-v3.git $ sudo mv PocketVJ-CP-v3/* /var/www $ sudo chown -R www-data:www-data /var/www ``` Add www-data to your sudoers list with: `visudo` add this line at the end: `www-data ALL=(ALL) NOPASSWD: ALL` Allow php with: `sudo lighty-enable-mod fastcgi-php` Edit `/etc/lighttpd/lighttpd.conf` and replace `/var/www/html` by `/var/www` Then reload lighttpd server with: `sudo /etc/init.d/lighttpd force-reload` Create diferrent folders for audios and videos ```shell $ sudo mkdir -p /media/internal/{video,images,pdf,audios} ``` ### Clone RaspiDMX to Raspberry home directory ```shell $ cd && git clone https://github.com/AndrewFromMelbourne/raspidmx ``` -- DID NOT WORK on RP2 -- ### Install Openframeworks v0.9.8 ##### Download and Install openFrameworks ```shell $ cd /tmp $ wget http://openframeworks.cc/versions/v0.9.8/of_v0.9.8_linuxarmv6l_release.tar.gz $ tar -zxvf of_v0.9.8_linuxarmv6l_release.tar.gz $ rm of_v0.9.8_linuxarmv6l_release.tar.gz $ mv of_v0.9.8_linuxarmv6l_release/ ~/openFrameworks ``` ##### Install packages and compile openFrameworks ```shell $ cd /home/pi/openFrameworks/scripts/linux/debian $ sudo ./install_dependencies.sh $ sudo ./install_codecs.sh $ make Release -C /home/pi/openFrameworks/libs/openFrameworksCompiled/project ``` ### Install ofxPiMapper ```shell $ cd ~/openFrameworks/addons/ $ git clone https://github.com/kr15h/ofxPiMapper.git ``` ### Install HPlayer Prepare your RaspberryPi ```shell $ sudo raspi-config # Expand filesystem # Split GPU memory to 256 # Bootup in Console # Overclock if you want to # Reboot ! ``` Build HPlayer from source ```shell $ cd ~/openFrameworks/addons/ $ git clone https://github.com/jvcleave/ofxOMXPlayer.git $ git clone https://github.com/satoruhiga/ofxArgParser.git $ git clone https://github.com/jkosoy/ofxCrypto.git $ cd ~/openFrameworks/apps/myApps/ $ git clone https://github.com/Hemisphere-Project/HPlayer.git $ cd HPlayer $ make $ cp -R bin/ ~/HPlayer $ cd ~ ``` -- END -- ### Install OMXPlayer-sync ```shell $ sudo su $ apt-get remove omxplayer $ rm -rf /usr/bin/omxplayer /usr/bin/omxplayer.bin /usr/lib/omxplayer $ apt-get install libpcre3 fonts-freefont-ttf fbset libssh-4 python3-dbus $ wget http://omxplayer.sconde.net/builds/omxplayer_0.3.7~git20160713~66f9076_armhf.deb $ dpkg -i omxplayer_0.3.7~git20160713~66f9076_armhf.deb $ wget -O /usr/bin/omxplayer-sync https://github.com/turingmachine/omxplayer-sync/raw/master/omxplayer-sync $ chmod 0755 /usr/bin/omxplayer-sync $ wget https://github.com/turingmachine/omxplayer-sync/raw/master/synctest.mp4 ``` ### Simulate a fake keyboard ```shell $ cd /tmp $ wget http://www.fsays.eu/downloads/fsaysPI.7z $ sudo apt-get install p7zip $ p7zip -d fsaysPI.7z $ sudo cp fsaysPI/fsaysuinput /opt $ sudo cp fsaysPI/fsayskeyboard /opt $ sudo chmod +x /opt/fsays* ``` ### Install TCPSClient ```shell $ cd /tmp $ wget https://mypage.techlife.sg/products/TCPSClient.zip $ unzip TCPSClient.zip $ unzip TCPSClient/TCPSClient3.zip $ ``` In case you use Raspberry Pi 3 copy `TCPSClient3.bin` to excutable directory ```shell $ sudo cp TCPSClient.bin /usr/bin/ $ sudo chmod u+x /usr/bin/TCPSClient.bin ``` ### Install info-beam for using the snapshot function ```shell $ cd /tmp $ git clone https://github.com/info-beamer/tools.git $ cd tools/screenshot/ && make $ cd ../ && sudo mv screenshot/ /opt/ ``` ### Install Pi-Wall ```shell $ cd /tmp $ wget http://dl.piwall.co.uk/pwlibs1_1.1_armhf.deb $ sudo dpkg -i pwlibs1_1.1_armhf.deb $ wget http://dl.piwall.co.uk/pwomxplayer_20130815_armhf.deb $ sudo dpkg -i pwomxplayer_20130815_armhf.deb ``` ### Install Extplorer install eXtplorer in /var/www/eXtplorer and configure it: sudo nano /var/www/eXtplorer/include/init.php change the root directory to '/media/'; ```shell $ cd /tmp $ wget http://extplorer.net/attachments/download/68/eXtplorer_2.1.9.zip $ unzip eXtplorer_2.1.9.zip -d eXtplorer $ sudo mv eXtplorer /var/www/ $ sudo chown -R www-data /var/www/eXtplorer $ sudo nano /var/www/eXtplorer/include/init.php $GLOBALS['home_dir'] = '/media/'; ``` Increase the upload size limit by editing these lines below in `/etc/php5/cgi/php.ini` ``` shell $ sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 2000M/g' /etc/php5/cgi/php.ini $ sudo sed -i 's/post_max_size = 8M/post_max_size = 8000M/g' /etc/php5/cgi/php.ini ```