I’m using an AGX Orin running R35.1.0 with default gstreamer 1.16.3.
When using encodebin, I can get H264 main profile with:
gst-launch-1.0 videotestsrc is-live=1 num-buffers=250 ! video/x-raw,framerate=30/1 ! nvvidconv ! queue ! enc.video_0 encodebin name=enc profile='video/x-h264,profile=main,level=(string)5.1' ! fakesink -v
but high profile doesn’t work:
gst-launch-1.0 videotestsrc is-live=1 num-buffers=250 ! video/x-raw,framerate=30/1 ! nvvidconv ! queue ! enc.video_0 encodebin name=enc profile='video/x-h264,profile=high,level=(string)5.1' ! fakesink -v
...
ERROR: from element /GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0: Internal data stream error.
Additional debug info:
gstbasesrc.c(3072): gst_base_src_loop (): /GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0:
streaming stopped, reason not-negotiated (-4)
Though, setting high profile may work without encodebin:
gst-launch-1.0 videotestsrc is-live=1 ! video/x-raw,framerate=30/1 ! nvvidconv ! nvv4l2h264enc ! 'video/x-h264,profile=high,level=(string)5.1' ! fakesink -v
Any idea what I’m missing here or any workaround ?