wget --no-check-certificate https://github.com/bbond007/raspytube/raw/master/install.sh -O - | sh
# Install dependancies
echo "> Installing dependancies."
sudo apt-get install omxplayer wget libjpeg8 youtube-dl
# Updating youtube-dl to make sure it's the latest version.
echo "> Updating youtube-dl."
sudo youtube-dl -U
# Download binary
echo "> Downloading raspytube binary."
sudo wget https://github.com/bbond007/raspytube/raw/master/raspytube.bin -O /usr/local/bin/raspytube.bin
sudo chmod a+x /usr/local/bin/raspytube.bin
# Launch raspytube!
echo "> Launching raspytube!"
raspytube.bin
# Install dependancies
sudo apt-get install omxplayer wget libjpeg8 youtube-dl
# Update youtube-dl. Need to make sure it's up to date with youtube API.
sudo youtube-dl -U
# Install compilation tools and required libraries
sudo apt-get update
sudo apt-get install build-essential git-core libjpeg8-dev libx11-dev
# Compile ilclient
cd /opt/vc/src/hello_pi/libs/ilclient
make clean
make
# Compile raspytube
cd ~
git clone https://github.com/bbond007/raspytube
cd raspytube
cd OMXJPEG
make clean
make
cd ..
cd GFXDATA
make clean
make
cd ..
make clean
make
# Launch raspytube!
./raspytube.bin
Keys:
Q - run 1/4 screen in X11 window
M - main menu
S - search (edit existing txt)
N - new search
J - (uppercase) test joystick (useful for configuring JS)
j - (lowercase) joystick/keyboard/mouse menu (input menu)
cursor down - next record
cursor up - prev record
cursor right- get next # results
cursor left- get prev # results
ESC - exit screen/program
The following are also available from the menu:
C - category menu
F - set youtube-dl format
G - GUI Menu
P - toggle between OMXPlayer and MPlayer
H - toggle between HDMI/Local audio output
j - joystick/keyboard/mouse menu (input menu)
I - more information on selected record
X - toggle between software (libjpeg) and hardware (OMX) jpeg decoding.
* OMX-jpg & gfx data broken out into seperate static libs (see updated compile instructions)
* you need 64MB VRAM to run this program.
* MPlayer if you switch to windowed mode.
* Added mouse support.
* Added support to run in X11 window!
This application can now run in a X11 window. The app is not really
running in X11 window, but it is a clever illusion. How I accomplish
this is I create a dummy X11 window, track the movement of that window
on the desktop then uses "vc_dispmanx_element_change_attributes" of
the VC output to match. This has the added benefit of being able to
take input focus and capture X11 input such as mouse move/enter events
and keypresses. Apparently it is very expensive to call XGetWindowAttributes
and XGetGeometry (that is actually how MC Hammer went broke), so I only
do so periodically which is why you'll notice a slight lag when you move
the window (before the VC window catches up). This is also why the window
is always front-most. To switch to XWindows mode, There is an invisible
"button" on right-topmost position to toggle on the screen or the "q"
key (for quarter-screen). Repeat to return.
Thanks the the RPi community!
parts of this come from "shapes.c":
shapes: minimal program to explore OpenVG
Anthony Starks (ajstarks@gmail.com)
and "test_image.c"
ShivaVG / IvanLebenivan.leben@gmail.com
ShivaVG-anopen-sourceLGPLANSICimplementationoftheOpenVGspecification
Also thanks to MattOwnby and jumble) for OMX jpeg decode
Thanks to CalumJEadie for formatting this file.