Category:QtMediaHub::ST7108: Difference between revisions
No edit summary |
No edit summary |
||
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 | |||
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 15: | Line 16: | ||
== Multimedia Playback Support == | == Multimedia Playback Support == | ||
QMH uses "platform specific media player application" (in ST's case it is the Test-Tool) to have media playback facility. | 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:- | |||
## Start "Test-Tool" in background and redirect a FIFO ("/tmp/stapp_fifo2") to "Test-Tool"s STDIN | ## Start "Test-Tool" in background and redirect a FIFO ("/tmp/stapp_fifo2") to "Test-Tool"s STDIN | ||
## Redirect "Test-Tool"'s STDOUT and STDERROR to a normal file ("/tmp/stapp_log") | |||
## QMH issues commands to "platform specific media player application" to another FIFO ("/tmp/stapp_fifo") | |||
## Have an arrangement to transfer data from FIF0 ("/tmp/stapp_fifo") to FIFO ("/tmp/stapp_fifo2") | |||
## 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. | This is achieved using following shell (commands in a init) script on ST7108 reference board. | ||
<code> | <code> | ||
rm -f /tmp/stapp_fifo /tmp/stapp_fifo2 /tmp/stapp_log | |||
mkfifo /tmp/stapp_fifo | |||
mkfifo /tmp/stapp_fifo2 | |||
( source /modules/load_env.sh && /main_hdk7108_7108_ST40HOST_LINUX_32BITS.out </tmp/stapp_fifo2 >/tmp/stapp_log 2>&1 & ) | |||
sleep 1 | |||
( while [ 1 ] ; do cat /tmp/stapp_fifo >/tmp/stapp_fifo2 ; done & ) | |||
echo '' > /tmp/stapp_fifo | |||
sleep 5 | |||
</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 "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 | ||
Line 29: | Line 44: | ||
Use " -media-backend ST7108" configure option to enable multimedia playback capability of QMH | Use " -media-backend ST7108" configure option to enable multimedia playback capability of QMH | ||
<code> | <code> | ||
cd /path/to/qtmediahub/ | |||
/path/to/qtmediahub/configure -media-backend ST7108 | |||
</code> | |||
== Building == | == Building == | ||
Line 35: | Line 53: | ||
Build QMH as follows | Build QMH as follows | ||
<code> | <code> | ||
cd /path/to/qtmediahub/ | |||
make | |||
</code> | |||
== Installing == | == Installing == | ||
Line 41: | Line 62: | ||
As installation of QMH on ST7108 reference board copy entire "qtmediahub" directory so that its path is exactly same as that on build machine. | As installation of QMH on ST7108 reference board copy entire "qtmediahub" directory so that its path is exactly same as that on build machine. | ||
<code> | <code> | ||
cd /path/to/ | |||
rsync -arv /path/to/qtmediahub root@<ST7108 IP Address>:/path/to/ | |||
</code> | |||
== Running QMH on Qt 4.8 (QWS) == | == Running QMH on Qt 4.8 (QWS) == | ||
Line 47: | Line 71: | ||
Setup QTDIR, QWS_KEYBOARD, QWS_MOUSE_PROTO and LD_LIBRARY_PATH environment variables as follows | Setup QTDIR, QWS_KEYBOARD, QWS_MOUSE_PROTO and LD_LIBRARY_PATH environment variables as follows | ||
< | <code> | ||
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/" | |||
</code> | |||
Rum QMH as follows to use OpenGL ES 2.0 | Rum QMH as follows to use OpenGL ES 2.0 | ||
< | <code> | ||
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 | |||
</code> | |||
Rum QMH as follows to use DirectFB | Rum QMH as follows to use DirectFB | ||
< | <code> | ||
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 | |||
</code> | |||
Rum QMH as follows to use Linux Frame Buffer | Rum QMH as follows to use Linux Frame Buffer | ||
< | <code> | ||
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 | |||
</code> |
Revision as of 11:41, 25 February 2015
h1. 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":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
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:-
- Start "Test-Tool" in background and redirect a FIFO ("/tmp/stapp_fifo2") to "Test-Tool"s STDIN
- Redirect "Test-Tool"'s STDOUT and STDERROR to a normal file ("/tmp/stapp_log")
- QMH issues commands to "platform specific media player application" to another FIFO ("/tmp/stapp_fifo")
- Have an arrangement to transfer data from FIF0 ("/tmp/stapp_fifo") to FIFO ("/tmp/stapp_fifo2")
- 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 && /main_hdk7108_7108_ST40HOST_LINUX_32BITS.out </tmp/stapp_fifo2 >/tmp/stapp_log 2>&1 & )
sleep 1
( while [ 1 ] ; do cat /tmp/stapp_fifo >/tmp/stapp_fifo2 ; done & )
echo '' > /tmp/stapp_fifo
sleep 5
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
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.