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.

Using DSP and HDVICP concurrently with OMX?

I first run all OMX demo applications by its own, and they are working so far. But when trying to run them concurrently, it won't work. I tried running first
 
./decode_display_a8host_debug.xv5T -i /usr/share/ti/data/videos/dm816x_1080p_demo.264 -w 1920 -h 1080 -f 60 -g 0 -d 0 -c h264
 
and while it is playing I started  
 
./adec_snt_a8host_debug.xv5T -i /usr/share/ti/rpe/davinci.aac -o out.pcm -c aaclc -r 1 -s 44100
 
But this gives the the following error:


root@dm814x-evm:~/omx-examples-ez/adec_snt/bin/ti814x-evm# ./adec_snt_a8host_debug.xv5T -i /usr/share/ti/rpe/davinci.aac -o out.pcm -c aaclc -r 1 -s 44100
input file: /usr/share/ti/rpe/davinci.aac
output_file: out.pcm
codec: aaclc
rawFormat: 1
sampleRate: 44100
Audio Decoder example  
===============================
Assertion at Line no: 1239 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 695 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1239 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 695 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1239 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 695 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1239 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 695 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1239 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 695 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (queueId != MessageQ_INVALIDMESSAGEQ) : failed
ServiceMgr_prime: MessageQ_put failed: status = 0xfffffffe
Assertion at Line no: 1239 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Assertion at Line no: 761 in /ti-ezsdk_dm814x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/packages/ti/syslink/ipc/hlos/usr/MessageQ.c: (handle != NULL) : failed
Segmentation fault
root@dm814x-evm:~/omx-examples-ez/adec_snt/bin/ti814x-evm#

Is it possible to use the DSP and the HDVICP concurrently?

  • Hello,

    From the error It seems, that  OMX does not support multiple 'process', but within a process multiple decodes are possible. There is example in EZSDK with OMX for Decode_mosaic.

    Best Regards,

    Margarita

  • Hello Margarita,

    thanks for your fast answer. I would like to use DSP and HDVICP from different processes or at least from different threads but at the same time. E.g. using GStreamer for video pipeline (capture, encode and stream) and some other sw modules for analytics of audio should use the DSP. Even the GST Pipe should be able to use DSP for further analysiss like face detection and so on.

    So I wonder what is really possible with DM8148?

    Greetings

  • Margarita Gashova said:

    There is example in EZSDK with OMX for Decode_mosaic.

    If you mean Decode_MosaicDisplay - it doesn't use the DSP at all.

  • What you can do is to create your own OMX chain that contains VLPB ( DSP OMX component), capture, display and HDVICP OMX components.
    If you are using EZSDK ver 5.05 adding VLPB should be trivial, ow please refer to

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/144078.aspx 

  • Hello Gabi,

    I am using the Z3 8168 and I'm using Ezsdk 5.05 as well. I connected a simple case of cap->vlpb and am unable to get the output frames from the vlpb component as it gives a fill buffer error. Since the Shared Memory issue was resolved in 5.05, it should be as simple as connecting the other omx components, correct? Or was there some other piece that I am missing, such as specifically allocating memory from SR2 using memory_alloc and then using that buffer?

    Also, is this vlpb component allowed to have multiple instances as I could do with cap and dei? Or must I use the mutiple inputs and outputs?