rtph265pay doesn't parse codec_data from caps with stream-format=hvc1 and output sprop-sps/pps/vps
Because of this, the receiver never gets sps/pps/vps and the decoder can't output anything. The workaround is to either force stream-format=byte-stream or add an h265parse before rtph265pay which will do the parsing for us.
To reproduce, compare:
$ gst-launch-1.0 videotestsrc num-buffers=1 ! vaapih265enc ! rtph265pay config-interval=-1 ! fakesink -v
and
$ gst-launch-1.0 videotestsrc num-buffers=1 ! vaapih265enc ! video/x-h265, stream-format=byte-stream ! rtph265pay config-interval=-1 ! fakesink -v
Note that x265enc
can't currently output hvc1
.