Chrome Capture for Channels

@conman10000, Interesting. When you had the usanetwork url, did you ever see this freezing issue on that channel?

@sheepy, yes happens on the USAnetwork URL and now NBC short code urls.

2 Likes

Since Fubo changed their app and broke ADB, I thought I would revisit CC4C. I wasn't able to get it working with chrome 116. It hasn't worked for me since 114. So I took another run with the docker version. I thought the picture quality was poor. I discovered I could edit the main.js file with docker desktop. Changed it from 5 mbits to 18 mbits.
Picture is great. I'm actually surprised how well it's working.
I can use the computer for other stuff and I'm not having the resource issues I had running the windows version.
We are fortunate to have 2 ways to deal with DRM.

1 Like

As is often the case with these mega threads, useful information gets lost in the volume. I've posted this several times, but here is a docker compose (best used with Portainer) that allows for both VNC connections to cc4c (for entering credentials and the like), and setting of custom bitrates for both video and audio.

Set the environment variables to your liking, and you're off to the races:

version: '3.9'
services:
  chrome-capture-for-channels:
    image: fancybits/chrome-capture-for-channels:latest
    container_name: cc4channels
    command:
      - sh 
      - -c 
      - |
        Xvfb :99 -screen 0 1920x1080x16 &
        x11vnc -display :99 -forever &
        sed -i '/videoBitsPerSecond/c\        videoBitsPerSecond: process.env.VIDEO,' main.js;
        sed -i '/audioBitsPerSecond/c\        audioBitsPerSecond: process.env.AUDIO,' main.js;
        exec node main.js
    #devices:
      #- /dev/dri:/dev/dri # Uncomment for Intel Quick Sync (GPU) access
    ports:
      - 5589:5589 # cc4channels proxy port
      - 5900:5900 # VNC port for entering credentials
    environment:
      - VIDEO=${VIDEO}
      - AUDIO=${AUDIO}
      - TZ=${TZ} # Add your timezone in the Environment variables section with "name" set to TZ and "value" to your local timezone
    volumes:
      - cc4channels:/home/chrome # Creates persistent Docker Volume in /var/lib/docker/volumes for Chrome data and main.js
    restart: unless-stopped
volumes:
  cc4channels:

And here's a screenshot of the environment variables section:

1 Like

Is this applicable for Windows users?
I'm running windows 11.
I know just enough about docker to stay out of trouble.

Thanks!

1 Like

Untested by me, but it should be fine. Portainer is even available as an extension for Docker Desktop.

One of the great things about Docker containers, is you're not installing things in the traditional Windows sense. Much better for experimentation than the typical Windows package installation, as you can stop the container, and it's like it was never there.

1 Like

I will do some research and see if I can figure this out. I've been using docker desktop and VM's (vmware and hyper-v) for quite a while. Just never got into much detail with docker and docker desktop.

Thanks for the help!
Great bunch of guys in here.

1 Like

I've got CC4C all set up properly (as far as I can tell) on my Windows 10 Server. I'm using the .exe version and simply just downloaded it from the GitHub page and ran it. I then created the custom channels through the "text" option. Everything seems set up correctly in the Channels DVR server and the channels show up fine in my guide.

So here is my problem. I'm using this for the NBC channels as a workaround for the whole DRM protection thing. If I load up one of these channels in a chrome browser tab, it plays just fine. Unfortunately when I call up the channel on one of my Channels DVR clients, the video buffers/freezes up quite frequently. I've tried both the HLS and MPEG-TS setting in the custom channel setup and get the same result, and I've also tried both software and hardware mode under the transcoder section on the Channels DVR server, and again, same results. I have the latest version of Chrome (116) installed on my Windows 10 server computer in addition to the latest version of Channels DVR server.

I'm hoping someone here can provide me some input on my problem/issue and let me know what I need to do...if I can do anything at all...to correct this problem. Thank you so much to this great community for providing so much help and insight!

@Accustiver, this seems to be a common problem when streaming from the NBC site. I'm not sure everyone is seeing it, but quite a few seem to have this freezing issue. Who is your provider? It may be possible to stream directly from them, instead of the NBC site. This is what I've done with Fubo, and have not seen the freezing issue.

So I have RCN/Astound…a cable company. I don’t think they provide their own platform with the channels, but I could be wrong.

1 Like

Running Windows and like Accustiver, I'm using the .exe version and simply just downloaded it from the GitHub page and ran it. I then created the custom channels through the "text" option. Everything seems set up correctly in the Channels DVR server and the channels show up fine in my guide.

I have two channels, MSNBC and Weatherscan with a FUBO URL set up like this:

#EXTINF:-1 channel-id="MSNBC",MSNBC
chrome://https://www.fubo.tv/watch?channelId=75083

#EXTINF:-1 channel-id="Weatherscan",Weatherscan
chrome://localhost:5589/stream/Weatherscan

Selecting MSNBC to watch live, I see a spash screen for the program, a spinning circle and 'Reconnecting' message; After about 10 seconds it disappears and reverts back to the Select screen

Selecting Weather Scan, I see a spinning circle, 'Starting', 'Remux Starting, 'Transcoder starting', 'Transcoder running' and a blank white screen that when hovering I see a Pause, rewind, and timeline.

Any tips, hints, things to try?

I have only added containers by command line.
How do I do this with Docker Compose....

Pretend I know nothing.

1 Like

@billvv, when you first tried to tune to a Fubo channel, did you go to the CC4C window and sign in to your Fubo account?

This doesn't look right to me. I believe what you're after is:

#EXTINF:-1 channel-id="MSNBC",MSNBC
chrome://localhost:5589/stream?url=https://www.fubo.tv/watch?channelId=75083
2 Likes

Docker Desktop for Windows is not my "A" game, but here's what I'd suggest: open the Docker Desktop Dashboard and go to extensions. From there, you should be able to install Portainer.

In Portainer, go to Portainer-Stacks and paste the docker-compose yaml into the Stacks editor. Add the environment variables shown in my previous post (adjusted for your needs of course), and then click on "Update the stack". Navigate back to Portainer-Containers and you should see cc4c running.

There are "Quick Actions" buttons to see the container log and even to exec into the container if needed.

Sheepy: I just signed into Fubo on Chrome; same result.

1 Like

Progress, now I see a sign in screen.. I have a FUBO tab in a single instance of Chrome, and I can play the current content using FUBO.

Good catch @bnhf. @billvv, Since you have Fubo, I'd switch all the NBC channels over to a Fubo url. And, you can also add any other Fubo channel, that doesn't support TVE, this way.

OK Great Progress! I signed in on the Chrome instance, selected my FUBO profile, and lo and behold I see the program. I can see video when I call a live program up on the FireStick, but the audio is bad and there are halts. Update: I closed the second Chrome instance and now it seems to be fine on Firestick.

My processor is '11th Gen Intel Core i5-11400 @ 2.6GHz, 2592 Mhz, 6 cores, 12 logical processors.

I managed to stumble through this and I got it all working.
The performance is not consistent using this method.
Video is not smooth. Sometimes it is though.
Its like the 50/50 solution.

Thanks for the pointers.

1 Like