Other Parts Discussed in Thread: OMAP-L138
Hallo,
I have OMAP-L138 and I use DVSDK 04.03.00.06.
I tried to run gstreamer to encode NV12 stream generated by videotestsrc:
# gst-launch videotestsrc num-buffers=50 ! 'video/x-raw-yuv,format=(fourcc)NV12,width=(int)720,height=(int)576,framerate=(fraction)25/1' ! queue max-size-buffers=50 max-size-bytes=622080 ! TIVidenc1 codecName=mpeg4enc engineName=codecServer iColorSpace=NV12 resolution=720x576 framerate=25 ! filesink location=movie.m4v -v
Setting pipeline to PAUSED ...
/GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, color-matrix=(string)sdtv, chroma-site=(string)mpeg2, width=(int)720, height=(int)576, framerate=(fraction)25/1
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, color-matrix=(string)sdtv, chroma-site=(string)mpeg2, width=(int)720, height=(int)576, framerate=(fraction)25/1
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)NV12, color-matrix=(string)sdtv, chroma-site=(string)mpeg2, width=(int)720, height=(int)576, framerate=(fraction)25/1
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)NV12, color-matrix=(string)sdtv, chroma-site=(string)mpeg2, width=(int)720, height=(int)576, framerate=(fraction)25/1
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, color-matrix=(string)sdtv, chroma-site=(string)mpeg2, width=(int)720, height=(int)576, framerate=(fraction)25/1
/GstPipeline:pipeline0/GstTIVidenc1:tividenc10.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)NV12, color-matrix=(string)sdtv, chroma-site=(string)mpeg2, width=(int)720, height=(int)576, framerate=(fraction)25/1
ERROR: from element /GstPipeline:pipeline0/GstTIVidenc1:tividenc10: failed to encode video buffer
Additional debug info:
gsttividenc1.c(1418): gst_tividenc1_encode (): /GstPipeline:pipeline0/GstTIVidenc1:tividenc10
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
/GstPipeline:pipeline0/GstTIVidenc1:tividenc10.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0.GstPad:src: caps = NULL
Freeing pipeline ...
if I run with CE_DEBUG=5 I read this:
@3,222,975us: [+1 T:0x4191d490 S:0x4191c714] OM - Memory__getPhysicalAddress> returning physAddr=0xc2000000
@3,223,689us: [+0 T:0x4191d490 S:0x4191c714] OM - Memory_getBufferPhysicalAddress> return (0xc2000000)
@3,224,415us: [+0 T:0x4191d490 S:0x4191c714] OM - Memory_getBufferPhysicalAddress> Enter(virtAddr=0x423fd000, size=0)
@3,225,137us: [+6 T:0x4191d490 S:0x4191c714] OM - Memory_getBufferPhysicalAddress> invalid buffer size provided (0)
@3,228,307us: [+0 T:0x4191d490 S:0x4191c714] OM - Memory_getBufferPhysicalAddress> return (0x0)
@3,229,040us: [+5 T:0x4191d490 S:0x4191c72c] CV - VISA_freeMsg(0x10b590, 0x41028c80): Freeing message with messageId=0x00028a98
@3,229,774us: [+0 T:0x4191d490 S:0x4191c7bc] ti.sdo.ce.video1.VIDENC1 - VIDENC1_process> Exit (handle=0x10b590, retVal=0xffffffff)
@3,230,500us: [+2 T:0x4191d490 S:0x4191c80c] ti.sdo.dmai - [Venc1] VIDENC1_process() ret -1 inId 0 outID 5 generated 808530228 bytes
@3,231,234us: [+7 T:0x4191d490 S:0x4191c80c] ti.sdo.dmai - [Venc1] VIDENC1_process() failed with error (-1 ext: 0x4072f63c)
ERROR: from element /GstPipeline:pipeline0/GstTIVidenc1:tividenc10: failed to encode video buffer
The red lines are thise that I consider important.
where am I wrong?
best regards