The issue is that the call to av_read_frame returns many NAL packets with unknown timestamps on this input. I assume that different muxers (if the stream is going to be re-muxed) will handle this differently.
But in the above case ffplay does not handle missing timestamps.

The problem is that the raw demuxer for hevc and h264 streams does not provide any timestamps which mpegts needs.
This means that we cannot remux any h264 and hevc streams with the copy option... actually not just for mpegts but matrsoka, too.
Of course, we do not have the same problem during transcoding because the encoder outputs pts/dts timestamps.
My initial patch was targeting only the mpegts demuxer (​http://ffmpeg.org/pipermail/ffmpeg-devel/2019-May/243877.html), but this seems a bigger issue to me.

I feel the only way to properly get pts/dts timestamps without transcoding is to read the POC from each NAL. Otherwise, I do not see how to deal with b-frames.