How roku decides it has buffered enough data to play hls?
I am using amazon cloudfront to publish my HLS stream and currently refreshing the play list (.m3u8) every 30 seconds. The playlist has 8 media files and each last 10 seconds. When publishing the playlist, I take 3 media urls out and add 3 new one.
My goal is to get the video to play at soon as possible, but with current configuratio roku box still spend some time on buffering sometimes. The waiting varies, sometimes it is just 1 second, and some times it is over 15 seconds.
My question is how roku box decides it has buffered enough data to play a hls stream? I am not able to find any suggestion on hls specification and believe it is implementation details. I would like to listen any advice to make the buffering shorter with server side changes (make playlist shorter/longer, publish playlist less/more often etc).