vaapidecodebin with h264parse element seems to corrupt metadata information
Hi, I am ingesting an rtsp stream and when using vaapidecodebin or vaapih264decode the generated ts segments seems have corrupted metadata information. Eg for a pipeline like below
gst-launch-1.0 hlssink2 name=ingest1 playlist-length=5 max-files=0 target-duration=10 send-keyframe-requests=true playlist-location=manifest.m3u8 location=%d.ts rtspsrc location="rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mp4" protocols=4 name=rtspsrc0 rtspsrc0. ! rtph264depay ! tee name=t t.! queue ! ingest1.video t.! queue ! h264parse ! vaapidecodebin ! tee name=one_decode one_decode. ! fakesink async=false rtspsrc0. ! decodebin ! fdkaacenc ! tee name=audio_t audio_t. ! queue ! ingest1.audio
results in the resolution not being determined by probe.
[mpegts @ 0x5617b6fffb80] start time for stream 0 is not set in estimate_timings_from_pts
[mpegts @ 0x5617b6fffb80] stream 0 : no TS found at start of file, duration not set
[mpegts @ 0x5617b6fffb80] Could not find codec parameters for stream 0 (Video: h264 (HDMV / 0x564D4448), none): unspecified size
However when I remove the h264parse element before vaapidecodebin it works fine
gst-launch-1.0 hlssink2 name=ingest1 playlist-length=5 max-files=0 target-duration=10 send-keyframe-requests=true playlist-location=manifest.m3u8 location=%d.ts rtspsrc location="rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mp4" protocols=4 name=rtspsrc0 rtspsrc0. ! rtph264depay ! tee name=t t.! queue ! ingest1.video t.! queue ! vaapidecodebin ! tee name=one_decode one_decode. ! fakesink async=false rtspsrc0. ! decodebin ! fdkaacenc ! tee name=audio_t audio_t. ! queue ! ingest1.audio
This seems to be inconsistent with nvcodecs or sofware decode.
However my knowledge of working of these plugins is limited. Please let me know if there is a mistake in my pipeline.