That fixed it. Running sudo lsof -iTCP:5900 told me that port 5900 was being used by screen sharing, so my original container probably was using 5901 and by wiping it out I lost the memory of making that change. Thanks!
I've got it running again. TV is in a huge letterbox though. Thinking it's because the viewport is still 1920x1080, I changed the resolution to 1280x720 and it helped a bit, but it's still not fullscreen on the TV.
changed: Xvfb :99 -screen 0 1920x1080x16 &
to: Xvfb :99 -screen 0 1280x720x16 &
Thoughts?
When you VNC into the container to enter your credentials, did you try setting the embedded Chrome to fullscreen? I use this extension only very occasionally, as I prefer the HDMI encoder based projects, but iirc going "fullscreen" in the container's Chrome was the way.
The change you made to Xvfb seems correct, so I'll change the compose according once you have things running with little or no letterbox.
I ended up reverting it back to 1920x1080. NBC kept erroring out, but as soon as I switched it back it would play again. And the black border all around isn't as large as it initially as large. I'll keep playing around with it. Oh and yes, it is in full screen.
The Chrome version running in the Docker is 114. Not sure how to update it to a more current version, if that would even make a difference.
In the Xvfb command, your viewport WIDTH and HEIGHT environment variables, or both?
Sorry i wasn't clear. Here: Xvfb :99 -screen 0 1920x1080x16 &
On top of this, I can't seem to log into Paramount Plus to see if I can get the channels they took off of TVE or Showtime which I've previously had, or into Spectrum. Not sure this will be worth it after all.
Well, well, well. I did all my previous testing with the Channels web client using Chrome browser on my Linux desktop. Today, I gave it another try with the same results. However, I then tried the Channels Android client on my phone, and the streams suddenly appeared.
Any way to implement chrome capture to Plex? Or chrome capture with only work with the channels app?
Point Plex to your Channels directory(s)
this was excellent feedback! Haven't played with this in a while but adding it to my existing list and the 'tearing' symptom absolutely went away. your right, it pauses and buffers but when its solid its solid. thank you!
Thanks! In the guide, it shows up as the tmsGuideServiceId
I'm finding that with all these recordings on USA that I'm doing for the Olympics, Chrome capture is very unreliable. Some of the recordings are fine and play through all the way but many of them freeze up at some point while audio continues.
It's definitely the encoder (or NBCU) because when I play back the files with VLC you see the exact same behavior.
I gave up on running this with docker and installed with node.js on my 2018 MacBook Pro (intel) so that I could adjust some of the settings, plus I was having issues with the chrome version in docker not working with some sites. I don't have that issue with mac chrome. I changed viewport to 1280x720 and increased videoBitsPerSecond to 9500000. It seems to be running much better. The video will occasionally pause while audio continues, but after a second or two the video speeds up to catch up with the audio. I agree that it on the encoder side. I'm curious if changing any of the other optional arg settings would correct this, or increasing the videoBPS a bit more may fix it? It seems to play better at this than at the default 80000000. I'm just not sure which to try.
Circling back on this. Here is what recently worked for me, pieced together via Google search:
Run this command in terminal, to identify what is using the Chrome Capture listening port (in my case, port 5589), and get what is known as its "PID":
sudo lsof -i :5589
The output that follows should include an entry with the same port number used by Chrome Capture for Channels (probably 5589) in it. Mine looked like this:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
node 16806 macuser 21u IPv6 0xe670276c3f0b1201 0t0 TCP *:5589 (LISTEN)
node 16806 macuser 22u IPv6 0xe670276c3f0b2a01 0t0 TCP 192.168.7.180:5589->192.168.7.180:49401 (ESTABLISHED)
ffmpeg 17010 macuser 5u IPv4 0xe6702767701e2361 0t0 TCP 192.168.7.180:49401->192.168.7.180:5589 (ESTABLISHED)
The second entry starting with "node 16806" is the one I want, because it has my port number (5589) in the output, and is the "PID". I ignored the ffmpeg entry even though it also listed the same port.
Take that PID (16806 in my case) and terminate the process with the following:
kill -9 16806
where you replace 16806 with the PID in your output.
I was then able to start Chrome Capture for Channels, although I did have to hit the Play button twice when testing it out in the Channels client (perhaps because I didn't kill the ffmpeg instance?).
Noob question here:
After installing cc4c, I have version 20.9.0 of node installed. Is this something I need to worry about keeping up to date? And is there a preferred method of doing so?
(I'm getting my brain around this, and I believe node is installed in my chrome-capture-for-channels directory, but I believe I also have node installed elsewhere for Homebridge)
Has anyone got this running on a NAS? I couldn't find instructions anywhere but with some guesswork, I got this far:
M3U doesn't work, though.
Yes, I set it up on my NAS, but the performance was very so-so, even on a system with an i5 running with 96GB of RAM. I've found using my Mac Mini M1 setup works far more smoothly for launching CC4C channels. The Chrome installation on the NAS is the wonky part... and it meant I couldn't reliably use the "button-click" method in main.js to unmute Peacock live streaming channels (like REELZ). The Mac allows for easier customization until someone can figure out how to bake all that into the install file.
Has anyone tried a hybrid of CC4C and HDMI for Channels?
I'm thinking about the following:
- Source: Raspberry Pi with HDMI out to the Link Pi, streamed as a custom channel in Channels
- Tuning: auto-load URLs in Chrome on the Pi (and deal with popups / auto-full screen / etc). Similar to what the tuning in CC4C accomplishes.
If this worked, it feels like the best of both worlds:
-
Flexibility of CC4C: load any URL that might not have a Fire or ATV app, and don't have to worry about apps that don't allow deeplinking
-
Quality of HDMI: high resolution and frame rate without needing a sizable PC
Plenty of people here are smarter than me.... what am I missing?
Not sure what happened BUT my CC4C NBC channels are not sizing properly. Ive changed nothing.....But i just remoted in to my dedicated DVR pc and when i load up a CC4C channel any nbc the chrome browser window does not show up BUT the channel plays ok but boxed style?? ive rebooted everthing but no love
You'll have way more issues than that with NBC, namely that at least half of the recordings will freeze up and fail at some point in the vid.
Totally unreliable.
