|
|
| (7 intermediate revisions by 3 users not shown) |
| Line 1: |
Line 1: |
| h1. Running QtMediaHub on ST7540
| | #Redirect [[Running QtMediaHub on ST7540]] |
| | |
| == Assumptions ==
| |
| | |
| # Qt 4.8.0 is configured, built and installed as per "ST7540":http://wiki.qt.io/ST7540
| |
| # Can run STM’s “Test-Tool” on reference board to test OpenGL ES 2.0 and media playback.
| |
| # "QTDIR" and "PATH" environment variables are set to use Qt 4.8.0 cross compiled and installed for ST7540 in your build terminal
| |
| | |
| == Getting Source ==
| |
| | |
| You can get the latest source code from gitorious "https://gitorious.org/qtmediahub&quot;:https://gitorious.org/qtmediahub.<br />You can use "sync-to-head&quot;:http://gitorious.org/qtmediahub/qtmediahub/blobs/master/scripts/sync-to-head to update your sources to latest version
| |
| | |
| Note that we are in the process of moving the git repositories to the qt.io.
| |
| | |
| == Multimedia Playback Support ==
| |
| | |
| QMH uses "platform specific media player application&quot; (in ST's case it is the Test-Tool) to have media playback facility.<br />This is achieved using "out of process integration&quot; which means:-
| |
| | |
| ## Start "Test-Tool&quot; in background and redirect a FIFO ("/tmp/stapp_fifo2&quot;) to "Test-Tool&quot;s STDIN<br />## Redirect "Test-Tool&quot;'s STDOUT and STDERROR to a normal file &#40;"/tmp/stapp_log&quot;&#41;<br />## QMH issues commands to "platform specific media player application&quot; to another FIFO ("/tmp/stapp_fifo&quot;)<br />## Have an arrangement to transfer data from FIF0 ("/tmp/stapp_fifo&quot;) to FIFO ("/tmp/stapp_fifo2&quot;)<br />## And QMH collects the feedback by reading "platform specific media player application&quot;'s STDOUT and STDERROR
| |
| | |
| This is achieved using following shell (commands in a init) script on ST7540 reference board.
| |
| | |
| <code><br />cd /root/app<br />mkdir -p /dev/fusion
| |
| | |
| export MODULES_INSTALL_DIR=/root/app/modules<br />export LD_LIBRARY_PATH=/lib:/usr/lib:/root/app/modules:$LD_LIBRARY_PATH
| |
| | |
| rm -f /tmp/stapp_fifo /tmp/stapp_fifo2 /tmp/stapp_log<br />mkfifo /tmp/stapp_fifo<br />mkfifo /tmp/stapp_fifo2
| |
| | |
| source /root/initapp.sh && cd /root/app/ && ./bsptestapp_dvb </tmp/stapp_fifo2 >/tmp/stapp_log 2&gt;&1 &<br />sleep 30<br />while [ 1 ] ; do cat /tmp/stapp_fifo >/tmp/stapp_fifo2 ; done &<br />sleep 30<br />echo '' > /tmp/stapp_fifo<br />sleep 30<br /></code>
| |
| | |
| ST7540 specific media control integration can be found in files "mediaplayerST7540.h&quot;:http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7540.h and "mediaplayerST7540.cpp&quot;:http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7540.cpp
| |
| | |
| == Configuring ==
| |
| | |
| Use " -media-backend ST7540&quot; configure option to enable multimedia playback capability of QMH
| |
| | |
| <code><br />cd /path/to/qtmediahub/<br />/path/to/qtmediahub/configure -media-backend ST7540<br /></code>
| |
| | |
| == Building ==
| |
| | |
| Build QMH as follows
| |
| | |
| <code><br />cd /path/to/qtmediahub/<br />make<br /></code>
| |
| | |
| == Installing ==
| |
| | |
| As installation of QMH on ST7540 reference board copy entire "qtmediahub&quot; directory so that its path is exactly same as that on build machine.
| |
| | |
| == Running QMH on Qt 4.8 (QWS) ==
| |
| | |
| Setup QTDIR, QWS_KEYBOARD, QWS_MOUSE_PROTO and LD_LIBRARY_PATH environment variables as follows
| |
| | |
| <code><br />export QTDIR=/path/to/installed/qt-everywhere-opensource-src-4.8.0/<br />export QWS_KEYBOARD="LinuxInput:/dev/input/event0&quot; //Use appropriate device node<br />export QWS_MOUSE_PROTO="LinuxInput:/dev/input/event1&quot; //Use appropriate device node<br />export LD_LIBRARY_PATH=${QTDIR}/lib/:${LD_LIBRARY_PATH}<br />export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:"/path/to/qtmediahub/qtmediahub-core/hub/lib/&quot;<br /></code>
| |
| | |
| Rum QMH as follows to use OpenGL ES 2.0
| |
| | |
| <code><br />cd /path/to/qtmediahub/<br />/path/to/qtmediahub/qtmediahub-core/hub/bin/qtmediahub -qws -keyboard -mouse -display eglnullws:size=1280x720 -skin=confluence -overlayMode=true -opengl-usage=true -opengl-viewport=true -opengl-format-hack=false<br /></code>
| |
| | |
| Rum QMH as follows to use DirectFB
| |
| | |
| <code><br />cd /path/to/qtmediahub/<br />/path/to/qtmediahub/qtmediahub-core/hub/bin/qtmediahub -qws -display directfb -skin=delphin -overlayMode=true -opengl-usage=false -opengl-viewport=false -opengl-format-hack=false<br /></code>
| |
| | |
| Rum QMH as follows to use Linux Frame Buffer
| |
| | |
| <code><br />cd /path/to/qtmediahub/<br />/path/to/qtmediahub/qtmediahub-core/hub/bin/qtmediahub -qws -keyboard -mouse -display linuxfb -skin=confluence— -overlayMode=true -opengl-usage=false -opengl-viewport=false -opengl-format-hack=false<br /></code>
| |