DVB issue since LE switched to kernel 4.9.x

  • My hardware: Rpi3, DVBSky s960 DVB-S2 tuner (connected to the same RPi3).
    Software: VDR/VNSI (both frontend and backend are on the same RPi3).

    I was using nightly Milhouse builds and this hardware combination worked perfectly fine until build #1215. That build was the first one that used the new 4.9.0 kernel.
    I noticed a somewhat rare, intermittent video corruption when watching 1080i h.264 TV channels - usually a flash of green artifacts. Those video artifacts appear once in 5-10 minutes (sometimes more frequent).

    That issue is still present in LE 7.95.1 and latest Milhouse builds. It is also present in kernel 4.10-rc Milhouse test builds. Only builds based on the 4.8.x kernel (and older) don't have this issue.

    Edited 3 times, last by smp (May 26, 2017 at 11:09 PM).

  • No, this time deinterlace doesn't make much difference.
    When back in summer I reported a similar issue there were 2 ways to fix it:
    1) By switching from Advanced deinterlacing to Bob.
    2) By raising "vcgencmd arbiter set arm_uc". Setting it to "12 0" completely fixed the issue.

    Since the very first kernel 4.9 based build the video corruption dramatically increased with no apparent way fo fix it.

  • I decided to take the issue into my own hands and compiled a build using LE v.7.95.2 sources and linux kernel 4.8.13. As I expected this completely fixed the video corruption issue. IMO linux kernels 4.9.x/4.10.x are putting much more strain on low performance device such as RPi3.

    If anyone wants to check out my custom build for RPi2/3 here's the link. I tested it for a few hours and it works great.

    Edited once, last by smp (February 9, 2017 at 3:56 AM).


  • If anyone wants to check out my custom build for RPi2/3 here's the link. I tested it for a few hours and it works great.

    I tested it on my RPi2. There are two DVB-C receivers connected to it: DVBSky T330 and Astrometa. Your build works way better than the official RC. I still see some sporadic artefacts while watching TV but the recorded streams are perfect. In the official build live TV was unusable. I had really bad artefacts with the DVBSyk and no reception at all with the Astrometa.

    Thanks for your custom build! Will you provide one for the final release, too?

  • Quote


    I still see some sporadic artefacts while watching TV but the recorded streams are perfect.

    Try to switch from Advanced to Bob deinterlacing. Advanced is using a lot of RAM bandwidth and it may cause issues (especially on HD channels) when both PVR client and server are on the same Pi.
    Also, increasing "arm_uc" value should help a lot with sporadic artefacts. The default value is "10 0". To check the current value run "vcgencmd arbiter status".
    "arm_uc 12 0" works great for me, anything higher will cause HDMI dropouts.
    To change it to "12 0" run "vcgencmd arbiter set arm_uc 12 0", you can add it to autostart.sh to make the setting permanent.

    Quote


    Will you provide one for the final release, too?

    Sure.

    Edited once, last by smp (February 14, 2017 at 4:29 AM).


  • Try to switch from Advanced to Bob deinterlacing. Advanced is using a lot of RAM bandwidth and it may cause issues (especially on HD channels) when both PVR client and server are on the same Pi.
    Also, increasing "arm_uc" value should help a lot with sporadic artefacts.

    This worked nicely! It seems that deinterlacing can be left untouched if you do the other trick (arm_uc 12 0). Finally, I am happy with my setup.

  • Same problems here on x86_64 picture breaks up with continuity counter errors in tvh logfile. Alpha 9 and earlier (4.8 kernel) work without any problems. Any chance of an 8.0.0 build for generic x86_64 with 4.8 kernel??


  • Dropbox - Link not found - Generic x86_64, ver. 8.0.0, kernel 4.8.13, without media_build

    Dropbox - Link not found - Generic x86_64, ver. 8.0.0, kernel 4.8.13, with media_build

    Thanks ever so much smp... I've installed your LibreELEC-Generic.x86_64-8.0.0.kernel.4.8.13.without.mb.tar on my HTPC and it's been running a good couple of hours without any of those dreaded Continuity Counter errors (the 4.9 kernel-based builds would generate the errors every few minutes). So finally I can move away from the Alpha 9 release :)

    Hopefully someone will figure out where the problems lie in the 4.9 kernel and fix it upstream for future releases, but in the meantime I can finally sit back and enjoy the LibreELEC 8.0.0 release.


  • Same problems here on x86_64 picture breaks up with continuity counter errors in tvh logfile.

    what tuner do you use ? (pls test also Generic x86_64, ver. 8.0.0, kernel 4.8.13, with media_build - tx!! smp)

    We are currently suspecting that some usb change made it worse then in 4.8, but still didn't found a solution.