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.

h264 encoder on DM368 crashed

 

I am using h264 encode in DVSDK 4.0.2 on DM368. the encoder works fine
for D1, but crashed for 720P and 1080P after 1 or more seconds.

Is my config file wrong? it is here,

 

 

/* Load support for the Codec Engine OSAL */

var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');

 

/* Configure CE to use it's DSP Link Linux version */

osalGlobal.runtimeEnv = osalGlobal.LINUX;

 

/*

 *  ======== Engine Configuration ========

 */

var H264ENC  = xdc.useModule('ti.sdo.codecs.h264enc.ce.H264ENC');

var H264DEC  = xdc.useModule('ti.sdo.codecs.h264dec.ce.H264DEC');

var JPEGENC  = xdc.useModule('ti.sdo.codecs.jpegenc.ce.JPEGENC');

 

var Engine = xdc.useModule('ti.sdo.ce.Engine');

var myEngine = Engine.create("codec_engine", [

    {name: "h264enc", mod: H264ENC, local: true, groupId: 1},

    {name: "h264dec", mod: H264DEC, local: true, groupId: 1},

    {name: "jpegenc", mod: JPEGENC, local: true, groupId: 1},

]);

 

/* Load support for the 'Davinci Multimedia Application Interface' modules */

/* var DMAI = xdc.loadPackage('ti.sdo.dmai'); */

 

/* Configure RMAN */

var RMAN = xdc.useModule('ti.sdo.fc.rman.RMAN');

RMAN.useDSKT2 = false;

RMAN.persistentAllocFxn = "__ALG_allocMemory";

RMAN.persistentFreeFxn = "__ALG_freeMemory";

RMAN.semCreateFxn = "Sem_create";

RMAN.semDeleteFxn = "Sem_delete";

RMAN.semPendFxn = "Sem_pend";

RMAN.semPostFxn = "Sem_post";

RMAN.tableSize = 10;

 

/* Configure VICPSYNC */

var VICPSYNC = xdc.useModule('ti.sdo.fc.vicpsync.VICPSYNC');

 

/* Configure HDVICPSYNC */

var HDVICPSYNC = xdc.useModule('ti.sdo.fc.hdvicpsync.HDVICPSYNC');

 

/* Configure MEMUTILS */

var MEMUTILS = xdc.useModule('ti.sdo.fc.memutils.MEMUTILS');

 

var EDMA3 = xdc.useModule('ti.sdo.fc.edma3.Settings');

EDMA3.globalInit = true;

EDMA3.maxQdmaChannels = [10,10,10,10];

EDMA3.trace = false;

EDMA3.debug = false;

EDMA3.maxRequests = 128 ; /* copy from internet */

 

var HDVICP = xdc.useModule('ti.sdo.fc.ires.hdvicp.HDVICP');

 

var VICP = xdc.useModule('ti.sdo.fc.ires.vicp.VICP2');

 

var ADDRSPACE = xdc.useModule('ti.sdo.fc.ires.addrspace.ADDRSPACE');

 

var EDMA3CHAN = xdc.useModule('ti.sdo.fc.ires.edma3chan.EDMA3CHAN');

 

var EDMA = xdc.useModule('ti.sdo.linuxutils.edma.EDMA');

 

var CMEM = xdc.useModule('ti.sdo.linuxutils.cmem.CMEM');

 

var MEMTCM = xdc.useModule('ti.sdo.fc.ires.memtcm.MEMTCM');

 

MEMTCM.cmemBlockId = 1; //Since we use _1 in our insmod command.

 

/* Uncomment these lines if you wish to debug FC and enable FC trace */

 

/*

xdc.loadPackage('ti.sdo.fc.ires.vicp').profile = "debug_trace";

xdc.loadPackage('ti.sdo.fc.ires.edma3chan').profile = "debug_trace";

xdc.loadPackage('ti.sdo.fc.rman').profile = "debug_trace";

xdc.loadPackage('ti.sdo.fc.edma3').profile = "debug_trace";

EDMA3CHAN.trace = true;

EDMA3CHAN.debug = true;

*/