Critique my setup for streaming Tivo recordings to Chromecast

Search This thread

whitenack

Senior Member
Mar 22, 2012
75
1
I have been working for a few days on setting up a process to pull my Tivo recordings off my Tivo onto my PC, and then get them into a format where they can stream to my chromecast on another TV. In other words, a poor man's multi-room viewing. I am in over my head on several aspects, and while I have gotten it to work, I have had to make some sacrifices. I'd like to see if someone can "poke holes" in my setup and suggest a better way to get the job done.

First, here is the hardware...
Asus AC66U (currently, no qos enabled)
TivoHD (wired connection)
Fairly-new PC with capable processing power (wired connection)
Chromecast in the next room (gets full bars on wifi icon)

The setup...
1. I am using kmttg to automatically pull the recordings off the Tivo, decrypt them to an mpeg file, and then encode that mpeg file into an mp4 file that is compatible with chromecast. Kmttg has both ffmpeg and handbrake encoding capabilities.
2. I store the encoded mp4 files in a folder on my PC that is shared with everyone on my network.
3. I use Localcast on my android phone to locate the shared folder, then the file I want to view, then Localcast takes it from there.
ETA:
3. Plex Media Server on the PC
4. BubbleUPnP android app

The Plex Media Server and BubbleUPnP app solve the problem that Localcast caused by using the phone as the connection between the PC and Chromecast. Plex Media Server and BubbleUPnP allow me to connect the PC directly to Chromecast, lowering network traffic considerably and allowing me to cast a much higher quality video without the stuttering.


This setup works, however there are some problems I need to correct. I have issues with stuttering/buffering streams. I have tried to correct this by using encoding profiles that create a very small file size, which solves the buffering problem, but video quality suffers as a result. At present, I either have to decide between HD quality video that causes stutters ever few minutes, or a file that streams smoothly but has a video quality around SD quality. In seeking help on another forum for the best encoding profile, the suggestion was made that it wasn't the file size, but my wifi setup that could be the problem. Researching my wifi setup brought be to this post, which makes me wonder if localcast is my bottleneck. I was under the impression that Localcast was just creating a direct stream from my PC, similar to a direct stream from Netflix. However, if it is actually forwarding the stream from my PC through my phone to the chromecast, that would explain the poor performance (the stream has to go out to the phone and then back to the router and then out to the chromecast).
 
Last edited:

bhiga

Inactive Recognized Contributor
Oct 13, 2010
2,501
1,018
Greetings (again) fellow TiVo user! I refuse to give up my lifetime subscription and Series3 display! ;)
Here's what I suggest...
  • Install Serviio on the PC with the converted videos on them. This will make your PC a DLNA/UPnP server. Be sure to configure the library so the folder with the videos is accessible.
  • Install BubbleUPnP on your phone.
  • Set the BubbleUPnP Library to your Serviio PC (it should show up in the list).
  • Set the BubbleUPnP Renderer to your Chromecast.
  • Go to the Library and find something to play. Depending on the metadata, you may need to use the Folder view rather than categories.

I tested it and the BubbleUPnP client app that runs on Chromecast seems to grab the stream directly from the server, rather than brokering the stream through your phone. That ought to help your bandwidth issue so you can use higher bitrates to get better quality.

I like what you're doing, it's something I'd like to do eventually too.

Localcast might do the same as BubbleUPnP once you get Serviio running, I haven't used it.
 
Last edited:

whitenack

Senior Member
Mar 22, 2012
75
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.
 
  • Like
Reactions: DucksDroid

Asphyx

Senior Member
Dec 19, 2007
2,158
378
Android Wear
Google Pixel Watch
Good move with the Bubble and Plex addition....
The two of those give a great one two punch and really make all the other options for streaming pretty lackluster IMO...
Do these Tivo files have CC embedded?
Might think about moving to an MKV container and using Handbrake for the conversion.
 

whitenack

Senior Member
Mar 22, 2012
75
1
Good move with the Bubble and Plex addition....
The two of those give a great one two punch and really make all the other options for streaming pretty lackluster IMO...
Do these Tivo files have CC embedded?
Might think about moving to an MKV container and using Handbrake for the conversion.

kmttg lists closed captioning data as one of their features. I haven't tried it so I can't say if/how it works.

It also has the ability to detect and cut out commercials, but they suggest you manually check the cuts before they are made since the detection system isn't always accurate. I want this process to be totally automated, so I haven't tried that feature out fully either. The few times I have chosen to cut the commercials, something has gotten messed up with the audio sync. This would be a great feature if I can figure it out.

Thanks for the suggestion of the MKV option. I tried that encoding profile in the beginning and I kept getting errors each time the file started saying that something wasn't compatible and possibly the audio wouldn't work. Everything seemed to stream correctly, but the error message was annoying each time. Additionally, now that I have Plex installed, it doesn't seem like the old leftover MKV files are showing up in my library...as if it is an unsupported file type. I'll work on it some more. It could be the particular MKV profile I chose, or some other issue that I can work through.
 

bhiga

Inactive Recognized Contributor
Oct 13, 2010
2,501
1,018
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.
Yeah, the TiVo guide info has been spotty lately, which is not a good thing since the guide info is what the subscription is for!
Some episodes are incorrectly numbered (though the back-to-back dual-episode premieres and finales always tend to be confusing), some don't have episode numbers at all. Almost seems like they're pulling from two sources and when the "good" source doesn't have info, we get the generic version.

Do these Tivo files have CC embedded?
Plex's metadata library really is one of its strong points
TiVo recordings do have embedded CC AFAIK, but I haven't looked to see if it's encoded as MPEG subcode like on DVD or differently. My guess is it's subcode, as it's embedded in the original transport stream.

It also has the ability to detect and cut out commercials, but they suggest you manually check the cuts before they are made since the detection system isn't always accurate. I want this process to be totally automated, so I haven't tried that feature out fully either. The few times I have chosen to cut the commercials, something has gotten messed up with the audio sync. This would be a great feature if I can figure it out.
I've successfully used VideoReDo TVSuite 4 to edit both native TiVo .tivo and MPEG transport streams. It has some nifty features to fix rubbished streams and also has commercial detection. It's not free, though since I already have it, this auto-processor may just have reserved a few future weekends... Hmm, I might have to get a new machine after all (granted, my desktop is over 5 years old - I just dislike change, haha).
 
Last edited:

Asphyx

Senior Member
Dec 19, 2007
2,158
378
Android Wear
Google Pixel Watch
kmttg lists closed captioning data as one of their features. I haven't tried it so I can't say if/how it works.

It also has the ability to detect and cut out commercials, but they suggest you manually check the cuts before they are made since the detection system isn't always accurate. I want this process to be totally automated, so I haven't tried that feature out fully either. The few times I have chosen to cut the commercials, something has gotten messed up with the audio sync. This would be a great feature if I can figure it out.
Yep I understand the automated want...PITA to have to manually do it. Commercials are always a PITA to cut out. You can just as easily FF through them later.

Thanks for the suggestion of the MKV option. I tried that encoding profile in the beginning and I kept getting errors each time the file started saying that something wasn't compatible and possibly the audio wouldn't work. Everything seemed to stream correctly, but the error message was annoying each time. Additionally, now that I have Plex installed, it doesn't seem like the old leftover MKV files are showing up in my library...as if it is an unsupported file type. I'll work on it some more. It could be the particular MKV profile I chose, or some other issue that I can work through.
Hmmm it could be the CC Subtitles that are the actual issue with compatibility. You might be able to tweak that profile properly but if you don't need them why bother. I only asked because I have a few family members who watch my library but seem to need CC to help them so I have been forced to add embedded CC subtitles to my Library system (mostly MKV) and was curious if you had that capability.

Plex's metadata library really is one of its strong points
TiVo recordings do have embedded CC AFAIK, but I haven't looked to see if it's encoded as MPEG subcode like on DVD or differently. My guess is it's subcode, as it's embedded in the original transport stream.

For guys like us (and other XDA folk) it's probably not as important to have a nice and easy interface to navigate with but since we all have friends and family who need to navigate these things Plex just makes the whole process a lot simpler to teach for those uninitiated users.

One of the biggest downsides to the DLNA architecture is it's lack of metadata and good interface system.
Uninitiated want to see box covers not file listings.

As for your old computer it may be 5 years old but that still makes it a good prospect for a media server...Throw a bit more ram in and run Linux and it should be good enough for transcode and serving.
But you know that already! LOL
 

bhiga

Inactive Recognized Contributor
Oct 13, 2010
2,501
1,018
Yep I understand the automated want...PITA to have to manually do it. Commercials are always a PITA to cut out. You can just as easily FF through them later.
Yeah, precisely why I haven't really put much effort into dealing with them to date. Still, when you're archiving hundreds of hours, those commercials add up.

I only asked because I have a few family members who watch my library but seem to need CC to help them so I have been forced to add embedded CC subtitles to my Library system (mostly MKV) and was curious if you had that capability.
That describes me perfectly. Something's either wrong with my hearing, audio system, or both. :(

As for your old computer it may be 5 years old but that still makes it a good prospect for a media server...Throw a bit more ram in and run Linux and it should be good enough for transcode and serving.
But you know that already! LOL
;) It's a dual quad-core with 32GB of RAM, so still quite capable for my needs, which is why I haven't upgraded (aside from cost), but as an encoding machine its fans SCREAM so I usually throttle encoding tasks outside of sleep times using Battle Encoder Shirase. The other alternative is to switch to liquid cooling, but my system is not mainstream (AMD Socket F server board) so doing that will likely require more than a weekend.

This just reminded me though... I do have my previous desktop which was a quiet machine. Nowhere near the same horsepower, but it was quiet... Hmm... Now ALL of my precious spare time has been shot! LOL!!
 

whitenack

Senior Member
Mar 22, 2012
75
1
Hmmm it could be the CC Subtitles that are the actual issue with compatibility. You might be able to tweak that profile properly but if you don't need them why bother. I only asked because I have a few family members who watch my library but seem to need CC to help them so I have been forced to add embedded CC subtitles to my Library system (mostly MKV) and was curious if you had that capability.

Nevermind. I see my problem now. It's not the MKV that is causing the problem, its the fact I don't have the folder set up correctly for that particular show (the only recordings for that particular show were MKVs). I dropped an MKV file into an existing show folder and it recognizes it. Awesome. So, at this point I just need to figure out which encoding profile I need to use to generate the best video quality for the smallest file size.
 

bhiga

Inactive Recognized Contributor
Oct 13, 2010
2,501
1,018
So, at this point I just need to figure out which encoding profile I need to use to generate the best video quality for the smallest file size.
Individual quality judgements will vary (and so will Spouse Approval Factor), but as a matter of reference, DTV streams are typically 19 Mbps MPEG-2, so they're already squashed, which roughly translates to around 4 Mbps in MPEG-4.

Commercials are good for threshold purposes, especially those with the tiny text at the bottom of action commercials that says "Professional stunt person - Do not attempt." One because those types of commercials have a lot of action and scene changes, and two because the text at the bottom tends to be small, and that's usually the first thing to go blocky/fuzzy when you drop too many bits.

Watch out of the car commercials though, the SUPER tiny text on those is usually already destroyed by the cable company's compression. :)
 

whitenack

Senior Member
Mar 22, 2012
75
1
Individual quality judgements will vary (and so will Spouse Approval Factor), but as a matter of reference, DTV streams are typically 19 Mbps MPEG-2, so they're already squashed, which roughly translates to around 4 Mbps in MPEG-4.

Commercials are good for threshold purposes, especially those with the tiny text at the bottom of action commercials that says "Professional stunt person - Do not attempt." One because those types of commercials have a lot of action and scene changes, and two because the text at the bottom tends to be small, and that's usually the first thing to go blocky/fuzzy when you drop too many bits.

Watch out of the car commercials though, the SUPER tiny text on those is usually already destroyed by the cable company's compression. :)

We cut the cable cord a few years ago, so unfortunately I am accustomed to uncompressed quality. Having said that, the Chromecast is connected to our bedroom TV and it isn't exactly a high quality display. It was one of those Black Friday specials where they pretty much give it away. Thanks for the tip on the commercial text test. That will be handy.
 

Asphyx

Senior Member
Dec 19, 2007
2,158
378
Android Wear
Google Pixel Watch
It's a dual quad-core with 32GB of RAM, so still quite capable for my needs, which is why I haven't upgraded (aside from cost), but as an encoding machine its fans SCREAM so I usually throttle encoding tasks outside of sleep times using Battle Encoder Shirase. The other alternative is to switch to liquid cooling, but my system is not mainstream (AMD Socket F server board) so doing that will likely require more than a weekend.

Get one of those corsair pre-built models...
http://www.frozencpu.com/products/1...1366_2011_AM2_AM3.html?tl=g30c321&id=Ar4dvGLz

That should be more than enough for Encoding/Transcoding...You would only need more for Gaming....
But I agree you are a far way off from needing an upgrade with that rig!

Nevermind. I see my problem now. It's not the MKV that is causing the problem, its the fact I don't have the folder set up correctly for that particular show (the only recordings for that particular show were MKVs). I dropped an MKV file into an existing show folder and it recognizes it. Awesome. So, at this point I just need to figure out which encoding profile I need to use to generate the best video quality for the smallest file size.

As for Profile everything I have currently is H.264 4-10Mbs with AAC Stereo, AAC Surround and in some cases where it was available AC3 or DHT.
But that is not conducive to automated encode really...

What I do for most of my movies is if it has AC3 or DHT I add in AAC Stereo, AAC Surround based off the Dolby track and add any subtitle tracks I need as well.
So what I wind up with is a virtually device wide compatible Video track and Multiple Audio and subtitle tracks to choose from depending on the output device.

Probably don't need something that comprehensive for TV shows...Just make sure there is at least one AAC audio track.
File Size will really be dictated by Video Bitrate which @bhiga already mentioned...4MBs is probably the most you could need given the source quality.
 

whitenack

Senior Member
Mar 22, 2012
75
1
Probably don't need something that comprehensive for TV shows...Just make sure there is at least one AAC audio track.
File Size will really be dictated by Video Bitrate which @bhiga already mentioned...4MBs is probably the most you could need given the source quality.

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?
 
Last edited:

bhiga

Inactive Recognized Contributor
Oct 13, 2010
2,501
1,018
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.
 
  • Like
Reactions: whitenack

Nizda1

Senior Member
Nov 12, 2011
411
85
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
 
  • Like
Reactions: bhiga

Asphyx

Senior Member
Dec 19, 2007
2,158
378
Android Wear
Google Pixel Watch
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.
 
  • Like
Reactions: whitenack

whitenack

Senior Member
Mar 22, 2012
75
1
Yes but thats what your encoding profile says not the source bitrate right?
Yes, that file had been encoded, but at a much higher rate than what it ended up at. I think the bitrate was set at either 4000 or 5000, but still only produced a file at a bitrate of about half. Therefore, I assume that the Tivo file is set at that bitrate?

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.
Yeah, these are .TiVo files, and I can't find any information on it. You were right about the frame rate...too high. I adjusted to 30 and that helped. I then tried about 4 or 5 different bitrate settings and am still looking for the perfect match between video quality and file size. I currently have one (480xheight, 1250 bitrate, 1500 max rate) that is a nice file size but a little fuzzy for my tastes. Then I have another one (1280xheight, 2000 bitrate, 2500 max rate) that looks great. What I'll try to do tonight is work on trimming the bitrate down a bit on the higher quality one until I notice a quality change, and then see if it changes the file size enough to justify the loss of quality.

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...

Thanks for all the help. I came to this post knowing nothing about any of this and all the information I have is from you guys and reverse engineering some existing profiles. I wouldn't have been able to do it without you guys.
 

whitenack

Senior Member
Mar 22, 2012
75
1
Oh, I forgot to mention that I see there may be an option to access my Plex Media Server from other networks over the internet. Looks like BubbleUPnP also supports setting up media servers over the internet, so I will work on that next.
 

Asphyx

Senior Member
Dec 19, 2007
2,158
378
Android Wear
Google Pixel Watch
Oh, I forgot to mention that I see there may be an option to access my Plex Media Server from other networks over the internet. Looks like BubbleUPnP also supports setting up media servers over the internet, so I will work on that next.

Yeah I would shoot for 720P (1280 X 720) as that is likely the best quality your likely getting from the sources you have recorded.

I don't see where encoding set at one bitrate would actually wind up with a lower bitrate output, unless of course you have it set to Auto Match Bitrate. Which really shouldn't be done because the new codec you are encoding to might require a higher bitrate to get the same quality (Remember different codecs compress differently and as a result require more or less bandwidth than other codecs to get the same quality)

So you have to choose the target bitrate that works best for the codec you are encoding in. In the case of H.264 and 720P 4Mb is a good balance of size and quality. That will translate to roughly 1Gb of file per hour of programming give or take how active the footage in the material is.

As for remote Streaming...Yes both Plex and Bubble support this. You do have to have a machine up and running at all times and you must set up your router to port forward the ports used by these servers to be sent to the server. Make sure also that the Server has a static IP or that you have set a DHCP reservation in yor router for the server machine so it has the same IP address every time.


Remote streaming will almost always require you to ask for a reduced bandwidth version of the stream since your ISP is unlikely to give you enough upload speed to get full quality but it has helped me pass the time on those long days where I have nothing to do and just waiting around to pass the time.
 

whitenack

Senior Member
Mar 22, 2012
75
1
I don't see where encoding set at one bitrate would actually wind up with a lower bitrate output, unless of course you have it set to Auto Match Bitrate. Which really shouldn't be done because the new codec you are encoding to might require a higher bitrate to get the same quality (Remember different codecs compress differently and as a result require more or less bandwidth than other codecs to get the same quality)
Hmmm, we are quickly getting over my head. I don't have any experience in encoding, I am hijacking example encoding profiles and tweaking them a bit. Can you take a look at my profile and see if I am making any mistakes?

Code:
FFMPEG -y -i INPUT -threads CPU_CORES -vcodec libx264 -level 31 -subq 6 -me_range 16 -qmin 10 -qmax 50 -g 300 -s 1280xHEIGHT -r 29.97 -b 2000k -maxrate 2500k -acodec aac -strict -2 -ac 2 -ab 160k -ar 48000 -f mp4 OUTPUT
I think I pulled this code off an example iPhone profile. I have tweaked the resolution, bitrate and max rate a bit to experiment, but am not really sure what anything else does other than the fps and stereo aac (which is all I need).


Remote streaming will almost always require you to ask for a reduced bandwidth version of the stream since your ISP is unlikely to give you enough upload speed to get full quality but it has helped me pass the time on those long days where I have nothing to do and just waiting around to pass the time.
Ok, forget that then. I hadn't thought about my ISP upload speed. I have TWC and my download speeds are enough for my needs but my upload speeds are pretty weak.
 

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.