Part Number:TDA4VM
Hi!
I have established a gstreamer pipeline on TDA4VM for decoding H264 bitstreams, which includes the following elements: appsrc queue avdec_h264 appsink. It works normally, but the decoding speed is not ideal.
The H264 test file I used is encoded from a 1280 long/720 wide image in NV12 format. It only has I and P frames, with a GOP of 15 and a total of 240 frames. The complete decoding time is 3469ms, approximately 14ms to decode one image. This is sufficient for a single camera frame rate, but we need four cameras to decode simultaneously, which clearly does not meet the expected speed.
Here are my configurations for each element:
GstElement *pipeline, *appsrc , *appsink;GstElement *h264_decoder; ...g_object_set(G_OBJECT(appsrc), "caps",gst_caps_new_simple("video/x-h264", "stream-format", G_TYPE_STRING, "byte-stream", \"alignment", G_TYPE_STRING, "au", NULL),NULL);g_object_set(G_OBJECT(appsink), "sync", FALSE, NULL);g_object_set(G_OBJECT(appsink), "emit-signals", TRUE, NULL);g_object_set(G_OBJECT(appsink), "max-buffers", 200, NULL);g_object_set(G_OBJECT(h264_decoder), "max-threads", 10, NULL);
Is there any way to improve the encoder speed? May I have any good suggestions? Thank you!
Shine:
请问使用的是哪个版本的SDK? 是自己的板子么?
,
user5840466:
SDK版本是ti-rtos_psdk_8_4,是公司里的板子
,
Shine:
已把您的问题升级到英文e2e论坛,请关注帖子的回复。https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1219040/tda4vm-avdec_h264-speed-for-4-camera