• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Embedded Software » Linux » Linux forum » GStreamer Media Player problems
Share
Linux
  • Forum
Options
  • Subscribe via RSS

GStreamer Media Player problems

GStreamer Media Player problems

This question is not answered
Cheng Ling
Posted by Cheng Ling
on Apr 10 2012 05:06 AM
Prodigy120 points

Hi, All:

I am building a QT media player based on GStreamer on DM8148 EVM platform. My EZSDK version is 5.03.01.15.

This QT media player PC version works fine on Ubuntu system. On DM8148 platform, it can do basic video playback, but has many problems.

In DM814x_EZ_Software_Developers_Guide.pdf, the GStreamer sample uses command line:

# gst-launch -v filesrc location=/usr/share/ti/data/videos/dm816x_1080p_demo.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

It only support H264 video, but I need the media player can auto detect media format and load proper plugins. So I am using playbin2 plugin.

If use gst-launch to simulate my media player,  the command likes:

# gst-launch playbin2 uri=file:///home/media/2.mp4 video_sink='videoscale!'video/x-raw-yuv,width=800,height=600'!autovideosink'     // I can not use omx_scaler plugin in this command line. I don't know why.

It can playback video properly. But the program hang when I do these operations:

1. Resize the output resolution.

    On the PC, I can change the parameters when the state is GST_STATE_NULL or GST_STATE_READY, but on the EVM board, I can not do it.

2. Adjust the progress.

    I am using gst_element_seek() function.

3. Stop.

    Now I can let it work after change the state sequentially: GST_STATE_PLAYING -> GST_STATE_PAUSE -> GST_STATE_READY -> GST_STATE_NULL. If I change the state from GST_STATE_PLAYING to any state except GST_STATE_PAUSE, the program hang.

When the program hang, no error message output. If I "kill" the program, the program can not be killed and the status change to "Z". In this case, if I start gst-lanuch command again, I got messages like these:

----------------------------------------------------------------

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
ServiceMgr_rxThreadFxn: bind() failed with errno = 98
Assertion at Line no: 766 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Caught SIGSEGV accessing address 0xe
Spinning. Please run 'gdb gst-launch 1281' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm814x-evm-none-linux-gnueabi/ti-syslink-2_00_05_85-r1i/syslink_2_00_05_85/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_stop: MessageQ_put failed: status = 0xfffffffe

----------------------------------------------------------------

Seems have problems on syslink side. I have no idea how to fix it.

 

Any suggestion is welcome. Thanks!

GStreamer
Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • raormanrat
    Posted by raormanrat
    on Apr 10 2012 15:54 PM
    Intellectual930 points

    Hi,

    The assertion is indeed from Syslink layer:  a call to MessageQ_put() call passing a NULL messageQ handle.

    The source of the issue, however should lie somewhere above syslink on the s-w stack. It looks like "ServiceMgr_prime" is issuing the put calls.

    THere is not much more information here to work with, see if you can narrow it down with a stack trace, and isolate the issue more.

    Murat

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Cheng Ling
    Posted by Cheng Ling
    on Apr 22 2012 13:33 PM
    Prodigy120 points

    Hi, 

    I spent many time on this problem but no more progress.

    I check out and compile the GStreamer latest version and the version used in EZSDK 5.03. But even worse, they can only play audio, video player does not work. 

    I ported gdb(no gdbserver) to the board, but when the program hang(I adjust the output resolution or playback progress), I can not get any error message. 

    Do you have any suggestion for how to debugging this? For this problem, which part source code I should take a look?

    Thanks!

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Pushpa Latha
    Posted by Pushpa Latha
    on Apr 24 2012 06:48 AM
    Prodigy140 points

    Hi,

           I am trying to build Gstreamer on EZSDK 5.03, but i am facing some problems while build is happening inside "gstreamer_ti_dm81xx/ti_build/gst-openmax/ext". It is throwing the following error.

    Making install in ext
    make[4]: Entering directory `/home/pushpa/gstreamer_ti_dm81xx/ti_build/gst-openmax/ext'
      CCLD   lib/libOMX_Core.so
    /bin/sh: line 6: /home/pushpa/ti-ezsdk_dm814x-evm_5_03_01_15/component-sources/omx_05_02_00_30/lib/omxobjs/obj/ti814x-evm/a8host/debug/omxcore_cfg.ov5T: cannot execute binary file
    /bin/sh: line 8: /home/pushpa/ti-ezsdk_dm814x-evm_5_03_01_15/component-sources/omx_05_02_00_30/lib/omxobjs/obj/ti814x-evm/a8host/debug/domx_cfg.ov5T: cannot execute binary file
    /bin/sh: line 11: /home/pushpa/ti-ezsdk_dm814x-evm_5_03_01_15/component-sources/omx_05_02_00_30/lib/omxobjs/obj/ti814x-evm/a8host/debug/memtbl_cfg.ov5T: cannot execute binary file
    /bin/sh: line 19: /home/pushpa/ti-ezsdk_dm814x-evm_5_03_01_15/component-sources/omx_05_02_00_30/lib/omxobjs/obj/ti814x-evm/a8host/debug/domxProxyWrappers.ov5T: cannot execute binary file
    /bin/sh: line 24: /home/pushpa/ti-ezsdk_dm814x-evm_5_03_01_15/component-sources/omx_05_02_00_30/lib/omxobjs/obj/ti814x-evm/a8host/debug/domx_delegates_shmem_cfg.ov5T: cannot execute binary file
    make[4]: *** [all] Error 126
    make[4]: Leaving directory `/home/pushpa/gstreamer_ti_dm81xx/ti_build/gst-openmax/ext'
    make[3]: *** [install-recursive] Error 1

    Thanks,

    Pushpa

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • sandeep gholap
    Posted by sandeep gholap
    on Jul 16 2012 04:08 AM
    Prodigy75 points

    Hello Cheng,

     

    I am facing same problem with gstreamer and EZSDK 5.03. I am not able to change the state of playback(Pause to play or NULL to play) or adjust the output position or resolution.

    Please help me in solving the above problem.

    Thanks and Regards,
    Sandeep Gholap

    GStreamer DM814x openMAX: Syslink
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Cheng Ling
    Posted by Cheng Ling
    on Jul 16 2012 11:57 AM
    Prodigy120 points

    Hi, Gholap:

    Actually, I have no progress on this problem. Fortunately, our project move to TI RDK. It is a Ubuntu based system for EVM 814x platform. The GStreamer works fine on it. But to get RDK, you need contact TI support and sign NDA. 

    Please read this post: http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/t/197022.aspx. I think it hard to get TI support on 814x platform in the future.

    Regards

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use