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.

Linux/PROCESSOR-SDK-DRA7X: How to use the cmem buffer to do decoder

Part Number: PROCESSOR-SDK-DRA7X

Tool/software: Linux

psdk:3.04   board:dra7xx

Hi, we modify the ti demo viddec3test(use cmem buffer and use API omap_bo_from_dmabuf  to construct CMEM buffer's omap_bo.) , however decoder is failed and print err below:

root@dra7xx-evm:/datafs/decoder_test#./viddec3test -s 32:1280x720 ./BSD.mp4 --fps 30
vmem_fd:5
decoder_open
0x2efc0: Opening Display..
Forcing playback rate at 30 fps.
[14542.203403] EDID block is all zeroes
using 1 connectors, 1280x720 display, multiplanar: 1
g_cur_phy_addr:9f000000  size:3686400 bo:304c8
Setting mode 1280x720 on connector 32, crtc 34
0x2efc0: Opening Demuxer..
[h264 @ 0x313b0] no frame!
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from './BSD.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp42isom
    creation_time   : 2000-01-01 00:00:06
  Duration: 00:05:01.00, start: 0.000000, bitrate: 17885 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 17884 kb/s, 30 fps, 30 tbr, 90k tbn, 180k tbc (default)
    Metadata:
      creation_time   : 2000-01-01 00:00:06
      encoder         : JVT/AVC Coding
initializing bitstream filter
0x2efc0: infile=./BSD.mp4, width=1280, height=720
0x2efc0: padded_width=1408, padded_height=816, num_buffers=12
g_cur_phy_addr:9f384000  size:3686400 bo:31ec0
Page flip: frame=12, sec=0, usec=0, remaining=0
g_cur_phy_addr:9f708000  size:1148928 bo:38bb0
g_cur_phy_addr:9f821000  size:574464 bo:38bf0
g_cur_phy_addr:9f8ae000  size:114892[14542.325514] omap-iommu 55082000.mmu: 55082000.mmu: version 2.1
 8bo:38c88
g_cur_phy_addr:9f9c7000  size:574464 bo:38cc8
g_cur_hy_addr:9fa54000  size:1148928 bo:38d60
g_cur_phy_addr:9fb6d000  size:574464 bo:38da0
g_cur_phy_addr:9fbfa000  size:1148928 bo:35d38
g_cur_phy_addr:9fd13000  size:574464 bo:35d78
g_cur_phy_addr:9fda0000  size:1148928 bo:35e10
g_cur_phy_addr:9feb9000  size:574464 bo:35e50
g_cur_phy_addr:9ff46000  size:1148928 bo:35ee8
g_cur_phy_addr:a005f000  size:574464 bo:35f28
g_cur_phy_addr:a00ec000  size:1148928 bo:35fc0
g_cur_phy_addr:a0205000  size:574464 bo:35990
g_cur_phy_addr:a0292000  size:1148928 bo:35a28
g_cur_phy_addr:a03ab000  size:574464 bo:35a68
g_cur_phy_addr:a0438000  size:1148928 bo:35b00
g_cur_phy_addr:a0551000  size:574464 bo:35b40
g_cur_phy_addr:a05de000  size:1148928 bo:35bd8
g_cur_phy_addr:a06f7000  size:574464 bo:35c18
g_cur_phy_addr:a0784000  size:1148928 bo:36880
g_cur_phy_addr:a089d000  size:574464 bo:368c0
g_cur_phy_addr:a092a000  size:1148928 bo:36958
g_cur_phy_addr:a0a43000  size:574464 bo:36998
g_cur_phy_addr:a0ad0000  input_sz:921600 bo:36a40
0x2efc0: Opening Engine..
542.384600] rpmsg_rpc rpmsg-dce: error from rproc_pa_to_da, rproc = d393d800, pa = 0x00000000a0ad0000 ret = -22
idsplayBufsMode: 1
[14542.453286] rpmsg_rpc rpmsg-dce: unwinding UVA to RDA translations! translation = 0
[14542.462682] rpmsg_rpc rpmsg-dce: failed to translate all pointers for remote core!
mMRpc_call: Error: write failed
ERROR:decoder_process:696: 0x2ef0: process returned error: -5
ERROR:decoder_process:697: 0x2efc0: extendedError: 00000000
../git/libdce.c:965:    process ERROR: Failed eError == DCE_EOK error val -5root@dra7xx-evm:/datafs/decoder_test#