We're still working on getting out that release and making sure that we fix all of the seeking bugs you're running into, but I realized that there's a lot of background that we should go over to help set the context for how and why things are working the way they are.
Why is there a Live TV buffer on the client at all?
We sell two products:
- a Live TV only client that connects directly to the HD Homerun
- a DVR product (Channels Plus) that includes a client and a server component.
Because the Live TV client doesn't have any server component, we must store the Live TV buffer on the client because there's no where else to store it.
Why isn't the Live TV buffer just stored on the DVR if one is available?
We've tried a lot of things and made changes over the years based on customer feedback and support requests and found that the over-all experience for watching Live TV was much better when having the client connect directly to the HD Homerun.
A few of the biggest issues were:
- Any issue with the network (WiFi interference, bad cables, misconfigurations, etc) became that much more damaging to the quality of the steaming by adding another node to the system. People would have more pauses, glitches, streams not starting, etc.
- Any disk, CPU or other temporary spike on the DVR could cause stalls in the stream
- Because there are more components involved, it just takes more seconds from when someone presses on a channel and when they start seeing video
Because of those issues, we decided that if the client was able to directly connect to the HD Homerun, we will do that.
Why isn't the length of the client buffer always the same?
When we are playing, we also monitor the available disk space and make sure that we don't run out. If we are getting close, we will limit the buffer.
Why is the buffer longer for TVE feeds than HD Homerun feeds?
Most cable and broadcast TV streams are MPEG2 at around 15mbits/second. Most of the TVE feeds are H.264 at around 3-4mbits/second. Because of this 5x difference in storage, we are able to fit much more in the buffer for TVE streams than HD Homerun streams.
How can I get a Live TV buffer on the DVR instead of the client?
If you change the DVR Streaming Quality setting for "Home Streaming" in the app from "Original" to "1080p 8Mbps" it will use the DVR as a cache for Live TV.