I don't see a great difference. Both mpgs were made using commands like this
dvbv5-zap -a 0 -c ~/.tzap/channels.dvbv5 -r "channelname" &
dd if=/dev/dvb/adapter0/dvr0 oflag=append of=good.mpg conv=noerror,notrunc &
ie set up the tuning with dvbv5-zap and then dd the raw dvr device into a file for a fixed time.
Good case ie video shows in VLC
$ ffprobe -v warning Videos/good.mpg
[mpeg2video @ 0x63cb5c6eea40] Invalid frame dimensions 0x0.
Last message repeated 31 times
[mpegts @ 0x63cb5c6c47c0] start time for stream 2 is not set in estimate_timings_from_pts
[mpegts @ 0x63cb5c6c47c0] start time for stream 3 is not set in estimate_timings_from_pts
[mpegts @ 0x63cb5c6c47c0] start time for stream 4 is not set in estimate_timings_from_pts
[mpegts @ 0x63cb5c6c47c0] PES packet size mismatch
[mpegts @ 0x63cb5c6c47c0] Packet corrupt (stream = 0, dts = 6882731104).
[mpegts @ 0x63cb5c6c47c0] PES packet size mismatch
[mpegts @ 0x63cb5c6c47c0] Packet corrupt (stream = 1, dts = 6882655054).
[mpegts @ 0x63cb5c6c47c0] stream 2 : no TS found at start of file, duration not set
[mpegts @ 0x63cb5c6c47c0] Could not find codec parameters for stream 2 (Audio: mp3 ([4][0][0][0] / 0x0004), 0 channels): unspecified frame size
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
[mpegts @ 0x63cb5c6c47c0] Could not find codec parameters for stream 5 (Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
[mpegts @ 0x63cb5c6c47c0] Could not find codec parameters for stream 6 (Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
Unsupported codec with id 98305 for input stream 4
Unsupported codec with id 0 for input stream 5
Unsupported codec with id 0 for input stream 6
bad case no video shows
$ ffprobe -v warning Videos/bad.mpg
[mpeg2video @ 0x62500c96c040] Invalid frame dimensions 0x0.
Last message repeated 6 times
[mp3float @ 0x62500c98b680] Header missing
[mpeg2video @ 0x62500c96c040] Invalid frame dimensions 0x0.
Last message repeated 23 times
[mpegts @ 0x62500c964840] PES packet size mismatch
[mpegts @ 0x62500c964840] Packet corrupt (stream = 0, dts = 4000499184).
[mpegts @ 0x62500c964840] PES packet size mismatch
[mpegts @ 0x62500c964840] Packet corrupt (stream = 1, dts = 4000434654).
[mpegts @ 0x62500c964840] Could not find codec parameters for stream 2 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
[mpegts @ 0x62500c964840] Could not find codec parameters for stream 3 (Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
Unsupported codec with id 0 for input stream 2
Unsupported codec with id 0 for input stream 3