DavidSoto/dm816x-gstreamer
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Prerequisites
=============
- libOMX_Core for DM81xx needs to be installed first, since it provides libOMX_Core.so
from the EZSDK components
BUILDING ON THE EZSDK
=====================
1) Copy the libz.* libraries which is part of the linux devkit as follows -
cd ti-ezsdk_dm814x-evm_5_02_00_56/linux-devkit/arm-none-linux-gnueabi/usr/lib
mkdir .libs
cp libz.* ./.libs/
2) Change to the top level "gstreamer_ti" directory, and open the file named "Makefile.common" in your favorite editor (vi, emacs, etc.).
Set the following variables at the top of the file:
EZSDK_INSTALL_DIR: Location of your EZSDK installation directory
TARGET_ROOT_DIR: Location of the target filesystem's root directory
on the Linux host machine.
CROSS_COMPILER: Cross compiler being used. A default is chosen based
on the platform you are building for, but you can set
it explicitly to one of these values:
CS_2009Q1: CodeSourcery v2009q1
GST_TI_PLATFORM: Set the platform variable (**)
** For DM816x/DM814x set GST_TI_PLATFORM=dm816x
3) Export cross compiler location in your environment
% export PATH=<path_to_cs_installation>/arm-2009q1/bin:$PATH
4) Build the EZSDK components using the above OMX package.
% cd <path_to_your_ezsdk_installation>
% make clean
% make all
5) Execute this command from the top-level "gstreamer_ti" directory to build gstreamer packages:
% make all install VERBOSE=true
6) Copy libOMX_Core.so from gstreamer_ti/ti_build/gst-openmax/ext/lib to /lib directory on target root filesystem.
9) Copy dm816xbm_m3video.xem3 and dm816xbm_m3vpss.xem3 firmware binaries from OMX package to /usr/share/ti/ti-media-controller-utils directory on target root filesystem.
If you want less output during the build, you can omit the "VERBOSE=true"
above.
By default, the GStreamer binaries will be installed to "/opt/gstreamer" on
the target, and some demonstration scripts will be installed to
"/opt/gstreamer_demo".
RUNNING
=======
NOTES:
1) For the first time, after target bootup login as a root on target and "ldconfig" command
target# ldconfig
2) Stop the matrix application launcher before running any gstreamer pipeline using the below command
target# /etc/init.d/matrix-gui-e stop
3) Export the following environment variables -
export GST_REGISTRY=/tmp/gst_registry.bin
export LD_LIBRARY_PATH=/opt/gstreamer/lib
export GST_PLUGIN_PATH=/opt/gstreamer/lib/gstreamer-0.10
export PATH=/opt/gstreamer/bin:$PATH
export GST_PLUGIN_SCANNER=/opt/gstreamer/libexec/gstreamer-0.10/gst-plugin-scanner
4) Use the following pipeline to run an MP4/MOV file containing H.264 video and AAC audio -
gst-launch -v filesrc location=seas.mov ! qtdemux name=demux demux.audio_00 ! queue ! faad ! alsasink demux.video_00 ! queue ! nal2bytestream_h264 ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink