|
|
| (7 intermediate revisions by 3 users not shown) |
| Line 1: |
Line 1: |
| h1. Running QtMediaHub on ST7108
| | #Redirect [[Running QtMediaHub on ST7108]] |
| | |
| == Assumptions ==
| |
| | |
| # Qt 4.8.0 is configured, built and installed as per "ST7108":http://wiki.qt.io/ST7108
| |
| # 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 ST7108 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 ST7108 reference board.
| |
| | |
| <code><br />rm -f /tmp/stapp_fifo /tmp/stapp_fifo2 /tmp/stapp_log<br />mkfifo /tmp/stapp_fifo<br />mkfifo /tmp/stapp_fifo2<br />( source /modules/load_env.sh && /main_hdk7108_7108_ST40HOST_LINUX_32BITS.out </tmp/stapp_fifo2 >/tmp/stapp_log 2&gt;&1 & )<br />sleep 1<br />( while [ 1 ] ; do cat /tmp/stapp_fifo >/tmp/stapp_fifo2 ; done & )<br />echo '' > /tmp/stapp_fifo<br />sleep 5<br /></code>
| |
| | |
| ST7108 specific media control integration can be found in files "mediaplayerST7108.h&quot;:http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7108.h and "mediaplayerST7108.cpp&quot;:http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7108.cpp
| |
| | |
| == Configuring ==
| |
| | |
| Use " -media-backend ST7108&quot; configure option to enable multimedia playback capability of QMH
| |
| | |
| <code><br />cd /path/to/qtmediahub/<br />/path/to/qtmediahub/configure -media-backend ST7108<br /></code>
| |
| | |
| == Building ==
| |
| | |
| Build QMH as follows
| |
| | |
| <code><br />cd /path/to/qtmediahub/<br />make<br /></code>
| |
| | |
| == Installing ==
| |
| | |
| As installation of QMH on ST7108 reference board copy entire "qtmediahub&quot; directory so that its path is exactly same as that on build machine.
| |
| | |
| <code><br />cd /path/to/<br />rsync -arv /path/to/qtmediahub root</code><ST7108 IP Address&gt;:/path/to/<br /><code>
| |
| | |
| == 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 -display -keyboard -mouse linuxfb -skin=confluence— -overlayMode=true -opengl-usage=false -opengl-viewport=false -opengl-format-hack=false<br /><code>
| |