<div dir="ltr">Hi There,<br><div>I am having an issue where a lot of video footage from a security camera was recorded without the sprop-parameters-set (SPS/PPS).</div><div><br></div><div>I am unable to play or transcode these ts files as it does not have SPS/PPS values. </div><div><br></div><div>I tried the following by sending the h264parse the stream format but that failed</div><div><br></div><div>```</div><div>gst-launch-1.0 -v filesrc location=2.ts ! tsparse ! tsdemux name=demux demux. ! queue ! h264parse ! video/x-h264,stream-format=avc,alignment=au ! decodebin ! videoconvert ! vaapih264enc ! h264parse ! mpegtsmux alignment=-1 ! filesink location=output.ts<br></div><div>```</div><div>failed with /</div><div>GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:sink: caps = video/x-h264, stream-format=(string)byte-stream</div>ERROR: from element /GstPipeline:pipeline0/GstH264Parse:h264parse0: No valid frames found before end of stream<div><br></div><div>I then tried to split it as per keyframes and then mux it.. like below but that failed as well</div><div><br></div><div>```</div><div>gst-launch-1.0 -v filesrc location=2.ts ! tsdemux name=demux ! h264parse ! splitmuxsink max-size-time=1000000000 location=segment%02d.ts mpegtsmux name=mux ! filesink location=output.ts demux.video_0 ! queue ! mux.<br></div><div>```</div><div>failed with h264parse0: No valid frames found before end of stream</div><div><br></div><div>Since it could not find EOS.. I thoiught of sending the entire manifest.. but that didnt work as well</div><div><br></div><div>```</div><div>gst-launch-1.0 -v filesrc location="<manifest uri>" ! hlsdemux ! h264parse ! video/x-h264,stream-format='(string)avc,alignment=(string)au' ! mpegtsmux ! h264parse config-interval=-1 ! mpegtsmux ! filesink location=output.ts<br></div><div>```</div><div><br></div><div>Just like how we can add config-interval to a rtp stream, is there a way to add it to a ts segment?</div><div><br></div><div>Best Regards,</div><div>Guru</div><div><br></div></div>