This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Can not run two Gstreamer pipeline at the same time on EVM8168

Hello, I want to run two gst pipeline on EVM8168 develop board at the same time to test the capability of  video decoding and enconding. First, I run a pipeline in a terminal. Then I want to run a similar pipeline in another terminal, I received the following error. Can anyone tell me what's the problem. I met the same error when running the TI-OMX  examples provided in the EZSDK.

root@dm816x-evm:~# ./hello1 --gst-debug-level=2
Assertion at Line no: 1244 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 700 in /swcoe/sdk/cm/netra/arago-tmp/work/dm816x-evm-none-linux-gnueabi/ti-syslink-2_10_03_20-r4j/syslink_2_10_03_20/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed

ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe

The pipeline is just simple, "gst-launch -v filesrc location=/home/root/foreman.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" . I only change the filesrc when running another pipeline.

  • Bing,

    From a SysLink point of view, this error means that the MessageQ handle is invalid. I'm not on the GST team (maybe they can add more detail) but my guess is that you cannot run multiple instances of GST at the same time. Each instance is probably trying to create a MessageQ instance by the same name (which is not allowed). The second instance gets a create failure but is not checking for this. As a result, it calls MessageQ_getQueueId() with an invalid handle.

    For now, just run one GST instance at a time.

    ~Ramsey