1080p при 60 кадрах в секунду для iMX 6 Quad или iMX 8? - PullRequest
0 голосов
/ 13 июля 2020

Я пытаюсь одновременно кодировать и транслировать видео на iMX 6 Quad. В настоящее время я использую этот конвейер:

gst-launch-1.0 -v videotestsrc num-buffers=300 ! video/x-raw,format=YUY2,width=1280,height=720,framerate=60/1! videoconvert ! video/x-raw,format=I420 ! \
   tee name=t \
   t. ! queue ! imxvpuenc_h264 ! h264parse ! mp4mux ! filesink location="test-3.mp4" \
   t. ! queue ! imxipuvideosink

Обратите внимание, что videotestsr c предназначен для имитации камеры с выходным форматом YUY2.

Я не могу go сверх 720p при 60 кадрах в секунду [включая любую частоту кадров для 1080p]. Это узкое место производительности из-за оборудования или конвейера, который я настроил? Потому что я получаю такие предупреждающие сообщения:

   WARNING: from element /GstPipeline:pipeline0/GstImxIpuVideoSink:imxipuvideosink0: A lot of buffers are being dropped.
   Additional debug info:
   gstbasesink.c(2902): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstImxIpuVideoSink:imxipuvideosink0:
   There may be a timestamping problem, or this computer is too slow.

Кроме того, если у кого-то есть плата iMX 8, не могли бы вы попытаться запустить 1080p при 60 кадрах в секунду и посмотреть, есть ли у этого конвейера какие-либо проблемы с производительностью?

gst-launch-1.0 -v videotestsrc num-buffers=300 ! video/x-raw,format=YUY2,width=1920,height=1080,framerate=60/1! videoconvert ! video/x-raw,format=I420 ! \
   tee name=t \
   t. ! queue ! imxvpuenc_h264 ! h264parse ! mp4mux ! filesink location="test-3.mp4" \
   t. ! queue ! imxipuvideosink

1 Ответ

0 голосов
/ 18 июля 2020

В вашем конвейере есть несколько узких мест:

  1. Во-первых, использование videotestsr c для генерации потока 1080 - это слишком много. Я рекомендую использовать камеру, если возможно, или, по крайней мере, изменить свойство pattern на black.
  2. Не используйте videoconvert, это программное обеспечение. В imx6 вы можете использовать imxipuvideotransform или imxg2dvideotransform, которые основаны на HW.
...