Android FireTV and Nexus Player - Jerky video playback (not as trivial as you think)
#16
You can just disable refresh rate switching in Kodi, rather than use tvhz, to stay at 60hz.
Reply
#17
(2015-11-27, 00:41)Gmjh Wrote: I have no idea why playing 24p files on kodi at 60hz results in smoother playback than the 24hz it wants to play. I'm just pleased I've found a solution.
By 24p I'm assuming you mean 23.976fps video. You HAVE to be specific.
Devices like the FireTV's, Nexus, ATV2/3/4, Rockhip + more, do not do nicely synced 23.976fps video output. There will be a video glitch approx every 41 seconds if you try and output 23.976fps video at a selected refresh rate of 24Hz.

23.976/24fps video displayed at 60Hz will use a 3:2 pulldown technique that some sensitive people pick up as video judder when a camera pans left < > right in a long video panning shot. Some TV's may be able to use a Motion Smoothing setting or similar to lessen this judder.

So conclusion, if you are sensitive to any of these visual video playback issues stay away from the platforms I just mentioned and look at stuff like the RPi2, nVIDIA Shield, Intel Microarchitecture or AMLogic devices that run a modified Linux Kernel that does Frame Rate Automation like the MINIX NEO's, ODROID C1+ or the WeTek Core.

Reply
#18
(2015-11-27, 03:45)wrxtasy Wrote:
(2015-11-27, 00:41)Gmjh Wrote: I have no idea why playing 24p files on kodi at 60hz results in smoother playback than the 24hz it wants to play. I'm just pleased I've found a solution.
By 24p I'm assuming you mean 23.976fps video. You HAVE to be specific.
Devices like the FireTV's, Nexus, ATV2/3/4, Rockhip + more, do not do nicely synced 23.976fps video output. There will be a video glitch approx every 41 seconds if you try and output 23.976fps video at a selected refresh rate of 24Hz.

23.976/24fps video displayed at 60Hz will use a 3:2 pulldown technique that some sensitive people pick up as video judder when a camera pans left < > right in a long video panning shot. Some TV's may be able to use a Motion Smoothing setting or similar to lessen this judder.

So conclusion, if you are sensitive to any of these visual video playback issues stay away from the platforms I just mentioned and look at stuff like the RPi2, nVIDIA Shield, Intel Microarchitecture or AMLogic devices that run a modified Linux Kernel that does Frame Rate Automation like the MINIX NEO's, ODROID C1+ or the WeTek Core.

Hi. Yes I meant 23.976. Which, as you already know, the nexus player doesn't support so the closest it'll do is 24

And yes it seems I'm much more sensitive to the glitch seen in 23.976 than any 3:2 judder. I've had 3:2 on my tv for years, that's probably whyit doesn't bother me much. Having said that I definitely want to try a wetek core when they finally release the thing.

And thanks koying, it's nice to not use the tvhz app as it can be a bit temperamental with the nexus player.
Reply
#19
Resurrecting a sort of old thread. But recently picked up Nexus Player and was seeing the same problem as the OP and definitely Kodi related. For me it was 1080i video I recorded via OTA using a SiliconDust Homerun-Extend. What solved the problem for me was changing the video settings of the show; I turned deinterlace Video from "Auto" to "On" and deinterlace method to "Bob".

All I know is voila...problem solved no more judder/jitter/stutter or whatever the technical term is...video is smooth as silk! Why this fixed the problem, I'm not sure, but I'm guessing maybe Kodi was flip flopping between progressive video and interlaced video causing the problem.

Although I think unrelated and didn't initially solve my judder problem, I added the following into advancedsettings.xml to help with wi-fi

Code:
<network>
    <buffermode> 1 </buffermode>
    <readbufferfactor> 1.5 </readbufferfactor>
    <cachemembuffersize> 104857600 </cachemembuffersize>
</network>

My thinking for the above was to help with getting the video into the Nexus player sooner and in cache so that it could process what was in cache at faster rates then what wi-fi can provide.
Reply
#20
I suspect the Nexus is trying to do some sort of Advanced deinterlacing using the CPU only and running out of CPU cycles to work properly when you leave it in Auto for the deinterlace method.

Bob deinterlacing is much simpler and less taxing CPU wise. I would leave Deinterlacing set to Auto and Deinterlace method set to Bob. Then Set as default for all Videos at the bottom of the Video OSD.

If you leave Deinterlace set to On, it will be permanently On and mess with progressive Video like 1080p when you try to play that.

Reply
#21
(2016-01-19, 18:40)wrxtasy Wrote: I suspect the Nexus is trying to do some sort of Advanced deinterlacing using the CPU only and running out of CPU cycles to work properly when you leave it in Auto for the deinterlace method.

Bob deinterlacing is much simpler and less taxing CPU wise. I would leave Deinterlacing set to Auto and Deinterlace method set to Bob. Then Set as default for all Videos at the bottom of the Video OSD.

If you leave Deinterlace set to On, it will be permanently On and mess with progressive Video like 1080p when you try to play that.
Logic seems reasonable, but I don't see any of the 4 CPU's pegging at any particular time and the Nexus Player can decode mpeg2 in the GPU. But I did switch to Auto and it still seems to be okay...beats having to manually switch the setting when watching interlaced and progressive video.
Reply
#22
I simply disabled deinterlacing altogether.
Reply
#23
For those of us with less knowledge of Kodi:
1) What are the steps to find the deinterlace option? I have gone through all of the System/Settings/Video screens, set 'Expert' mode so I would have all of the options, and can still not find Deinterlace.
2) What are the steps to disable refresh rate switching in Kodi?

I have the same situation as bac522 - playback of videos "recorded via OTA using a SiliconDust Homerun" is so jerky I can't watch it. As in 'cause an epileptic seizure' jerky. I have tried quite a few things - upgraded to Jarvis RC1, installed tvhz and set it to 60Hz, switched off Mediacodec, switched off Mediacodec-Surface. None of these have fixed it.
Reply
#24
Click the select button when playing a video, scroll over on the OSD to the video reel icon, there you can select various video options.

For refresh rate settings, it should be under the video, playback, adjust refresh rate, you can probably set it to on start/stop, and than adjust the pause for the time it takes for your TV to come back to life after a refresh rate change.

With my NP, I found that turning deinterlacing from auto to on, and bob rather than inverted bob, made the playback of 1080i material much smoother, that was running 15.2. Running 16rc1 I can just leave things at the default auto setting.

While we are on the subject of android deinterlacing, does anyone know what the auto option is in 16rc1, 15.2 you got the choice of off, auto and on with on or auto giving you the choice of bob or inverted bob. With 16rc1 you get the same choices for SD content but HD stuff you just get on, auto or off, no choice of the method.
Reply
#25
Thank you; that was very helpful.

Turning deinterlace Video from "Auto" to "On" and deinterlace method to "Bob" improved playback considerably, but there is still more jerkiness than I see with my old Popcorn Hour. Video is 1080i recorded OTA with no transcoding. The AFTV 2 is hard-wired to my MythTV box with gigabit switches and CAT6, so I'm not dealing with wireless throughput problems.

Any suggestions? What additional information can I provide to assist the developers?
Reply
#26
Trade the AFTV2 in for something that handles deinterlacing better, maybe a chromebox or one of the intel based boxes (avoid the bay trail stuff tho).
The SOCs for most android devices weren't designed with live TV (and deinterlacing) in mind.
Reply
#27
Nope that is incorrect for Android.

All the very popular AMLogic SoC's I have seen have Hardware deinterlacing done via the VPU (Video Processing Unit). The AMLogic S812-H and S905's has very good deinterlacing quality rivalling Intel Hardware.

It is Android Boxes from Google and Amazon and the Apple TV 2/3/4 you want to avoid if you want quality deinterlacing and broadcast TV viewing is your priority.

Reply
#28
Thank you for the education Wrx, my point was that he would have to trade his box for something else, if he wanted to see improved deinterlacing, and I did say most SoCs, not all, the AMLogics, being the exception rather than the rule.
Reply
#29
Good info; thank you. I will had hoped to go the "One player to rule them all" route - Netflix, Hulu, Prime, MythTV - all on one player, but that doesn't seem possible.

However, the content (OTA) is 1080i, not 1080p - so why is Kodi trying to convert it to 1080p, which requires deinterlacing? If Kodi simply played it as-is shouldn't that work? Is there any way that I can force that as an experiment (or permanently)?
Reply
#30
Here is the Mediainfo analysis of the video:

Video
ID : 49 (0x31)
Menu ID : 1 (0x1)
Format : MPEG Video
Format version : Version 2
Format profile : Main@high
Format settings, BVOP : Yes
Format settings, Matrix : Custom
Format settings, GOP : Variable
Codec ID : 2
Duration : 59mn 59s
Bit rate mode : Variable
Bit rate : 13.2 Mbps
Maximum bit rate : 15.0 Mbps
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate : 29.970 fps
Standard : PAL
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Interlaced
Scan order : Top Field First
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.212
Stream size : 5.51 GiB (91%)
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
Reply

Logout Mark Read Team Forum Stats Members Help
FireTV and Nexus Player - Jerky video playback (not as trivial as you think)1