check_packets.py hack tweaks.
authorCarl Hetherington <cth@carlh.net>
Fri, 8 Nov 2019 22:55:32 +0000 (23:55 +0100)
committerCarl Hetherington <cth@carlh.net>
Fri, 8 Nov 2019 22:55:32 +0000 (23:55 +0100)
hacks/check_packets.py

index 916813a1fe47129f5ae952ed698e8e873be8a2f7..f8075db47f73aa3d91df632adec762099d1a727f 100644 (file)
@@ -4,15 +4,18 @@ import subprocess
 import shlex
 import sys
 
+last_video = None
 last_video_pts = None
 
 def handle(frame):
+    global last_video
     global last_video_pts
     if frame['media_type'] == 'video':
         if last_video_pts is not None and frame['pkt_pts_time'] <= last_video_pts:
-            print 'Out of order video frame %f is ahead of %f' % (frame['pkt_pts_time'], last_video_pts)
+            print 'Out of order video frame %f (%d) is same as or behind %f (%d)' % (frame['pkt_pts_time'], frame['pkt_pts'], last_video_pts, last_video)
         else:
             print 'OK frame %f' % frame['pkt_pts_time']
+        last_video = frame['pkt_pts']
         last_video_pts = frame['pkt_pts_time']
 
 p = subprocess.Popen(shlex.split('ffprobe -show_frames %s' % sys.argv[1]), stdin=None, stdout=subprocess.PIPE)
@@ -31,5 +34,7 @@ while True:
         s = l.split('=')
         if s[0] == 'pkt_pts_time':
             frame[s[0]] = float(s[1])
-        else:
+        elif s[0] == 'pkt_pts':
+            frame[s[0]] = float(s[1]) 
+        elif len(s) > 1:
             frame[s[0]] = s[1]