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.

DM365 DVSDK support 1080p encoding?

Hi !

I try it modify dvsdk_demos_2_10_01_18 and dvsdk_3_10_00_16 encoding 1080p.

but resolutions are encoding  error... 
(dvsdk encode module 2 error - Memoey Size Error, DVSDK code resolution 720P)
-> Error message
   target$./encode -v test_mpeg2.mpeg2 -r 1920x1056
   ...
   ...
   CMEMK Error: Failed to find a pool which fits 3041280
   CMEM Error: getPool: Failed to get a pool fitting a size 3041280
   Failed to allocate memory

   * I tryed loadmodule.sh add memoey Size 3041280

I need used supports dvsdk  encoding (MPEG2/MPEG4) 1080p.

  • One possibility is that the pool of size 3041280 is being selected for pool-based allocations that are smaller.  CMEM will do a "best fit" when selecting the pool for a given size, and in doing so it will fallback to pools with larger sizes if the pool that would otherwise be the "best fit" were empty.  For example, let's say you have, for the sake of argument, pool #1 with 1 buffer of size 0x1000 and pool #2 with 1 buffer of size 0x100000.  If you request 2 buffers of size 0x1000, pool #1 will be chosen for the first request of 0x1000 and pool #2 would be chosen for the 2nd request of 0x1000.  If you then request a buffer of 0x100000 then the allocation will fail.

    In order to determine you pool/buffer needs, you should set the CE_DEBUG environment variable to 2 and track (observe) the calls to CMEM_alloc():
        % export CE_DEBUG=2
        % ./encode ... > ce_output.txt
        % grep CMEM_alloc output.txt
         [t=0x00005e4b] [tid=0x4001db30] ti.sdo.ce.osal.Memory: [+4] Memory_contigAlloc> CMEM_alloc(1024) = 0x4001f000.
         [t=0x00006183] [tid=0x4001db30] ti.sdo.ce.osal.Memory: [+4] Memory_contigAlloc> CMEM_alloc(1024) = 0x4002f000.
        ...

    Regards,

    - Rob