Project

General

Profile

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?