avformat/mpegts: Do not add pid if its already there with add_pid_to_pmt()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/utils: Leave skip_clear enabled until after estimate_timings()

Should make no difference but will be needed for subsequent commits

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/mpegts: Continue parsing PMTs during duration estimation

This way if we by chance run into a valid PMT we have a more complete
set of streams, also do not reset streams in case we run into a worse
PMT

Fixes Ticket4046

alternatively Ticket4046 could be closed as invalid or wontfix as it contains
some PMTs which lack the 2 subtitle streams

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>