RPi3 – Occasional image scrambling when watching Live TV (DVB-C)

Since the first Kodi 17 build I installed on my RPi3 (#0826) up to LE Kodi 17 v7.95.3 BETA I’ve always experienced occasional scrambles in my video streams when watching on DVB-C through a PCTV 292e USB stick. I always thought it would be a bad coax cable which was long and extended with a cheap connector. After a home renovation I’m now using a solid shielded short coax and I still experience the same image scrambling.

Omxplayer acceleration is disabled and mmal is enabled (however it appears with omxplayer acceleration enabled it scrambles the image much less…). I have set adjust frame rate to ‘on start/stop’ because else the video just isn’t smooth enough to watch. I only experience this when watching H.264 channels (I have the MPEG-2 license installed).

In debug mode I constantly see ‘ActiveAE::SyncStream’ messages with a ‘CPullupCorrection’ line at the moment the image scrambles for a quick second. If needed I can provide a full log but I thought this would be OK as it’s really the only thing the RPi is repeating when watching TV;

Code:
22:13:50.087 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00069 threshold:0.020 error:-0.941166
22:13:51.089 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00069 threshold:0.020 error:-0.938233
22:13:52.090 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00051 threshold:0.020 error:-1.301398
22:13:53.090 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99932 threshold:0.020 error:-3.679648
22:13:53.423 T:1482539936   DEBUG: CPullupCorrection: pattern lost on diff 80000.000000, number of losses 55
22:13:54.137 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99893 threshold:0.020 error:-4.450142
22:13:55.138 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99978 threshold:0.020 error:-2.749904
22:13:56.187 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00002 threshold:0.020 error:-2.282533
22:13:57.187 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99893 threshold:0.020 error:-4.462127
22:13:58.188 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99889 threshold:0.020 error:-4.542728
22:13:58.343 T:1482539936   DEBUG: CPullupCorrection: detected pattern of length 1: 40000.00, frameduration: 40000.000000
22:13:59.190 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99964 threshold:0.020 error:-3.044009
22:14:00.237 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00048 threshold:0.020 error:-1.360105
22:14:01.240 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00127 threshold:0.020 error:0.227289
22:14:01.655 T:1482539936   DEBUG: CPullupCorrection: pattern lost on diff 80000.000000, number of losses 56
22:14:02.243 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00038 threshold:0.020 error:-1.565772
22:14:03.288 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00016 threshold:0.020 error:-1.988794
22:14:04.338 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00038 threshold:0.020 error:-1.567255
22:14:05.339 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00052 threshold:0.020 error:-1.277743
22:14:06.339 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00053 threshold:0.020 error:-1.253319
22:14:07.339 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99973 threshold:0.020 error:-2.854321
22:14:08.237 T:1482539936   DEBUG: CPullupCorrection: detected pattern of length 1: 40000.00, frameduration: 40000.000000
22:14:08.338 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99941 threshold:0.020 error:-3.504364
22:14:09.339 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:0.99967 threshold:0.020 error:-2.985704
22:14:10.338 T:1940730784   DEBUG: ActiveAE::SyncStream pll:0.00000 (act:1.00000 lim:0.00000) rr:1.00047 threshold:0.020 error:-1.383909