Critique my setup for streaming Tivo recordings to Chromecast

Search This thread

bhiga

Inactive Recognized Contributor
Oct 13, 2010
2,501
1,018
However, now I see I can use another program, pyTivo, that will allow transfers back to the Tivo in a standard mpg format. It will even allow the transfers to be triggered from the Tivo, which is even better that what I think I was going to be able to do (had to trigger from the PC and then pull it back off the Tivo when I was done).

Yup, I run pyTiVo to make my non-TiVo content available there. The nice thing with TiVo is it's a download rather than a streaming operation, which is perfect for queuing a bunch of programs and binge-watching them later when your transcoding server is slow like mine. :)

I use the wmcbrine build... Be careful about Python versions - pyTivo doesn't work on newer ones. These instructions are from 2010 but still should apply: http://scottsoapbox.com/2010/04/20/pytivo-install-instructions/ (if you're doing a Windows install).
 

Asphyx

Senior Member
Dec 19, 2007
2,158
378
Android Wear
Google Pixel Watch
Is there any way to speed up the Handbrake conversion? I tried out the following encoding profile and it produces a smaller file with good video quality, but it took over an hour to encode. I use a "veryfast" ffmpeg profile and it just takes 10 minutes. I have read online that handbrake can only be as fast as your machine can run, but I think I have a pretty quick machine (i5 3570k, 8GB ram). Am I missing something? See below...
Code:
HANDBRAKE -i INPUT -t 1 -c 1 -f mkv --large-file --decomb  --detelecine -e x264 -b 1300 -2  -T  -a 1 -E faac -B 160 -6 dpl2 -D 1 -x threads=CPU_CORES:ref=3:mixed-refs=1:bframes=6:weightb=1:direct=auto:b-pyramid=1:me=umh:subq=9:analyse=all:8x8dct=1:trellis=1:nr=150:no-fast-pskip=1:psy-rd=1,1 -v -o OUTPUT
Handbrake and FFMPEG all are CPU intensive encoders...so the CPU is the key to the speed, you can however tweak the settings for a faster encode but at the expense of quality.
There are other encoding option that will use your Video Card GPU (nVidia and Radeon) to help with the encode and take a big load off the CPU, it speeds up encoding time quite a bit.I use Xilisoft which supports this when I don't need to tweak or add tracks since it has none of that capability.

I have researched some more info on this. It looks like TiVo is using the "Production Number" instead of the "Episode Number". Most times, this number is the same, but sometimes it is not (the episodes were aired out of order, or the show lists the pilot as production number 100 instead of 101. It's not a huge deal, but it is incorrect probably 25-50% of the time on certain shows which really hampers my "automatic" goal.
There are three standard forms of TV Show Cataloging...
One you have is usually reserved for Syndicated only shows since they don't have a clear Original Air Date and don't really have SEASONS so to speak in the general sense since thats a Network thing not really a production thing...
What is throwing you off is if Episode 1 is listed as 0 it throws the whole damn series out of whack as far as scraping is concerned. So you will need a good renaming utility.

Proper conventions for TV shows and good scraping are
SxxExx - S00=Specials S01=Season 1 Etc...E01 =Episode 1
SxEE - S=Season EE=Episode and the x is really an x! examples are 1x01 is Season 1 Episode 1
Last and not least is the 100 system
SEE Where S= the Season EE is the Episode examples are 101 Season 1 Episode 1, 201 Season 2 Episode 1

The Pilot being Ep100 may not be a problem if that Pilot is listed as a Special on TVDB. You will only have to rename that title to S00Exx
The issue will be do they just count episodes is it the latter SEE format if so you might have a 100 but you should NOT have a 200 just a 201
That would be season 2 Ep 1


So, I'll have a better quality video plus I'll be using less storage. Win Win!

Thanks for all the help folks! Please excuse all my bumblings and "learn-as-you-go" posts.

Glad to help but you may still need to encode because I'm not sure Plex can play the Tivo native files...If it can you are good to go!
Don't worry about the AC3 since Plex will transcode it to AAC....
If you want to reencode then use the handbrake, slow as it is and keep the AC3 but ADD an AAC track to it using the AC3 track as the source.
It won't add much to the filesize at all!
 

whitenack

Senior Member
Mar 22, 2012
75
1
I use the wmcbrine build... Be careful about Python versions - pyTivo doesn't work on newer ones. These instructions are from 2010 but still should apply: http://scottsoapbox.com/2010/04/20/pytivo-install-instructions/ (if you're doing a Windows install).
Thanks for the tip. I don't haven't done any reading on pyTivo, so I have no idea what you are saying here, but I'll start my research!

Glad to help but you may still need to encode because I'm not sure Plex can play the Tivo native files...If it can you are good to go!
Don't worry about the AC3 since Plex will transcode it to AAC....
If you want to reencode then use the handbrake, slow as it is and keep the AC3 but ADD an AAC track to it using the AC3 track as the source.
It won't add much to the filesize at all!
Yeah, Plex won't play .TiVo files because they are encrypted mpeg files. However, kmttg will decrypt them and convert them to standard mpeg. The problem I am running into right now is Plex has a bug right now where it can't transcode AC3 5.1 to something Chromecast can play. Some of my recordings are AC3 5.1. Therefore, I either need to encode to just AAC stereo or, as you say, add an AAC track. I don't have surround sound equipment, so I'm not sure I'll ever need/want the 5.1 track.

Another little tidbit I found is the Plex player has a setting where you can adjust the video bitrate while the recording is playing. So, if your network is slow, you can lower a high bitrate file down to a bitrate that will play smoothly. The default is 2000, and I didn't realize this. I started playing the high quality 8000-9000 videos and the video quality didn't look all that great. I was kinda bummed, thinking maybe the chromecast was hindering video quality. However, once I found that setting and knocked it up to 8000, the video quality was very good.
 

Asphyx

Senior Member
Dec 19, 2007
2,158
378
Android Wear
Google Pixel Watch
Thanks for the tip. I don't haven't done any reading on pyTivo, so I have no idea what you are saying here, but I'll start my research!

Yeah, Plex won't play .TiVo files because they are encrypted mpeg files. However, kmttg will decrypt them and convert them to standard mpeg. The problem I am running into right now is Plex has a bug right now where it can't transcode AC3 5.1 to something Chromecast can play. Some of my recordings are AC3 5.1. Therefore, I either need to encode to just AAC stereo or, as you say, add an AAC track. I don't have surround sound equipment, so I'm not sure I'll ever need/want the 5.1 track.

Another little tidbit I found is the Plex player has a setting where you can adjust the video bitrate while the recording is playing. So, if your network is slow, you can lower a high bitrate file down to a bitrate that will play smoothly. The default is 2000, and I didn't realize this. I started playing the high quality 8000-9000 videos and the video quality didn't look all that great. I was kinda bummed, thinking maybe the chromecast was hindering video quality. However, once I found that setting and knocked it up to 8000, the video quality was very good.

You don't have surround gear now...But you never know what you might have in the future! LOL
I meant to mention the Player side bit rate controls but it was late and forgot....
You should set them for the highest quality possible as you can lower it on a case by case basis as needed from within the stream.
What you really want to happen is for the file to direct play without transcoding at all...
 

cherry198810

Member
Mar 31, 2015
10
0
Glad to help but you may still need to encode because I'm not sure Plex can play the Tivo native files...If it can you are good to go...

According to my experience, Plex can’t handle TiVo format. Native video support is typically (but not always) limited to the MP4 container, H.264 video encoding, and AAC audio. So you need to look for a software program that will convert TiVo shows to Plex compatible file type.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    Yeah, I'm not ready to give up my old Tivo either! My wife has been bugging me that she can't watch recorded shows

    I played around with my setup last night and found some things that work. I installed Plex Media Server on my PC and the BubbleUPnP on my phone. The BubbleUPnP app automatically detected the Plex Media Server and casting to my Chromecast was very easy. And you are right, this setup allows casting directly from PC to the Chromecast. I was able to stream my files without any stuttering! I have to go back now and re-encode my existing files to a higher video quality, but that is a price I am willing to pay.

    Plex Media Server downloads the metadata about the recordings from the internet and automatically names, organizes and adds thumbnails for each recording. This is really cool. It took me a few attempts to figure out how the folders and files needed to be stored on my PC to get it to work right, but I think I have the hang of it now.

    The only small trouble I have in the process is it seems like Tivo's episode information is incorrect on some of the recordings. For example, Tivo thinks a particular recording is Episode number X, but really it is Episode number Y. Tivo's Episode Title is correct, but Plex seems to just look for the Season/Episode information to pull the metadata, and then overwrites the Episode Title with the downloaded info. I have to go back into my PC and correct the episode number, which then corrects the trouble on Plex at the next download. However, this has just happened on a couple of recordings and it may not be a big issue.

    I'll take a look at Serviio and see how it compares to Plex.

    My next project is to see if I can find a way to stream recordings from my Mega cloud account. With 50bg of free storage, that would allow my Tivo recordings to be available wherever I am. I see Mega has a mobile app, and they say that it is possible to stream files from it, but I haven't been able to get it to work. You can long press on a file and share it to BubbleUPnP or Localshare, but I get an error message on Chromecast saying the file type is not supported. It would be nice if Mega added Chromecast support. That would rock. Even if I can't cast it to Chromecast, being able to stream it on my phone would be great. However, when I click on the file, it just tries to download the file to my phone's storage. I see there are 3rd party apps that claim to stream Mega files, but I'm wary of trying them since they don't look to be widely used.
    1
    I just checked a file I had encoded earlier using a profile that has a description of "same res h.264 video", which I assume means the video quality is not altered in any way. I looked at the details of the file and it shows this:
    Code:
    Data Rate - 2511kbps
    Total bitrate - 2704kbps
    Frame Rate - 59 fames/second

    Forgive me for being a noob, but is this saying that the total bitrate doesn't even exceed 3MBs? So even if I picked an encoding profile that limited the file to 4MBs, I would still be getting original video quality?
    Same res = same resolution, but the bitrate can still affect video quality.
    That said, the parameters you're showing should produce good results.
    1
    An AIO corsair or any other closed loop would start getting costly for him. Remember he has more than one CPU to cool, so you'd really wants go open loop cause you need two CPU blocks and I don't know anything else about the system so I won't guess how many rads you would need. Maybe change the fans out if there too loud, but I'm assuming you need something very powerful like delta fan's to keep it cool. Anyways that site recommended above does have a nice selection of quality water cooling components and fans. Check out alphacool, I use there rads with a swiftech block, but watch out for the clearance its around 60mm.

    Sent from my SAMSUNG-SGH-I337 using Tapatalk
    1
    I just checked a file I had encoded earlier using a profile that has a description of "same res h.264 video", which I assume means the video quality is not altered in any way. I looked at the details of the file and it shows this:
    Code:
    Data Rate - 2511kbps
    Total bitrate - 2704kbps
    Frame Rate - 59 fames/second

    Forgive me for being a noob, but is this saying that the total bitrate doesn't even exceed 3MBs? So even if I picked an encoding profile that limited the file to 4MBs, I would still be getting original video quality?

    Yes but thats what your encoding profile says not the source bitrate right? You should experiment a bit and see at what bitrate you see little to no quality loss or find some way to figure out the bitrate of the source file (since it's in some proprietary format might not be possible).
    Then just make sure your target bitrate for re-encode is slightly higher with the same frame rate and you should be fine. from the looks of it it sounds like your FPS may be too high. And that might be a cause of loss of quality. Great for movement but the frames and pixels suffer.

    Think if it similar to the following
    The VBrate is like a bottle holds all the data for video and comes once a second.
    FPS determines how many pictures are in that bottle with each picture being limited to the data size that allows all pictures to fit in that bottle.
    Resolution (1080, 720) determines how many pixels must be REPRESENTED (but not always actually present) in each picture.

    SO...

    a VBRate with 4000K and 60 fps means 66.6K worth of pixel data per frame,
    VBRate of 4000k and 30 fps means 133.3K worth of data per frame

    Divide that number yet again by the number of pixels (resolution) and you get the data allotment for each pixel. As that number gets smaller the pixels actually get larger and blockier by trying to make one pixel tell the story of 4 or 8 pixels to fit into the limits of the picture so the pictures (FPS) can fit into the limits of the bottle (VBRate) and the dynamic range of each pixel gets compromised as it must use a shorter pallette for Light Dark, and RGB (Red Green Blue).

    By the same token this is also why Upconverting often leads to blockiness not because of the limits of the Output but the limitations of the input. And no BETTER quality is actually possible.All the encoder does is double the pixels or framerate using the VBrate for each but you are not actually getting any better quality just magnifying the pixels. And that is just like looking at a screen with a magnifying glass. You see how blocky the pixels really are in the original and those blocks just get BIGGER on the upconvert.

    I suggest you see what the top Bitrate and resolution of the source files are and then set your profile accordingly to at least get parity for the best quality possible.
    Resolution and FPS should exactly match and then the VBrate as long as it is the same or slightly above will ensure your getting everything there is to get out of the source...


    Remember he has more than one CPU to cool,...

    ...Anyways that site recommended above does have a nice selection of quality water cooling components and fans. Check out alphacool, I use there rads with a swiftech block, but watch out for the clearance its around 60mm.

    Yes good catch I missed the DUAL and just saw the Quad...The Dual CPU does complicate things.

    I have used Frozen for most of my Personal Builds of rigs but mostly because they are so damn close to me that I get the shipments almost next day even when I ship it ground.
    IMO Cooling is the most overlooked and underrated part of Rig Building...

    I happen to have a Cosmos S case I use for all my main rigs (Just keep changing the guts) because it's just so versatile no matter what I decide to do, Water, Fans and plenty of room for all of it.
    1
    what TiVos do you guys have? I have the new romaios. and how do you connect the computer to the tivo?

    Just for knowledge, I don't plan to do anything with my tivo, my setup is working how it is.
    Used to have a mix of HD and Series3 units but standardized on Series3 (family now has the HD units) since my wife and I value the clock and recording display. If/when we upgrade I'll probably have to build some kind of display unit haha.

    In terms of computer connectivity there's Galleon (I use it for automatic download from TiVo), kmttg, pyTivo (I use it for providing non-TiVo content back to TiVo though that's rare how that I have Chromecast) and probably a couple of others. Lots of discussion and reading on TivoCommunity if you're so inclined.

    Essentially the computer looks like another TiVo unit and uses the multi room viewing capability to transfer recordings. The official TiVo Desktop software could do this too, but I think it has since been retired. Not sure if it would work with Roamio.

    Other than the lack of display and the cost involved to get another lifetime subscription, the top end Roamio is quite attractive to me.