Chrome Capture for Channels

This is pretty cool! Just found this, and I've been capturing some show episodes on Hulu with it.

I noticed some of you chatting about Apple processors; here's my CPU/GPU usage, while a capture is in progress. It's recording at roughly 5-6Mbps. This is on a MacBook Pro, with M3 Pro processor (there are two variants, this one is 12-core CPU, 18-core GPU):

So all in all, as you can see, not very taxing on the system at all.

Note the DVR is running on a different system - this usage is just for the Chrome Capture.

EDIT: I should add that I've watched quite a few of these recordings now, and they're nearly flawless. No stuttering or other issues that I've noticed.

That's awesome. Yeah m2 is right on the edge. With optimization it may be near flawless. I plan on making a script to watch Hulu etc with adblocker so we can record shows and movies on streaming networks. I am going to test an i7 6700 soon. M3 I have no doubt would do well. I am not sure why my ESPN 4k - faux 4k lol.. (1080p) recording stuttered except maybe the PC needed a bit more optimization with registry or needed more bitrate. It's roughly every 15min that it messes up. And my other 4 threaded i5 glitches every 7-10 min on average.

Hopefully someone that knows more about coding can implement a new way for puppeteer-stream or playwright to record in 60fps. Thats the true dream. 30fps is okay but it's noticable.

Also, perhaps lower end hw will work on Linux

1 Like

Just FYI.
I am following your progress. I had a CC4C setup in the past. It worked really well, but got frustrated with the webm encoding, particularly the opus audio. Everything was using Spectrum, so the source was consistent and good quality. Everything was 720p/60 as I recall, but definitely had no issue with frame-rate other than it was Always 60, regardless of program. So your experience there is interesting. Also, I had it running on the same M1 Mac mini that serves my CDVR. The highest I tested was with 4 simultaneous streams, but it never broke a sweat. So your experience there is also interesting. I wonder if it has something to do with encoding to H264_envc/AAC?

I moved onto my own custom HDMI rig (which is awesome btw) but if you are able to get better encodes with H264 and AAC, then perhaps it is worth taking another look at CC4C. At least my experience is that it is easier/cheaper to scale.

Anyway, thanks for sharing your experience.

Afaik it's always been 30fps. Quality is great but within 15min you will get encoding error on most sub 8 threaded machines, especially NBC.com.and sometimes cbs

How much does your hdmi rig cost? The issue I have with HDMI is many channels arent on apps any more, but have online streams

I am probably not a good example of how to build one on a budget. There are lots of examples of how to do a build-out in the AH4C and ADBTuner threads. On the plus side, you can start small and scale. It started out as an experiment and turned into an obsession.

I am just north of $500 all in for my four-tuner setup. I am using AppleTVs as the "tuners". There are a lot cheaper options. But I had four of them sitting in a box in my garage, so made sense for me. Also, I have Spectrum cable, and AFAIK the Android based streamers don't support that app without additional efforts. I opted for four individual encoders vs a 4-channel version. I have three of the U-Ray 4K boxes and one of the ENC1-V3. The U-Rays are better, but not much and not worth the extra cost IMO.

The result is a better solution than the TVE that it replaced. 1) I get ALL the channels, not just the ones that support TVE; 2) My particular solution tunes a bit faster; 3) The picture (overall) is better and certainly more consistent across all the channels; and 4) It has been just as reliable for me as the TVE experience. I have been up and running without issue for over 9 months now.

All that said, If it weren't for the webm/opus encoding, I would probable still be using the CC4C and have a few extra dollars to spend on some other silly project. I may tinker with it more seeing that you seamed to have solved the encoding part.

The hardware HDMI encoder picture is better for sure, but what I was getting was really pretty good. Based on your posts, I think the biggest difference in experience may be due to me using a streaming service (Spectrum), versus bodging up all the individual TVE links.

Anyway, hope something in there is useful for you.

Thats nice you have a solution. I don't binge tv and usually only really want to record 1-2 things at a time. With my 3600x I have had no stutter except recording ESPN 4k. I used youtube tv trial and was able to get the feed - ESPN 4k is only 1080p, they dont offer a 4k stream, but I assume the bitrate may be higher than 16mbit and thats why I had issues.
With that said I have a streamer login that I share that only lets 2 people stream at once and someone else usually uses it, and sometimes 2 (rarely). I also bum a login from my parents, like many cord cutters, so it kind of makes sense for me to use cc4c for now, especially with many paramount channels gone from the apps.

Hopefully tmm1 or someone who knows more about coding can explain why 60fps wont work, as it would be nice to have, but the 30fps this uses seems to appear 60fps at times.

Has anyone got ESPN4K working on one of those on a directvstream/youtubetv?

Not sure this will help older i5's, but those with windows 11, even using unsupported hardware are getting a boost with a new update- I also havent tested this on linux, so its possible older i5's can handle cc4c on linux.

Update: i7 6700 worker well. I watched Knocked Up on E Pacific for about 45-60 min and it only had minor stuttering 2x in the first five minutes. With some modifications to windows I think I can get that down to zero

I increased page file and did some further optimization and can confirm zero stutter on i7.

qq about the performance of the streams. Does anyone know if it's using hardware acceleration to handle playback? @doug8796

Am I doing something wrong? When I try to open MSNBC in this version, I get a log full of

TypeError: Cannot read properties of undefined (reading 'match')

Edit: It works if I use the /stream?url= to the channel rather than the name. I'm good with this. Time to see if it can handle the in-law's 5 hours of back-to-back recordings

Absolutely helps. Earlier in this thread I posted about it.

It's more thread and cpu bound, though gpu I am sure has an effect to a degree

Nice job and good luck

1 Like

Hardware acceleration should alleviate that for playback, ideally

Ideally but if you look at my code hw acceleration is already on and it didn't help significantly at all if any.

Maybe a better coder could add it, 60fps too. It feels 60fps but when you check the stream you will find it isn't.

I have yet to see code that makes NBC.com smooth on anything less than a i7 6700

Granted I had low space on my i5 7600k and didn't try with 48gb pagefile, it also doesn't support nvme even though my other dell 6700 PC does

Ahh interesting. I haven't looked at the code for this so I was just spitballing :slight_smile:

2 Likes

Page files? How much ram do you have?

1 Like

16GB, with 48GB pagefile. Other PC is lower, but I literally did every registry hack and trick to get it to handle the stream including going headless, I think less than 8 threads is going to cause a massive headache to anyone with a decent stream (Spectrum has lower quality streams so doesnt need as much power, but even it hiccups last I checked). NBC has some of the highest quality streams.

I haven't tested 2 at once yet, but the i7 might be able to handle it . With a m3/m4/m5, i9, or good xeon I assume 5+ would work just fine

I have never seen it use that much ram. what exactly are you doing to your streams? how much of the code have you modified? a 48GB pagefile is absolutely insane for any application. I have had zero issues with any streams with minimal changes to the main.js currently on github, i have only added flags for accelerated video. Without the flags I could only do 1 stream at a time. 2 would start stuttering/playing audio with paused video, etc. but with it enabled I have had up to 3 streams going. I have an i7-12700k and 32GB of ram but unless I had a ton of chrome tabs open I don't see how I'd ever get to such a large pagefile.

1 Like

Just in case. I probably could have used a lot less. You have a 12th gen i7 of course you are going to run it well. Newer i5s should be able to as well. Remember, I am using a 6th gen i7 from 2017

Your CPU has 20 threads, mine has 8. Newer i3 with 8 threads should do fine too but like I said ,4 and less, they will struggle. Maybe the m2 or possibly something with 6 threads could run it with optimization

My 6-thread i5-9500T is handling it pretty well. 16 GB of RAM. I’ve never seen usage creep over 30%. It only really chokes when watching/recording a CC4C channel and running comskip at the same time. I’m working on getting another, identical machine just to handle the CC4C stuff