Occassional Broken Seeking
Added by Kev S over 11 years ago
Occasionally the recordings I make using TV Headend fail to play properly - either they stop a couple of minutes into the recording, or stop when you try and seek; Only letting you to resume from the start. In VLC they can play fine but often finish seconds before the duration (e.g. 1:48:58 as an indicated duration may see it end at 1:48:54).
Generally these issues only occur when my media centre is under a very high load (say recording six programmes simultaneously) or when it's raining (the latter only affecting DSAT recordings) and therefore when dropped frames are likely.
xbmc@williams:/media/PVR/TV_Shows$ ffmpeg -i SurfaceToAir-S113E021419.pdtv.ts -vcodec copy -acodec copy SurfaceToAir-S113E021419.pdtv.2.ts ffmpeg version 0.8.5-4:0.8.5-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers built on Jan 24 2013 18:03:14 with gcc 4.6.3 *** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use avconv instead. [mpegts @ 0x94b7240] max_analyze_duration reached [mpegts @ 0x94b7240] PES packet size mismatch Input #0, mpegts, from 'SurfaceToAir-S113E021419.pdtv.ts': Duration: 01:48:58.30, start: 89965.198144, bitrate: 2711 kb/s Program 1 Stream #0.0[0x909]: Video: mpeg2video (Main), yuv420p, 704x576 [PAR 16:11 DAR 16:9], 10000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0.1[0x90a](eng): Audio: mp2, 48000 Hz, stereo, s16, 128 kb/s File 'SurfaceToAir-S113E021419.pdtv.2.ts' already exists. Overwrite ? [y/N] y [mpegts @ 0x94bea20] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt every 40 pkts Output #0, mpegts, to 'SurfaceToAir-S113E021419.pdtv.2.ts': Metadata: encoder : Lavf53.21.1 Stream #0.0: Video: mpeg2video, yuv420p, 704x576 [PAR 16:11 DAR 16:9], q=2-31, 10000 kb/s, 90k tbn, 25 tbc Stream #0.1(eng): Audio: mp2, 48000 Hz, stereo, 128 kb/s Stream mapping: Stream #0.0 -> #0.0 Stream #0.1 -> #0.1 Press ctrl-c to stop encoding *[mpegts @ 0x94bea20] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 14697341 >= 14697341 av_interleaved_write_frame(): Invalid argument xbmc@williams:/media/PVR/TV_Shows$
and a partial file
However if you run on a partial section (starting three minutes in) it seems to work okay for a while until it gets too...
ffmpeg version 0.8.5-4:0.8.5-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers built on Jan 24 2013 18:03:14 with gcc 4.6.3 *** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use avconv instead. [mpegts @ 0x9513240] max_analyze_duration reached [mpegts @ 0x9513240] PES packet size mismatch Input #0, mpegts, from 'SurfaceToAir-S113E021419.pdtv.ts': Duration: 01:48:58.30, start: 89965.198144, bitrate: 2711 kb/s Program 1 Stream #0.0[0x909]: Video: mpeg2video (Main), yuv420p, 704x576 [PAR 16:11 DAR 16:9], 10000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0.1[0x90a](eng): Audio: mp2, 48000 Hz, stereo, s16, 128 kb/s File 'SurfaceToAir-S113E021419.pdtv.2.ts' already exists. Overwrite ? [y/N] y [mpegts @ 0x951aa20] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt every 40 pkts Output #0, mpegts, to 'SurfaceToAir-S113E021419.pdtv.2.ts': Metadata: encoder : Lavf53.21.1 Stream #0.0: Video: mpeg2video, yuv420p, 704x576 [PAR 16:11 DAR 16:9], q=2-31, 10000 kb/s, 90k tbn, 25 tbc Stream #0.1(eng): Audio: mp2, 48000 Hz, stereo, 128 kb/s Stream mapping: Stream #0.0 -> #0.0 Stream #0.1 -> #0.1 Press ctrl-c to stop encoding [mpegts @ 0x951aa20] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 128918141 >= 128918141 av_interleaved_write_frame(): Invalid argument xbmc@williams:/media/PVR/TV_Shows$ ls -lha Surface* -rwxrwxrwx 1 xbmc plugdev 491M Mar 10 14:25 SurfaceToAir-S113E021419.pdtv.2.ts -rwxrwxrwx 1 xbmc plugdev 493 Feb 14 21:02 SurfaceToAir-S113E021419.pdtv.nfo -rwxrwxrwx 1 xbmc plugdev 48K Feb 14 21:02 SurfaceToAir-S113E021419.pdtv.tbn -rwxrwxrwx 1 xbmc plugdev 2.1G Feb 14 21:02 SurfaceToAir-S113E021419.pdtv.ts
Does anyone know of a way to "fix" the files without having to re-encode the video entirely (something which takes about 133% of the programmes running time on my Revo) or how to stop this happening in the first place?