HLS Stream Buffering

Hi,

I’ve been using the TwitchTV Kodi addon for a long time (Add-on:TwitchTV (wiki)) without any problems but for the last week it has been unusable due to buffering. The addon just feeds a stream URL to the Kodi video player that’s why I’m posting about it here instead of on the thread for the addon. The streams initially play for about 10 seconds, then buffer, play for a further 30-60 seconds and then become completely unwatchable buffering every second or so. This is happening across all my devices running Kodi (PC, FireTV, Raspberry Pi) but if I feed the exact same stream URL to an alternative player such as PotPlayer or VLC it plays smoothly without any problems.

I’m using Kodi 17 Beta 7 but it also happens on the latest nightly, the log shows a few errors:

Code:
13:51:28.757 T:5960  NOTICE: VideoPlayer: Opening: https://video-edge-c67ce8.lhr03.hls.ttvnw.net/transcode-x2-6db314/themexicanrunner_23984085648_567675854/chunked/index-live.m3u8?token=id=7198927290433270013,bid=23984085647,exp=1482328289,node=video​-edge-c67ce8.lhr03,nname=video-edge-c67ce8.lhr03,proto=https,fmt=chunked&sig=8f9ddf54662990269b31966e0d3699010dac1f1d
13:51:28.757 T:5960 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
13:51:28.781 T:5960   ERROR: DXVA::CProcessorHD::IsFormatSupported: Unsupported format 105 for 1.
13:51:28.781 T:4968  NOTICE: Creating InputStream
13:51:28.902 T:4968  NOTICE: Creating Demuxer
13:51:29.787 T:4968  NOTICE: Opening stream: 1 source: 256
13:51:29.787 T:4968  NOTICE: Creating video codec with codec id: 28
13:51:29.787 T:4968  NOTICE: CDVDVideoCodecFFmpeg::Open() Using codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
13:51:29.787 T:4968  NOTICE: Creating video thread
13:51:29.787 T:4968  NOTICE: Opening stream: 0 source: 256
13:51:29.787 T:4968  NOTICE: Finding audio codec for: 86018
13:51:29.788 T:3920  NOTICE: running thread: video_thread
13:51:29.789 T:4968  NOTICE: Creating audio thread
13:51:29.790 T:7588  NOTICE: running thread: CVideoPlayerAudio::Process()
13:51:29.791 T:3920  NOTICE: CDVDVideoCodecFFmpeg::GetFormat - Creating DXVA(1280x720)
13:51:29.800 T:7588  NOTICE: Creating audio stream (codec id: 86018, channels: 2, sample rate: 48000, no pass-through)
13:51:29.803 T:3920   ERROR: CDVDVideoCodecFFmpeg::Decode - avcodec_decode_video returned failure
13:51:30.104 T:5960   ERROR: Previous line repeats 118 times.
13:51:30.104 T:5960  NOTICE: D3D: rendering method forced to DXVA processor
13:51:30.104 T:5960  NOTICE: DXVA::CProcessorHD::InitProcessor: Supported deinterlace methods: Blend:yes, Bob:yes, Adaptive:yes, MoComp:no.
13:51:30.104 T:5960 WARNING: CWinRenderer::UpdateVideoFilter - chosen scaling method 1 is not supported by renderer
13:51:30.637 T:3920 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer
13:51:32.171 T:3920 WARNING: Previous line repeats 2 times.
13:51:32.171 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 16636
13:51:46.760 T:7588  NOTICE: CVideoPlayerAudio::Process - stream stalled
13:54:05.615 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:06.429 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 31818
13:54:07.159 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:07.596 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 19636
13:54:11.512 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:12.275 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 31818
13:54:19.695 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:19.740 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 47000
13:54:34.375 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:35.256 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 31818
13:54:37.708 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:37.890 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 30363
13:54:38.091 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:39.702 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 25727
13:54:42.541 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:46.055 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 34818
13:54:48.207 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: lost diff
13:54:50.391 T:3920  NOTICE: CDVDVideoCodecFFmpeg::CDropControl: calculated diff time: 27272
13:54:51.907 T:3920 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer

I’ve tried various video cache settings (HOW-TO:Modify_the_video_cache (wiki)) using the newer Krypton syntax but nothing seems to make it any smoother. I’m on a 330mbit connection (wired) and my routing to the Twitch servers seems OK.

Are there any other settings I can change to fix this? Thanks in advance for any help.