Category:QtMediaHub::ST7108: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
(Convert ExpressionEngine links)
Line 3: Line 3:
== Assumptions ==
== Assumptions ==


# Qt 4.8.0 is configured, built and installed as per "ST7108":http://wiki.qt.io/ST7108
# Qt 4.8.0 is configured, built and installed as per [http://wiki.qt.io/ST7108 ST7108]
# Can run STM’s “Test-Tool” on reference board to test OpenGL ES 2.0 and media playback.
# 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
# "QTDIR" and "PATH" environment variables are set to use Qt 4.8.0 cross compiled and installed for ST7108 in your build terminal
Line 9: Line 9:
== Getting Source ==
== Getting Source ==


You can get the latest source code from gitorious "https://gitorious.org/qtmediahub":https://gitorious.org/qtmediahub.
You can get the latest source code from gitorious [https://gitorious.org/qtmediahub https://gitorious.org/qtmediahub].
You can use "sync-to-head":http://gitorious.org/qtmediahub/qtmediahub/blobs/master/scripts/sync-to-head to update your sources to latest version
You can use [http://gitorious.org/qtmediahub/qtmediahub/blobs/master/scripts/sync-to-head 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.
Note that we are in the process of moving the git repositories to the qt.io.
Line 38: Line 38:
</code>
</code>


ST7108 specific media control integration can be found in files "mediaplayerST7108.h":http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7108.h and "mediaplayerST7108.cpp":http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7108.cpp
ST7108 specific media control integration can be found in files [http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7108.h mediaplayerST7108.h] and [http://gitorious.org/qtmediahub/qtmediahub-core/blobs/master/src/mediaplayer/mediaplayerST7108.cpp mediaplayerST7108.cpp]


== Configuring ==
== Configuring ==

Revision as of 16:23, 18 August 2015

h1. Running QtMediaHub on ST7108

Assumptions

  1. Qt 4.8.0 is configured, built and installed as per ST7108
  2. Can run STM’s “Test-Tool” on reference board to test OpenGL ES 2.0 and media playback.
  3. "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. You can use 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" (in ST's case it is the Test-Tool) to have media playback facility. This is achieved using "out of process integration" which means:-

    1. Start "Test-Tool" in background and redirect a FIFO ("/tmp/stapp_fifo2") to "Test-Tool"s STDIN
    2. Redirect "Test-Tool"'s STDOUT and STDERROR to a normal file ("/tmp/stapp_log")
    3. QMH issues commands to "platform specific media player application" to another FIFO ("/tmp/stapp_fifo")
    4. Have an arrangement to transfer data from FIF0 ("/tmp/stapp_fifo") to FIFO ("/tmp/stapp_fifo2")
    5. And QMH collects the feedback by reading "platform specific media player application"'s STDOUT and STDERROR

This is achieved using following shell (commands in a init) script on ST7108 reference board.

rm -f /tmp/stapp_fifo /tmp/stapp_fifo2 /tmp/stapp_log
mkfifo /tmp/stapp_fifo
mkfifo /tmp/stapp_fifo2
( source /modules/load_env.sh &amp;&amp; /main_hdk7108_7108_ST40HOST_LINUX_32BITS.out </tmp/stapp_fifo2 >/tmp/stapp_log 2>&amp;1 &amp; )
sleep 1
( while [ 1 ] ; do cat /tmp/stapp_fifo >/tmp/stapp_fifo2 ; done &amp; )
echo '' > /tmp/stapp_fifo
sleep 5

ST7108 specific media control integration can be found in files mediaplayerST7108.h and mediaplayerST7108.cpp

Configuring

Use " -media-backend ST7108" configure option to enable multimedia playback capability of QMH

cd /path/to/qtmediahub/
/path/to/qtmediahub/configure -media-backend ST7108

Building

Build QMH as follows

cd /path/to/qtmediahub/
make

Installing

As installation of QMH on ST7108 reference board copy entire "qtmediahub" directory so that its path is exactly same as that on build machine.

cd /path/to/
rsync -arv /path/to/qtmediahub root@<ST7108 IP Address>:/path/to/

Running QMH on Qt 4.8 (QWS)

Setup QTDIR, QWS_KEYBOARD, QWS_MOUSE_PROTO and LD_LIBRARY_PATH environment variables as follows

export QTDIR=/path/to/installed/qt-everywhere-opensource-src-4.8.0/
export QWS_KEYBOARD="LinuxInput:/dev/input/event0" //Use appropriate device node
export QWS_MOUSE_PROTO="LinuxInput:/dev/input/event1" //Use appropriate device node
export LD_LIBRARY_PATH=${QTDIR}/lib/:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:"/path/to/qtmediahub/qtmediahub-core/hub/lib/"

Rum QMH as follows to use OpenGL ES 2.0

cd /path/to/qtmediahub/
/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

Rum QMH as follows to use DirectFB

cd /path/to/qtmediahub/
/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

Rum QMH as follows to use Linux Frame Buffer

cd /path/to/qtmediahub/
/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

This category currently contains no pages or media.