summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorharinarayan <harinarayan@24075187-2e39-4e88-bbb8-bc8aa768f540>2011-10-20 12:14:40 +0000
committerharinarayan <harinarayan@24075187-2e39-4e88-bbb8-bc8aa768f540>2011-10-20 12:14:40 +0000
commit98a0ae78f99a7c4607a87d2f5e627d597830d2b6 (patch)
tree4c4498c9e9adc3b4c16fc991ebfdb5ee41281295
parent9fde75b012767b00b7b92f5c4f8e001b3ad0a7c9 (diff)
Updated example gstreamer pipelines for dm81xx
git-svn-id: https://gstreamer.ti.com/svn/gstreamer_ti/trunk@974 24075187-2e39-4e88-bbb8-bc8aa768f540
-rw-r--r--gstreamer_ti_dm81xx/RELEASE_NOTES.TXT364
-rw-r--r--gstreamer_ti_dm81xx/gstreamer_demo/dm814x/example_pipeline.sh27
-rw-r--r--gstreamer_ti_dm81xx/gstreamer_demo/dm816x/example_pipeline.sh27
3 files changed, 50 insertions, 368 deletions
diff --git a/gstreamer_ti_dm81xx/RELEASE_NOTES.TXT b/gstreamer_ti_dm81xx/RELEASE_NOTES.TXT
index 279790b..9a476a3 100644
--- a/gstreamer_ti_dm81xx/RELEASE_NOTES.TXT
+++ b/gstreamer_ti_dm81xx/RELEASE_NOTES.TXT
@@ -1,371 +1,11 @@
-Release 1.02
-============
+Release
+=======
New Features
------------
- DM365 Support:
- - Tracker 976 - Support for the video/x-xvid mime type
-
- DVSDK Support:
-
- General:
- - Tracker 966 - Update open-source base components
- - Tracker 997 - Add "encodingPreset" property in encoder elements
- - Tracker 1009 - Add support for MPEG-4 video inside quicktime container
- - Tracker 1012 - videnc: add support for generating packetized/byte stream
- - Tracker 1031 - Resolve build issues when using the CodeSourcery 2009q1
- toolset
- - Tracker 1055 - Add support for DVSDK 3.10
- - Tracker 1070 - Add support for new DSPLink directory structure
- - Tracker 1087 - Add support for new DSPLink directory structure in
- Makefile.external
- - Tracker 1089 - Build all components with -O2 by default
- - Tracker 1094 - Add v4l2src support for the latest GIT kernels in
- gst-plugins-g ood-0.10.16
- - Tracker 1096 - Add support for the NV16 colorspace in TIVidenc1
- - Tracker 1097 - Add support for the NV16 colorspace in TIDmaiVideoSink
- - Tracker 1098 - Add support for the NV16 colorspace in TIVidResize
- - Tracker 1099 - Add support for the 1080P_60 video standard in
- TIDmaiVideoSink
- - Tracker 1120 - Remove DM357 support
- - Tracker 1126 - Create and integrate a new "TIDmaiBufTab" buffer table
- object
- - Tracker 1127 - Remove support for xDM 0.9-based codecs
- - Tracker 1128 - Add support for user-allocated buffers in TIDmaiVideoSink
- - Tracker 1139 - Add a property to hide the OSD on DM365/DM6446/DM355
- during video playback.
- - Tracker 1160 - Add TIAuddec1 support for decoding AC3 audio streams
- - Tracker 1163 - Add parameter to gst_ti_calc_buffer_size that specifies
- pitch (bytes per line)
- - Tracker 1165 - Remove MontaVista 4.0.1 configuration from Makefile.common
- - Tracker 1167 - DVSDK 3.10 Support for DM6467T
- - Tracker 1168 - DVSDK 3.10 Support for DM365
- - Tracker 1169 - DVSDK 3.10 Support for DM355
-
-
-Fixed Issues
-------------
- - Tracker 962 - DM355 JPEG corruption in the lower right corner
- - Tracker 970 - dmai-perf inaccuracy in fps and bps calculation
- - Tracker 1001 - Handle the case when audio decoder outputs zero byte
- - Tracker 1010 - rtph264pay may cause alignment trap signal
- - Tracker 1015 - Do not abort the decoder thread when codec reports an
- error or bit error
- - Tracker 1016 - playbin2 fixes
- - Tracker 1018 - dmaivideosink: enable the resizer support
- - Tracker 1020 - dmaivideosink: use GST_ELEMENT_ERROR instead of GST_ERROR
- - Tracker 1067 - Fix liboil preprocessor checks
- - Tracker 1068 - Change format of patches for dependent components to match
- review process
- - Tracker 1073 - Always return NULL for the base sink's last-buffer property
- - Tracker 1088 - Remove --force-mem option when building libmad with -O2
- - Tracker 1090 - Add clean_dev and clean_docs makefile targets
- - Tracker 1091 - Fix typos in error messages
- - Tracker 1092 - Fix assertion failure in TIImgenc1
- - Tracker 1093 - Don't error out if DMAI_INSTALL_DIR is set by Rules.make.
- - Tracker 1095 - Correct size metadata imgdec1->hInBuf prior to calling the
- code c
- - Tracker 1100 - Remove DM365 guard for NV12 fourcc check
- - Tracker 1101 - Create source caps information for MPEG-2 streams in
- TIVidenc1
- - Tracker 1102 - Add support for the DivX and XviD mime types in TIViddec2
- - Tracker 1103 - Add GST_TI_PLATFORM variable to replace previous usage of
- PLATFORM
- - Tracker 1113 - Corrected TI Copyright notices (replaced $year with proper
- years)
- - Tracker 1114 - DM365: Leave the IPIPE open during UYVY capture
- - Tracker 1115 - Force the TIViddec2 frameRate property to override
- upstream caps
- - Tracker 1116 - Fix duration query in TIAuddec1
- - Tracker 1121 - Remove v4l2 patch that resets bytesperline to 0
- - Tracker 1122 - Correct the way source caps information is generated in
- TIViddec2
- - Tracker 1123 - Add static declaration for gst_tidmaivideosink_process_caps
- - Tracker 1124 - Remove GST_TIDMAIVIDEOSINK_CAST macro
- - Tracker 1125 - Push all display initialization code into
- gst_tidmaivideosink_init_display
- - Tracker 1140 - Fix assertion failures when generating debug log
- information
- - Tracker 1141 - Declare all useMask _FREE flags in
- gsttidmaibuffertransport.h
- - Tracker 1159 - TIViddec1's resolution property should override caps
- settings
- - Tracker 1161 - Detect audio/mpeg, mpegversion=2 as AAC
- - Tracker 1162 - Make sure capture buffer size is aligned on DM365
- - Tracker 1165 - Specify explicit pitch when allocating user buffers in
- TIDmaiVideoSink
- - Tracker 1172 - Fix race condition in GstTIDmaiBufTab
- - Tracker 1189 - Use DMAI_INSTALL_DIR defined in DVSDK Rules.make
- - Tracker 1190 - Export CROSS_COMPILE/PLATFORM_XDC environment variables
- needed by cfg
- - Tracker 1203 - Fix intermittent assertion failure in circular buffer
Known Issues
------------
-Release 1.02:
- - Tracker 1205 - Without kernel real-time patch, A/V decode on DM355 may
- not play smoothly
- - Tracker 1206 - On DM355, video decode to frame buffer is not a supported
- configuration
- - Tracker 1209 - Need to use YUV420P color space instead of UYVY when doing
- JPEG encode
- - Tracker 1220 - Specify the capture resolution to reduce memory
- requirements
- - Tracker 1222 - DM6467 doesn't support AAC encode
- - Tracker 963 - MPEG4 decoding crashes
- - Tracker 808 - [PATCH] Fix bug#798
- - Tracker 1204 - gsttidmaiperf CPU's workload issue solved for single core
- platforms
-
-
-
-Release 1.01
-============
-
-New Features
-------------
- DM365 Support:
- - Tracker 678 - Preliminary decode support.
- - Tracker 918 - Capture support via v4l2src.
- - Tracker 921 - Set TIDmaiVideoSink colorspace based on input buffer.
- - Tracker 925 - Video encode support.
- - Tracker 933 - Enhance video encoder to use hardware-accelerated frame
- copy into circular buffer.
- - Tracker 947 - General refinements to loadmodules.sh.
- - Tracker 948 - Only adjust display buffer color space for non-DMAI input
- buffers (refine tracker 921).
- - Tracker 954 - Add new method for displaying frames multiple times without
- additional frame copies.
- - Tracker 955 - Adjustments to loadmodules.sh for H.264.
-
- DVSDK Support:
- - Tracker 760 - Add support for DVSDK 2.00.00.22 on DM6446, DM355, and
- DM6467.
- - Tracker 824 - Add support for DVSDK 3.00.02.44 on OMAP35x.
-
- General:
- - Tracker 700 - Plugin can be built with either libtool 1.5.x or 2.2.x.
- - Tracker 714 - Make the configure --host argument configurable from the
- "make".
- - Tracker 773 - Upgrade open source software components to the latest
- versions available on June 12th, 2009.
- - Tracker 848 - Plugin can be configured to always load codec server from a
- fixed location.
- - Tracker 926 - Add support for xDM 1.x audio encoders.
- - Tracker 941 - Add the "TIVidResize" element for resizing video.
- - Tracker 953 - Add the "dmaiperf" DMAI-based performance data gathering
- element.
- - Tracker 956 - Only build open source packages that don't change once.
- - Tracker 969 - Remove demo scripts from gstreamer_demo directory. Example
- pipelines are now available at
- http://wiki.davincidsp.com/index.php/Example_GStreamer_Pipelines
-
-
-Fixed Issues
-------------
- - Tracker 198 - GStremer 0.10.15 introduces a major performance degradation.
- - Tracker 272 - Assertion while playing h264 elementry stream (fixed in
- tracker 807).
- - Tracker 309 - Decodebin and playbin not working.
- - Tracker 496 - TIAuddec1 and TIViddec2 leaking memory during state
- transition from PLAYING to NULL (fixed in tracker 745).
- - Tracker 519 - TIAuddec1 and TIViddec2 leaking memory at EOS (fixed in
- tracker 745).
- - Tracker 716 - Destroy custom thread attribute object after we're done
- using it.
- - Tracker 717 - Fix TIAuddec memory leak.
- - Tracker 744 - Fix free memory read during error check.
- - Tracker 745 - Fix memory leak during the destruction of
- TIDmaiBufferTransport.
- - Tracker 770 - Assertions when playing back H.264 video (fixed in tracker
- 807).
- - Tracker 787 - Correct cmem output ownership waiting until fully released
- before de-allocating them.
- - Tracker 797 - Handle problematic downstream elements, like playbin that
- don't unref sink buffers at EOS.
- - Tracker 807 - If no NAL prefix code for h264 decode, then parse
- codec_data to construct NAL header.
- - Tracker 845 - TIViddec2 crashes when it on EOS after decode_thread stops
- the codec.
- - Tracker 912 - Remove the queue thread from all elements. This resolves
- some potential issues on EOS.
- - Tracker 913 - Guarantee that the input buffer is always unref'd by
- creating single exit point in *_chain functions.
- - Tracker 914 - Guarantee that the circular buffer will not be accessed
- during shut-down.
- - Tracker 915 - Since other threads may be checking the circular buffer
- pointer, set the circular buffer pointer to NULL before
- unref'ing it.
- - Tracker 916 - When calling drain_pipeline, set drainingEOS to TRUE AFTER
- the check for codec exists.
- - Tracker 919 - Add error checking to circular buffer API's.
- - Tracker 924 - Circular buffer allocation fix for TIAuddec and TIAuddec1.
- - Tracker 929 - Replace GST_ERROR function with GST_ELEMENT_ERROR in all
- elements.
- - Tracker 934 - Work around DMAI 1.20.00.06 defect in non-accelerated frame
- copy for YUV420PSEMI data.
- - Tracker 940 - Enable hardware-accelerated frame copy when encoder is
- receiving dmai transport buffer.
- - Tracker 945 - Set parent_class in gst_tidmaivideosink_class_init().
- - Tracker 967 - Codec fails to initialize when encoding from a file with no
- caps negotiation.
- - Tracker 964 - Changes to remove queue thread caused memory leak with
- packetized h.264 streams (refine tracker 912).
- - Tracker 959 - AAC decoding crashes while running gst-launch pipeline.
- - Tracker 957 - Fix printf formatting warnings that were causing build
- failures.
- - Tracker 958 - Improved clean target so it doesn't fail if the
- configuration step hasn't been performed.
- - Tracker 874 - Update codec table to add video encoder strings.
- - Tracker 871 - v4l2src: Fix frame rate numerator and denominator values.
- - Tracker 858 - Delete temporary buffer created in circular buffer during
- video encode process.
-
-
-Known Issues
-------------
-
-Release 1.01:
- - Tighter memory constraints in OMAP35x may cause OOM killers in
- some cases. See the README.TXT for information on modifying
- bootarg settings to make more memory available to the system.
- - If you don't have "gperf" installed on your system, it may manifest
- as a mysterious run issue with libid3tag involving unresolved
- symbols (something like "undefined symbol: id3_frametype_unknown").
- The gperf package that comes with RHEL 4.6 is sufficient, but you need
- to make sure it is installed.
- - The JPEG image elements support multiple color spaces. However,
- not every codec supports every color space. If you specify a
- color space that is not supported you will get an error message
- indicating that the plugin failed to create the codec. Check
- the codec user's guide to determine if your codec supports the
- color spaces used for the input and output.
- - If clip size is smaller and TIDmaiVideoSink element reports
- "assertion" then try disabling hardware-accelerated frame-copies. This
- can be disabled by specifying accelFrameCopy=FALSE for TIDmaiVideoSink.
- Note: disabling hardware-accelerated frame-copies will affect
- performance.
- - Tracker 972 - AVI video playback crash in VGA video standard.
- When playing an AVI file with VGA video standard, it plays ok
- the first time it runs, the second time it crashes.
- - The plugin will not build on DM357 unless you upgrade the version of
- DMAI in DVSDK 2.05 to DMAI 1.20.00.06. More information is available
- in the README.TXT.
-
-
-Trackers unresolved for release 1.01 scheduled for next release
-
- - Tracker 970 - dmai-perf inaccuracy in fps and bps calculation.
- - Tracker 966 - Update open-source base components.
- - Tracker 903 - DMAI video encoder support refactor.
- - Tracker 867 - Improve video encoders timestamp handling.
- - Tracker 532 - Buffers used during for decoding uses fixed sizes buffers.
- - Tracker 881 - Changing the video Output to use from LCD to DVI crashes
- the system.
-
-
-Trackers for defects in other non-plugin software components
-
- - Tracker 965 - Building gst-plugins-good-0.10.15 with X11 development
- headers installed on host machine fails.
- - Tracker 968 - 1: command not found when building DM357 DVSDK.
- - Tracker 930 - gstticodecplugin should fail to initialize if
- CERuntime_init() fails.
-
-
-Trackers unresolved for release 1.01
-
- - Tracker 974 - Video playback freezes with H264 and MPEG2 (1080i test)
- - Tracker 971 - Video playback freezes
- - Tracker 963 - MPEG4 decoding crashes
- - Tracker 962 - Blockiness on encoded image
- - Tracker 960 - MP4 decoding crashes when using accelerated frame copy
- - Tracker 893 - TIViddec2 buffer processing thread takes about one minute
- before invoking the decoder thread
- - Tracker 883 - If GStreamer is killed forcibly, the process becomes a
- zombie in DVSDK 3.00.00.40
- - Tracker 870 - BUG: TIViddec2 crashes on transition from PLAYING to NULL
- during playback
- - Tracker 194 - Figure out why open source AVI demuxer crashes on really
- large clips
- - Tracker 200 - GLib 2.14.1 introduces code that crashes DM6446
- - Tracker 250 - about playback stalls problem during playing
- - Tracker 274 - H.264 Quality with TIViddec2 is poor on DM6467
- - Tracker 342 - Lip Sync missing in Audio and Video
- - Tracker 498 - TIDmaiVideoSink fails if DISPLAY_WIDTH - VIDEO_WIDTH is not
- a multiple of 32
- - Tracker 521 - TIViddec2 / TIAuddec1 audio / video get out of sync after
- long MP4 playback
- - Tracker 523 - Can not play back captured H264 stored in MP4 with common
- players
- - Tracker 525 - H264 encoded AVI file doesn't play on common players
- - Tracker 677 - Multiple Pipelines
- - Tracker 484 - Patches to support MP4/H.264/AAC encode on OMAP3 platform
- { PSP 1.0.2/DVSDK 3.00.00.29}
- - Tracker 808 - [PATCH] Fix bug#798
- - Tracker 196 - Remove #if defined(Platform_omap3530) preprocessor macros
- from display sink
- - Tracker 267 - Analyze memory usage on all platforms and define reasonable
- default CMEM pools.
- - Tracker 412 - Provide benchmarking numbers with the GStreamer release
- - Tracker 457 - Add support for contiguous input buffers to image encoders
- - Tracker 505 - Create one codec combo for encode and decode
- - Tracker 840 - MPEG4(AAC) audio stream not played by aachedec. Is played
- properly with libfaad
-
-
-
-
-Release 1.00
-============
-
-
-New Features
-------------
- - Added support for video encoding elements TIVidenc and TIVidenc1.
- These elements support the DM355, DM6446, DM357, DM367 and
- OMAP35x devices.
- - Patches for v4l2src element in the GST good plugin collection
- - Patch 503 Support decodebin and playbin
-
-
-Fixed Issues
-------------
- - Patch 499 Fix memory leak during Fifo flush
- - Patch 506 Fix data type mismatch int / bool for resizer and
- autoselect properties in TIDmaiVideoSink
- - Bug 303 Playback of audio and video increments VmallocUsed
- - Bug 389 Memory leak in gsttividdec.c and gsttiauddec.c
- (and probably others)
- - Bug 707 Decode of mp4 file plays back with skips
-
-
-Known Issues
-------------
- - Video encode is not supported on DM6467. DM6467 requires DMAI
- version at least 1.20.00.06 which is meant to be used with
- DVSDK 2.00. Official support for video encoding on DM6467
- will be added when DVSDK 2.00 is released. For customer that
- already have DVSDK 2.00 you can upgrade the DMAI version in
- order to use the video encoder.
- - If you don't have "gperf" installed on your system, it may manifest
- as a mysterious run issue with libid3tag involving unresolved
- symbols. The gperf package that comes with RHEL 4.6 is sufficient,
- but you need to make sure it is installed.
- - The JPEG image elements support multiple color spaces. However,
- not every codec supports every color space. If you specify a
- color space that is not supported you will get an error message
- indicating that the plugin failed to create the codec. Check
- the codec user's guide to determine if your codec supports the
- color spaces used for the input and output.
- - If clip size is smaller and dmaivideosink element reports
- "assertion" then try disabling hw accelerated framecopy. This can
- be disabled with -c option in scripts. Note: disabling hw accel
- framecopy will affect performance.
- - H264 encoded video from TIVidenc works with VLC if it has a
- file extension of .264. In the 1.00.00 release, it was
- incorrectly stated there was a problem playing H264 files
- with VLC.
diff --git a/gstreamer_ti_dm81xx/gstreamer_demo/dm814x/example_pipeline.sh b/gstreamer_ti_dm81xx/gstreamer_demo/dm814x/example_pipeline.sh
index ce1a6c5..2868b26 100644
--- a/gstreamer_ti_dm81xx/gstreamer_demo/dm814x/example_pipeline.sh
+++ b/gstreamer_ti_dm81xx/gstreamer_demo/dm814x/example_pipeline.sh
@@ -8,10 +8,13 @@ export PATH=/opt/gstreamer/bin:$PATH
export GST_PLUGIN_SCANNER=/opt/gstreamer/libexec/gstreamer-0.10/gst-plugin-scanner
# pipeline decode elemenatry H.264 stream
-gst-launch filesrc location=sample.264 ! typefind ! h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink sync=false -v
+gst-launch -v filesrc location=sample.264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! omx_videosink sync=false
-# pipeline to decode MP4 container (H.264 + AAC). Note that currently AV is disabled.
-gst-launch -v filesrc location=sample.mp4 ! qtdemux name=demux demux.audio_00 ! queue max-size-buffers=8000 max-size-time=0 max-size-bytes=0 ! faad ! alsasink sync=false demux.video_00 ! queue ! nal2bytestream_h264 ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink sync=false
+# pipeline to decode MP4 container (H.264 + AAC)
+gst-launch filesrc location="sample.mp4" ! 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 ! omx_videosink
+
+# pipeline to decode H.264 video streamed over RTSP/RTP
+gst-launch rtspsrc location=rtsp://172.24.190.113:8557/PSIA/Streaming/channels/2?videoCodecType=H.264 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! omx_videosink sync=false
# pipeline to display the videotest pattern using omx sink
gst-launch -v videotestsrc ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! omx_videosink sync=false
@@ -31,3 +34,21 @@ gst-launch -v videotestsrc num-buffers=1000 ! omx_h264enc ! filesink location=sa
# play mp4 using playbin2
gst-launch playbin2 uri=file:///home/root/sample.mp4 -v
+# play mpeg2 ts file with MPEG-2 HD video and AC3 audio (progressive content)
+gst-launch -v filesrc location=sample.ts typefind=true ! ffdemux_mpegts name=demux demux.video_00 ! queue ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink demux.audio_00 ! queue ! ffdec_ac3 ! alsasink
+
+# play mpeg2 ts file with MPEG-2 HD video and AC3 audio (interlaced content)
+gst-launch -v filesrc location=sample.ts typefind=true ! ffdemux_mpegts name=demux demux.audio_00 ! queue ! ffdec_ac3 ! alsasink demux.video_00 ! queue ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080I_60 ! gstperf ! omx_videosink display-mode=OMX_DC_MODE_1080I_60
+
+# play DVD video (VOB) ts file with MPEG-2 video and MPEG1-L2 audio (interlaced content)
+gst-launch -v filesrc location=sample.VOB typefind=true ! ffdemux_mpeg name=demux demux.video_00 ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080I_60 ! gstperf ! omx_videosink display-mode=OMX_DC_MODE_1080I_60 demux.audio_00 ! ffdec_mp3 ! alsasink
+
+# play MPEG-2 elementary stream using V4L2 sink
+gst-launch -v filesrc location=sample.m2v typefind=true ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! v4l2sink
+
+# Mosaic 4 decoded H.264 elementary streams from file input, each of 1280x720 size, into one video output stream of 1270x720 size
+gst-launch omx_videomixer port-index=0 name=mix ! v4l2sink userpointer=true filesrc location=sample_1.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix. filesrc location=sample_2.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix. filesrc location=sample_3.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix. filesrc location=sample_4.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix.
+
+# Mosaic 4 decoded H.264 elementary streams from a RTP streaming source, each of 1280x720 size, into one video output stream of 1270x720 size
+gst-launch omx_videomixer port-index=0 name=mix ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink sync=false rtspsrc location=rtsp://172.24.137.15:5554/Test ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix. rtspsrc location=rtsp://172.24.137.15:5554/Test1 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix. rtspsrc location=rtsp://172.24.137.15:5554/Test2 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix. rtspsrc location=rtsp://172.24.137.15:5554/Test3 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix.
+
diff --git a/gstreamer_ti_dm81xx/gstreamer_demo/dm816x/example_pipeline.sh b/gstreamer_ti_dm81xx/gstreamer_demo/dm816x/example_pipeline.sh
index ce1a6c5..2868b26 100644
--- a/gstreamer_ti_dm81xx/gstreamer_demo/dm816x/example_pipeline.sh
+++ b/gstreamer_ti_dm81xx/gstreamer_demo/dm816x/example_pipeline.sh
@@ -8,10 +8,13 @@ export PATH=/opt/gstreamer/bin:$PATH
export GST_PLUGIN_SCANNER=/opt/gstreamer/libexec/gstreamer-0.10/gst-plugin-scanner
# pipeline decode elemenatry H.264 stream
-gst-launch filesrc location=sample.264 ! typefind ! h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink sync=false -v
+gst-launch -v filesrc location=sample.264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! omx_videosink sync=false
-# pipeline to decode MP4 container (H.264 + AAC). Note that currently AV is disabled.
-gst-launch -v filesrc location=sample.mp4 ! qtdemux name=demux demux.audio_00 ! queue max-size-buffers=8000 max-size-time=0 max-size-bytes=0 ! faad ! alsasink sync=false demux.video_00 ! queue ! nal2bytestream_h264 ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink sync=false
+# pipeline to decode MP4 container (H.264 + AAC)
+gst-launch filesrc location="sample.mp4" ! 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 ! omx_videosink
+
+# pipeline to decode H.264 video streamed over RTSP/RTP
+gst-launch rtspsrc location=rtsp://172.24.190.113:8557/PSIA/Streaming/channels/2?videoCodecType=H.264 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! omx_videosink sync=false
# pipeline to display the videotest pattern using omx sink
gst-launch -v videotestsrc ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! omx_videosink sync=false
@@ -31,3 +34,21 @@ gst-launch -v videotestsrc num-buffers=1000 ! omx_h264enc ! filesink location=sa
# play mp4 using playbin2
gst-launch playbin2 uri=file:///home/root/sample.mp4 -v
+# play mpeg2 ts file with MPEG-2 HD video and AC3 audio (progressive content)
+gst-launch -v filesrc location=sample.ts typefind=true ! ffdemux_mpegts name=demux demux.video_00 ! queue ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink demux.audio_00 ! queue ! ffdec_ac3 ! alsasink
+
+# play mpeg2 ts file with MPEG-2 HD video and AC3 audio (interlaced content)
+gst-launch -v filesrc location=sample.ts typefind=true ! ffdemux_mpegts name=demux demux.audio_00 ! queue ! ffdec_ac3 ! alsasink demux.video_00 ! queue ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080I_60 ! gstperf ! omx_videosink display-mode=OMX_DC_MODE_1080I_60
+
+# play DVD video (VOB) ts file with MPEG-2 video and MPEG1-L2 audio (interlaced content)
+gst-launch -v filesrc location=sample.VOB typefind=true ! ffdemux_mpeg name=demux demux.video_00 ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! omx_ctrl display-mode=OMX_DC_MODE_1080I_60 ! gstperf ! omx_videosink display-mode=OMX_DC_MODE_1080I_60 demux.audio_00 ! ffdec_mp3 ! alsasink
+
+# play MPEG-2 elementary stream using V4L2 sink
+gst-launch -v filesrc location=sample.m2v typefind=true ! mpegvideoparse ! omx_mpeg2dec ! omx_scaler ! v4l2sink
+
+# Mosaic 4 decoded H.264 elementary streams from file input, each of 1280x720 size, into one video output stream of 1270x720 size
+gst-launch omx_videomixer port-index=0 name=mix ! v4l2sink userpointer=true filesrc location=sample_1.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix. filesrc location=sample_2.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix. filesrc location=sample_3.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix. filesrc location=sample_4.h264 ! 'video/x-h264' ! h264parse access-unit=true ! omx_h264dec ! mix.
+
+# Mosaic 4 decoded H.264 elementary streams from a RTP streaming source, each of 1280x720 size, into one video output stream of 1270x720 size
+gst-launch omx_videomixer port-index=0 name=mix ! omx_ctrl display-mode=OMX_DC_MODE_1080P_60 ! gstperf ! omx_videosink sync=false rtspsrc location=rtsp://172.24.137.15:5554/Test ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix. rtspsrc location=rtsp://172.24.137.15:5554/Test1 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix. rtspsrc location=rtsp://172.24.137.15:5554/Test2 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix. rtspsrc location=rtsp://172.24.137.15:5554/Test3 ! rtph264depay ! h264parse access-unit=true ! omx_h264dec ! mix.
+