1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

More detailed HLS statistics

Discussion in 'TiVo Stream' started by moyekj, Nov 19, 2013.

  1. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    Testing Roamio Pro internal Stream in home downloads and collecting detailed statistics on the HLS downloads at different qualities:
    (Statistics collected with a browser using http://<STREAMIP>:49152/sysinfo)
    (CLIENTS button shows the # HLS segments, MAIN button shows system temperature)

    STREAM VERSION: 19.1.6-USB-6 (build date = Feb 18 2014-11:01:05)
    iOS App VERSION: 3.3
    iOS device: iPad Air with iOS 7.1.1

    BASIC QUALITY --> iPad
    Show source: 60 min 1080i recording (5.54GB)
    Output: 544x400 @ 800 Kbps
    Transfer time: 16 mins = 3.35 Mbps (29 mins OOH = 1.85 Mbps)
    File size = 402 MB
    Total # HLS segments: 720
    System Temp max reached during download: 67C

    =>571 KB per segment (402MB*1024/720)
    => 5 seconds of video per segment

    MEDIUM QUALITY --> iPad
    Show source: 60 min 1080i recording (5.54GB)
    Output: 960x540 @ 1.24 Mbps
    Transfer time: 17 mins = 5 Mbps (46 mins OOH = 1.85 Mbps)
    File size = 637 MB
    Total # HLS segments: 1800
    System Temp max reached during download: 67C

    =>362 KB per segment (637MB*1024/1800)
    => 2 seconds of video per segment

    HIGH QUALITY --> iPad
    Show source: 60 min 1080i recording (5.54GB)
    Output: 1280x720 @ 2.24 Mbps
    Transfer time: 22 mins = 6.2 Mbps (73 mins OOH = 1.85 Mbps)
    File size = 1024 MB
    Total # HLS segments: 1800
    System Temp max reached during download: 66C

    =>582 KB per segment (1075MB*1024/1800)
    => 2 seconds of video per segment

    NOTE: In home streaming encoding from Stream is equivalent to HIGH QUALITY download.

    OUT OF HOME (OOH) DOWNLOADS NOTE
    Out of home streaming currently uses a slow TiVo proxy server and seemingly no matter how good your ISP upload speeds are you will be limited by the proxy server to about 1.85 Mbps transfer speeds. That's why the OOH download times above are much worse that in home downloads.
    If your router has "guest mode" wireless capabilities that is a good way to test OOH mode downloads through the Proxy without having to leave home since usually "guest mode" access is limited to WAN access only.
     
  2. Dan203

    Dan203 Super Moderator Staff Member TCF Club

    37,485
    175
    Apr 17, 2000
    Nevada
    2 second segments make sense for 8 second replay and 30 second skip to work. If the segments were 10 seconds long and you did an 8 second reply say 5 seconds into a 10 second segment it would have to either jump back only 5 seconds to the beginning of that segment or back 15 seconds to the beginning of the previous segment. Same applies to 30 second skip. With 2 second segments they can hit the exact time +/- 1 second.
     
  3. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    Good point about 8 second jump back - I never use that on the iOS App so forgot it was even there. Makes sense to be a multiple of both 8 and 30 seconds.
     
  4. MikePA1

    MikePA1 New Member

    71
    0
    Nov 15, 2013
    Why?
     
  5. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    Because the shorter the segments, the higher the number of references in the .m3u8 index file, which means higher overhead during playback. Plus most descriptions of HLS give 10 seconds as a typical segment length. In this case though the references are to local files on the iDevice instead of http references, so higher number of references is not really an issue because there should be very low latency in accessing the files. For WAN references likely the 2 second segments would present a problem.
     
  6. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    I updated stats with BASIC and HIGH downloads. I guess the theory of segment lengths evenly divisible into 8 and 30 seconds doesn't hold since BASIC is using 5 secs/segment.
     
  7. Dan203

    Dan203 Super Moderator Staff Member TCF Club

    37,485
    175
    Apr 17, 2000
    Nevada
    That's probably because of GOP length. To really compress H.264 you have to increase the GOP length, but with HLS each segment has to be a new GOP so that you can enter at any segment and start playing. This was likely a compromise. With 5 second segments they can still get close to both 8 and 30 seconds (+/- 2.5 seconds) while getting a higher level of compression.
     
  8. srauly

    srauly New Member

    95
    0
    Apr 26, 2000
    Simsbury,...
    Hey guys, just got pointed to this thread by moyekj. I'm an old-time TiVo user who is considering coming back to the fold. I've been using Windows Media Center for a while and have played around with Plex. With Plex Media Server running on my Windows 7 box (Intel i7) I can stream to my iOS devices and get amazing quality for my Blu-ray rips or recorded HD TV shows. Plex offers a wide range of PQ bitrate options, all the way up to 1920x1080 @ 20 Mbps, though I'm not sure if it runs reliably (e.g., no pauses) at that high of a quality.

    I just tried one of Plex's 1280x720 @ 3 Mbps and 1024x768 @ 2 Mbps options, and both looked fine on my iPhone 5, but my iPad retina's battery is currently dead, so I can't test it out there. I also didn't bother testing using AirPlay to send those options to my Apple TV, since the TiVo app doesn't support that anyway, so no use comparing how good/bad that bitrate looks when blown up on a large display.

    Anyway, if any of you have first-hand experience using the Plex mobile app or AirVideo (a similar server-side/iOS combo), I'd be very interested to hear how you think the PQ, smoothness, and overall experience (e.g., hopefully free of stuttering/pausing) of the TiVo iOS app compares to those other solutions.

    In case you're wondering why I'm thinking of coming back to TiVo, there are a few reasons, but as it pertains to this particular discussion topic, while the Plex app offers great PQ and AirPlay support, it doesn't support live TV playback and the Plex Media Server (server-side component) doesn't natively support the Windows Media Center TV show metadata, so you pretty much have to let a show record completely, then wait for another script/app rename the files into a Plex-friendly format, and then wait for Plex Media Server to re-pull the metadata online, before you can watch anything.
     
  9. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    One thing to keep in mind is that using Stream is not the only way to get videos from TiVo onto your iDevice. There's the traditional TiVo To Go mechanism where for non copy-protected recordings on the TiVo you can download as recorded and then you can re-encode to play on an iDevice at whatever quality level you choose. The Stream is just a quicker, more convenient way to do things, but you are stuck with preset quality levels and inability to do any editing of the recorded video (like say to remove commercials).
     
  10. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    Post #1 in this thread updated with renewed information using latest version of Stream + iOS software. The striking difference compared to previous information is the download times were almost cut in half for all 3 different quality levels. Previously it took about 35 minutes each to download, now it's quite significantly faster.
     
  11. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    FYI, for OOH download mode I tried basic quality download of same show again a day later and got almost identical transfer time and hence OOH transfer rate of ~1.85 Mbps seems to be pretty consistent even when trying the next day. So it looks like TiVo Proxy server really is the limiting factor in OOH streaming and/or transfers.
     
  12. Austin Bike

    Austin Bike Member

    573
    0
    Feb 9, 2003
    I find it interesting that the larger the file, the better the transfer times. I wonder what is driving that.
     
  13. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    For in home downloads, yes. I think the limiting factor for those is the transcoding speed of the Stream, not the network speed. Higher quality encodes take a little more effort. i.e. It's the encoding effort that limits transfer speeds, not the number of bytes to transfer over.
     
  14. Austin Bike

    Austin Bike Member

    573
    0
    Feb 9, 2003
    That seems backwards. The higher quality encodes actually shower faster transfer times. Could it be that the compression is the culprit and encoding to a lower quality requires more effort so it can't transfer as fast? If so then it makes more sense to me.
     
  15. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    I don't see it as backwards. Just look at the total time it takes to transfer. The highest quality encode takes the longest because requires the most work by the transcoder. The higher transfer bit rate is merely because there are more bytes being generated per second to transfer for the higher encode. i.e. The bottleneck is not the # bytes, but the encoding effort.

    Look at it this way. If the lowest quality encode had the same transfer rate as the highest (around 6 Mbps), then the total transfer time would be much, much quicker. But it's not possible for the transcoder to do the encoding that quickly, so it's the transcoder limiting the transfer rate, not a network bottleneck.
     
  16. eboydog

    eboydog Just TiVo'ing.....

    904
    0
    Mar 23, 2006
    With this being a fairly new product, its unfortunate that TiVo chose such a limiting hardware processor that has noticeable effect transcoding the streaming content. While I can understand a reason not to have an underutilized processor related to product cost. Such implies that any future improvements in preformance is rather limited unless there are features of the Broadcom processor not currently being utilized, at least what is being seen, preformance isn't being limited by data bandwidth unless there is something I'm not understanding.
     
  17. moyekj

    moyekj Well-Known Member

    11,143
    32
    Jan 23, 2006
    Mission...
    Transcoding to H.264 is a very CPU intensive procedure. Not too long ago it was almost impossible to do it in real time with an average computer. Even with a new top notch multi-threaded general purpose processor I think you would struggle to get it to encode a 1 hour HD show to a decent quality H.264 encoding in about 20 minutes as the Stream hardware is doing for in home downloads. So I don't see the Stream hardware as underpowered. Quite frankly I'm actually a little surprised that TiVo gives a download option at all instead of just allowing only real time streaming instead.

    I personally like downloads more than streaming, because you get the quickest possible trick play response on the iOS device that way. The response in real time streaming mode is a little sluggish - nowhere near as bad as when using Slingbox, but enough to be annoying. As a side benefit, the download option also doesn't suffer from the "freezing" issue (typically towards the end of a stream) which has been posted about in several threads with streaming mode.
     
  18. Dan203

    Dan203 Super Moderator Staff Member TCF Club

    37,485
    175
    Apr 17, 2000
    Nevada
    The transcoding does not happen in the Broadcom chipset. They use a special chip from a company called Zenverge. It's capable of simultaneously transcoding four HD streams faster than realtime, which is actually quite impressive. Even the best PC chip you could buy today could not do that.
     
  19. Dan203

    Dan203 Super Moderator Staff Member TCF Club

    37,485
    175
    Apr 17, 2000
    Nevada
    With lower bitrates you typically have to set other settings, like motion estimation, higher to get acceptable quality. These settings result in the encode being more computationally difficult which can actually increase encoding times. In PC based software we typically take it even further and do a multi-pass encode, which takes even longer. As long as there are no bandwidth constraints the bitrate of an encoding makes little difference when it comes to encode times.
     
  20. JWhites

    JWhites New Member

    1,366
    0
    May 14, 2013
    I wonder if there is any change with the 20.4.2 Summer software update. Some have been reporting faster performance with streaming.
     

Share This Page