Skip to content

DavidSoto/dm816x-gstreamer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

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


About

Gstreamer support on EVM816x

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 97.7%
  • Shell 2.2%
  • Python 0.1%