I tested with sample_decode (./sample_decode_drm h264 -i intel_hw_test.h264 -o output.yuv -hw -vaapi), that efficiency is very low.
the test data:
So i guess , copy one frame from video memory to system memory is Performance bottlenecks.
My question is:
Thank you for your question.
Your guess is partially correct. Yes copying frame from system memory to video memory take CPU utilization and decreases the performance. But there is one more thing to consider here is color conversion happening from nv12 to yuv, which is not the most efficient way right now in sample_decode and hence considerably would reduce the performance. Just to make it clear, samples doesn't provide complete solutions, they are just starting point.
Depending upon your pipeline, there could be more options by which decoding speed can be increased. Please let us know what is the pipeline you are looking at and the system configuration you are using.
This topic is being discussed through private message, for the rest of folks who might be interested -