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.

Poor Performance with dm368 h264 endcoder using gstreamer

Other Parts Discussed in Thread: TVP7002

My Setup:

DM368EVM

DVSDK 4.02

Video input: 720p30 via Component

My Pipeline is as follow:

root@dm368-evm:~# gst-launch -v v4l2src always-copy=FALSE num-buffers=800 input-
src=component ! video/x-raw-yuv, format=\(fourcc\)NV12, width=1280, height=720,
framerate=\(fraction\)30/1 ! queue ! TIVidenc1 codecName=h264enc engineName=code
cServer byteStream=FALSE ! dmaiperf print-arm-load=true ! qtmux ! filesink locat
ion=/mnt/output_gen_.mp4
Setting pipeline to PAUSED ...
davinci_resizer davinci_resizer.2: RSZ_G_CONFIG:0:1:124
davinci_previewer davinci_previewer.2: ipipe_set_preview_config
vpfe-capture vpfe-capture: IPIPE Chained
vpfe-capture vpfe-capture: Resizer present
EVM: switch to tvp7002 HD video input
vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 1, bpp = 2, bytesperline = 32, sizeimage = 32
vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 1
vpfe-capture vpfe-capture: adjusted width = 32, height = 1, bpp = 1, bytesperline = 32, sizeimage = 48
vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 1
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 1, bytesperline = 2176, sizeimage = 5013504
vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 1, bpp = 2, bytesperline = 32, sizeimage = 32
vpfe-capture vpfe-capture: width = 8, height = 2, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 2, bpp = 2, bytesperline = 32, sizeimage = 64
vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 32775, height = 32769, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 1, bpp = 2, bytesperline = 32, sizeimage = 32
vpfe-capture vpfe-capture: width = 8, height = 2, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 2, bpp = 2, bytesperline = 32, sizeimage = 64
vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 32775, height = 32769, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 1, bpp = 2, bytesperline = 32, sizeimage = 32
vpfe-capture vpfe-capture: width = 8, height = 2, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 2, bpp = 2, bytesperline = 32, sizeimage = 64
vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 32775, height = 32769, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 1, bpp = 2, bytesperline = 32, sizeimage = 32
vpfe-capture vpfe-capture: width = 8, height = 2, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 16, height = 2, bpp = 2, bytesperline = 32, sizeimage = 64
vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672
vpfe-capture vpfe-capture: width = 32775, height = 32769, bpp = 2
vpfe-capture vpfe-capture: adjusted width = 2176, height = 1536, bpp = 2, bytesperline = 4352, sizeimage = 6684672

(gst-launch-0.10:1607): GStreamer-WARNING **: pad v4l2src0:src rvpfe-capture vpfe-capture: width = 1280, height = 720, bpp = 1
eturned caps whivpfe-capture vpfe-capture: adjusted width = 1280, height = 720, bpp = 1, bytesperline = 1280, sizeimage = 1382400
ch are not a reavpfe-capture vpfe-capture: width = 1280, height = 720, bpp = 1
l subset of its vpfe-capture vpfe-capture: adjusted width = 1280, height = 720, bpp = 1, bytesperline = 1280, sizeimage = 1382400
template caps
/GstPipeline:pipver_nr_lines: 719eline0/GstV4l2Sr
c:v4l2src0: queue-size = 3
/GstPipeline:pipeline0/GstV4l2Src:v4l2src0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1280, height=(int)720, framerate=(fraction)30/1
Pipeline is live and does not need PREROLL ...
WARNING: from element /GstPipeline:pipeline0/GstDmaiperf:dmaiperf0: There is no codec present that can handle the stream's type.
Additional debug info:
gsttidmaiperf.c(285): gst_dmaiperf_start (): /GstPipeline:pipeline0/GstDmaiperf:dmaiperf0:
Engine name not specified, not printing DSP information
Setting pipeline to PLAYING ...
New clock: GstSystemClock
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1280, height=(int)720, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1280, height=(int)720, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1280, height=(int)720, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1280, height=(int)720, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstTIVidenc1:tividenc10.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1280, height=(int)720, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstTIVidenc1:tividenc10.GstPad:src: caps = video/x-h264, framerate=(fraction)30/1, width=(int)1280, height=(int)720, codec_data=(buffer)01640028ffe1005a67640028ad84054562b8ac5474202a2b15c562a3a1015158ae2b151d080a8ac57158a8e84054562b8ac5474202a2b15c562a3a10248521393c9f27e4fe4fc9f279b9b34d081240
/GstPipeline:pipeline0/GstDmaiperf:dmaiperf0.GstPad:src: caps = video/x-h264, framerate=(fraction)30/1, width=(int)1280, height=(int)720, codec_data=(buffer)01640028ffe1005a67640028ad84054562b8ac5474202a2b15c562a3a1015158ae2b151d080a8ac57158a8e84054562b8ac5474202a2b15c562a3a10248521393c9f27e4fe4fc9f279b9b34d08124290
/GstPipeline:pipeline0/GstDmaiperf:dmaiperf0.GstPad:sink: caps = video/x-h264, framerate=(fraction)30/1, width=(int)1280, height=(int)720, codec_data=(buffer)01640028ffe1005a67640028ad84054562b8ac5474202a2b15c562a3a1015158ae2b151d080a8ac57158a8e84054562b8ac5474202a2b15c562a3a10248521393c9f27e4fe4fc9f279b9b34d0812420
INFO:
Timestamp: 0:43:35.092316996; bps: 0; fps: 0; CPU: 0;
/GstPipeline:pipeline0/GstQTMux:qtmux0.GstPad:video_00: caps = video/x-h264, framerate=(fraction)30/1, width=(int)1280, height=(int)720, codec_data=(buffer)01640028ffe1005a67640028ad84054562b8ac5474202a2b15c562a3a1015158ae2b151d080a8ac57158a8e84054562b8ac5474202a2b15c562a3a10248521393c9f27e4fe4fc9f279b9b34d081242900
/GstPipeline:pipeline0/GstFileSink:filesink0.GstPad:sink: caps = video/quicktime, variant=(string)apple
INFO:
Timestamp: 0:43:36.156518040; bps: 192821; fps: 8; CPU: 85;
INFO:
Timestamp: 0:43:37.205626581; bps: 176287; fps: 8; CPU: 85;
INFO:
Timestamp: 0:43:38.250689246; bps: 132915; fps: 8; CPU: 84;
INFO:
Timestamp: 0:43:39.303775412; bps: 130142; fps: 8; CPU: 83;
INFO:
Timestamp: 0:43:40.347953579; bps: 112289; fps: 8; CPU: 84;
INFO:
Timestamp: 0:43:41.392907035; bps: 114027; fps: 8; CPU: 85;
INFO:
Timestamp: 0:43:42.444034077; bps: 126837; fps: 8; CPU: 84;
INFO:
Timestamp: 0:43:43.488741119; bps: 117098; fps: 8; CPU: 84;
INFO:
Timestamp: 0:43:44.532101538; bps: 115101; fps: 8; CPU: 85;
INFO:
Timestamp: 0:43:45.584553872; bps: 136063; fps: 8; CPU: 84;

I also tried this Pipeline without the qtmux element, but same poor performance. Is this a problem with the TIVidenc element or is something wrong with my Pipeline? 720p30 should not be a problem for DM368, but 85% cpu usage for 8 fps? Found a report about poor encoding performance here, but there hasn´t been any reply:

https://texinst1.gforgegroup.com/gf/project/gstreamer_ti/forum/?_forum_action=ForumMessageBrowse&thread_id=4236&action=ForumBrowse&forum_id=187