BETA: Chrome Capture for Channels

Is your Mac’s display resolution greater than 1920x1080? I found that to be the key to get things borderless and at high quality.

My MacBook Pro display resolution is set to its highest setting of 1920x1200 and I still see the borders.

1 Like

I had issues until I had a greater width than 1920. I’m using a headless Mac mini though…with an HDMI dongle installed, I set it to 2560X1440. Works like a charm. Alternatively, you could edit the source to resize to 720p instead of 1080p. TL;DR: I believe, though I’d defer to the experts, your issue is that your width isn’t set to greater than 1920. Equal to 1920 won’t do the trick.

Best of luck.

1 Like

Wow! I was able to force the resolution to 2560x1600 and the borders are gone. Thanks so much for the suggestion. What would you suggest as the ideal resolution as I can go all the way up to 3840x2500…

CC4C is set to only record at 1080p. There’s really no value in going much beyond that - this is, after all, a screen capture of a livestream video tuned off of a website. I don’t believe most (all?) of the streams you would use this solution for even have 4K streams at this moment. I will let @tmm1 or others weigh in though.

To answer your original question: if you actually use the screen on the Mac…well, that’s up to you. :smile: If you don’t…I would set it to whatever the next resolution up from 1920x1080 that you have, unless you have a need for it. Larger resolutions = slightly higher memory consumption on a Mac. Given Apple Silicon’s shared memory model, that’s slightly less memory available for other apps running on the Mac. So why use more than you absolutely need for a given task?

Tagging @babsonnexus in case you want to add this to the FAQ…I’ve seen a couple of similar questions to this one.

@tmm1 the “your screen resolution must be set higher than 1920x1080” challenge (at least for Macs)…is there either a way around it (not sure if this is a puppeteer issue or something else), or perhaps if you detect the screen resolution is less than 1920x1080, you can set CC4C to record a 720p stream instead of trying for a 1080p one?

Just a couple of thoughts.

1 Like

Excellent explanation. I will do as you suggest and set the resolution just above 1920x1080. I would ultimately like to see this project rolled into Channels server. I wonder if this is on the roadmap…

Thanks again for you help :grinning:.

3 Likes

I’ve noticed that if I wake my display on my Mac while a job is running, the screen will not sleep until the job completes. Has anyone found a work around for this?

Sorry to post again, but which HDMI dongle/dummy are you using?

Well my suggestion RE: Dynamic Custom Channel would not technically use any browser.
In effect, the current code in Chrome Capture looks for a "video" then uses that to capture the Chrome screen etc.
I say look for an m3u.
IF you find an m3u, Detour over to the Custom Channels code with that m3u and let it play as usual.
.
Maybe this could be a change to Custom Channels code instead of Chrome Capture.
That is, allow the normal .m3u OR a web site that is a video live stream, like Chrome Capture can do.
IF the http in Custom Channels is NOT a .m3u inspect the http web site pointed to for an m3u,
IF it finds an m3u use it to Play as normal, IF no m3u is found it fails.

1 Like

I just got Philo to work with the new solution.
I need to figure out what link to use to get th elive stream.
if i click on a program it plays the program instead of th elist stream itself.
I imagine Hulu live has some of the same issues.
Any kind of tips would be appreciated.
I'm using my Synology for Channels and using an old dell PC to run Chrome capture.
I was able to log in Chrome Capture on Philo.

thanks

Things I've noticed so far.

Scheduled recordings often fail. Yet manual recordings haven't so far.

Watching in a channels client is nearly always glitchy yet viewing raw feed in the chrome window tab never is glitchy.

I can get FULL screen recordings without a dongle or other workaround by:
Once a recording has started,
switch over to the chrome feed tab displaying the video
Right click, show controls, (at this point if you cannot see the full screen icon maximize the browser) then click the full screen icon
When you return to the client the video is now displayed in full screen!

As a bonus..once the video is full screen there appears to be almost no glitches, approaching zero.

Addendum: this test recording crapped out at 30 minutes with these errors.

2023/07/03 08:19:58.472408 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Length 5 indicated by an EBML number's first byte 0x08 at pos 480177069 (0x1c9eebad) exceeds max length 4.
2023/07/03 08:19:58.472408 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:28:35.317143 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element FA at pos. 0x2005c185 with length 0x11ad255a4ff considered as invalid data. Last known good position 0x2004710c, 6 unknown elements in a row
2023/07/03 08:28:35.317143 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:29:56.431887 [SNR] Buffer statistics for 10.0.0.227 (living Room Channels) for ch12581 USA (West): buf=0% drop=0%
2023/07/03 08:30:03.601953 [TNR] Opened connection to M3U-ChromeCaptureforChannels for ch12580 USA (East)
2023/07/03 08:30:08.056008 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216360, current: 153810; changing to 216361. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.056008 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219510, current: 154890; changing to 219511. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.056008 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219511, current: 156420; changing to 219512. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.057545 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216361, current: 158760; changing to 216362. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.057545 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219512, current: 159390; changing to 219513. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.057545 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219513, current: 162360; changing to 219514. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.057545 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219514, current: 163890; changing to 219515. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.057545 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216362, current: 164610; changing to 216363. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.057545 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219515, current: 166860; changing to 219516. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.070109 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219516, current: 169920; changing to 219517. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.098622 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216363, current: 170370; changing to 216364. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.098622 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219517, current: 171360; changing to 219518. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.098622 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219518, current: 172890; changing to 219519. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.123627 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219519, current: 174420; changing to 219520. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.123627 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216364, current: 175320; changing to 216365. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.123627 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219520, current: 175860; changing to 219521. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.165319 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219521, current: 177390; changing to 219522. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.167323 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219522, current: 178920; changing to 219523. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.207016 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219523, current: 180360; changing to 219524. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.208017 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216365, current: 181080; changing to 216366. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.208017 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219524, current: 183420; changing to 219525. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.269784 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216366, current: 186120; changing to 216367. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.271094 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219525, current: 190890; changing to 219526. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.271094 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216367, current: 191880; changing to 216368. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.271094 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219526, current: 192420; changing to 219527. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.301507 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219527, current: 193860; changing to 219528. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.301507 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219528, current: 195390; changing to 219529. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.340685 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216368, current: 196830; changing to 216369. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.340685 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219529, current: 196920; changing to 219530. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.340685 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219530, current: 198360; changing to 219531. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.372791 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219531, current: 199890; changing to 219532. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.372791 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219532, current: 201420; changing to 219533. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.468799 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216369, current: 202590; changing to 216370. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.469789 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219533, current: 202860; changing to 219534. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.469789 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219534, current: 204390; changing to 219535. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.469789 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219535, current: 205920; changing to 219536. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.469789 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216370, current: 207540; changing to 216371. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.469789 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219536, current: 208890; changing to 219537. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.503853 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219537, current: 210420; changing to 219538. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.503853 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:1; previous: 216371, current: 213390; changing to 216372. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.503853 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219538, current: 214920; changing to 219539. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.538848 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219539, current: 216360; changing to 219540. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.538848 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219540, current: 217890; changing to 219541. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.566661 [HLS] ffmpeg: chrome-USA (East): [mpegts @ 0000000001b00640] Non-monotonous DTS in output stream 0:0; previous: 219541, current: 219420; changing to 219542. This may result in incorrect timestamps in the output file.
2023/07/03 08:30:08.830669 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element 78DC at pos. 0x209e9a12 with length 0x26dd19fd6df considered as invalid data. Last known good position 0x209d9bf6, 2 unknown elements in a row
2023/07/03 08:30:08.830669 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:10.753988 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element FE at pos. 0x20a2ed0e with length 0x27b9c82b3 considered as invalid data. Last known good position 0x20a1c99f, 3 unknown elements in a row
2023/07/03 08:30:10.753988 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:12.706921 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element 8E at pos. 0x20a5e70d with length 0x155c67e considered as invalid data. Last known good position 0x20a4e963, 1 unknown elements in a row
2023/07/03 08:30:12.706921 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:14.907914 [HLS] ffmpeg: chrome-USA (East): [matroska,webm @ 00000000012924c0] Length 8 indicated by an EBML number's first byte 0x01 at pos 532878 (0x8218e) exceeds max length 4.
2023/07/03 08:30:14.907914 [HLS] ffmpeg: chrome-USA (East): [matroska,webm @ 00000000012924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:17.651034 [HLS] ffmpeg: chrome-USA (East): [matroska,webm @ 00000000012924c0] Unknown element E2 at pos. 0x1ec1f8 with length 0x211c9949a considered as invalid data. Last known good position 0x1e8673, 2 unknown elements in a row
2023/07/03 08:30:17.711812 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element 9E at pos. 0x20b54a44 with length 0x194983 considered as invalid data. Last known good position 0x20b1349b, 1 unknown elements in a row
2023/07/03 08:30:17.711812 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:18.988904 [HLS] ffmpeg: chrome-USA (East): [matroska,webm @ 00000000012924c0] Unknown element 6442 at pos. 0x249bd0 with length 0x1568b3 considered as invalid data. Last known good position 0x2462e9, 3 unknown elements in a row
2023/07/03 08:30:19.137666 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element A8 at pos. 0x20b7f761 with length 0x9a42d4 considered as invalid data. Last known good position 0x20b6f5a0, 1 unknown elements in a row
2023/07/03 08:30:19.137666 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:21.205831 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element C0 at pos. 0x20b9ea57 with length 0x1e5fd8 considered as invalid data. Last known good position 0x20b8f0cb, 2 unknown elements in a row
2023/07/03 08:30:21.205831 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:23.438743 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Length 5 indicated by an EBML number's first byte 0x0c at pos 549318536 (0x20bdef88) exceeds max length 4.
2023/07/03 08:30:24.753946 [SNR] Buffer statistics for 10.0.0.227 (living Room Channels) for ch12580 USA (East): buf=0% drop=0%
2023/07/03 08:30:24.754459 [ERR] Error during stream M3U-ChromeCaptureforChannels ch12580 USA (East): read |0: file already closed
2023/07/03 08:30:24.754828 [TNR] Closed connection to M3U-ChromeCaptureforChannels for ch12580 USA (East)
2023/07/03 08:30:24.804440 [HLS] ffmpeg: chrome-USA (East): av_interleaved_write_frame(): Invalid argument
2023/07/03 08:30:24.804440 [HLS] ffmpeg: chrome-USA (East): Error writing trailer of pipe:: Invalid argument
2023/07/03 08:30:29.557928 [TNR] Sharing existing connection to M3U-ChromeCaptureforChannels for ch12581 USA (West) (clients=2, len=0)
2023/07/03 08:30:45.099878 [SNR] Buffer statistics for 10.0.0.227 (living Room Channels) for ch12581 USA (West): buf=0% drop=0%
2023/07/03 08:30:49.450179 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element 82 at pos. 0x20f22a91 with length 0x90000000000161 considered as invalid data. Last known good position 0x20f0e7c3, 3 unknown elements in a row
2023/07/03 08:30:49.450179 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:30:50.748881 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element CF at pos. 0x20f3c873 with length 0x1f3768 considered as invalid data. Last known good position 0x20f2d01a, 1 unknown elements in a row
2023/07/03 08:30:50.749510 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:31:01.097837 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Unknown element 2CB8C2 at pos. 0x21063b9f with length 0x109f15 considered as invalid data. Last known good position 0x2104b2fc, 6 unknown elements in a row
2023/07/03 08:31:01.098347 [HLS] ffmpeg: chrome-USA (West): [matroska,webm @ 0000000000f924c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:31:13.699431 [DVR] Waiting 28m36.3005689s until next job 1688389190-360 Glenn Beck Radio
2023/07/03 08:31:13.699431 [DBG] Scheduling wake timer for scheduled recording in 27m6.3005689s
2023/07/03 08:31:19.586534 [SNR] Buffer statistics for "TV\2023 Tour de France\2023 Tour de France Stage 3 2023-07-03-0755.mpg": buf=0% drop=0%
2023/07/03 08:31:19.675531 [ERR] Error during stream M3U-ChromeCaptureforChannels ch12581 USA (West): read |0: file already closed
2023/07/03 08:31:19.675531 [TNR] Closed connection to M3U-ChromeCaptureforChannels for ch12581 USA (West)
2023/07/03 08:31:19.718272 [HLS] ffmpeg: chrome-USA (West): av_interleaved_write_frame(): Invalid argument
2023/07/03 08:31:19.718272 [HLS] ffmpeg: chrome-USA (West): Error writing trailer of pipe:: Invalid argument
2023/07/03 08:31:19.768744 [DVR] Job cancelled: 1688385590-558 2023 Tour de France
2023/07/03 08:31:19.849714 [DBG] Scheduling wake timer for scheduled recording in 27m0.1502854s
2023/07/03 08:31:21.471918 [DVR] Processing file-38772: TV\2023 Tour de France\2023 Tour de France Stage 3 2023-07-03-0755.mpg
2023/07/03 08:31:21.790268 [DVR] Running commercial detection on file 38772 (TV\2023 Tour de France\2023 Tour de France Stage 3 2023-07-03-0755.mpg)
2023/07/03 08:31:22.417463 [TNR] Opened connection to M3U-ChromeCaptureforChannels for ch12580 USA (East)
2023/07/03 08:31:33.985393 [HLS] ffmpeg: chrome-USA (East): [matroska,webm @ 00000000012224c0] Unknown element EF at pos. 0x28c976 with length 0x5784a9582 considered as invalid data. Last known good position 0x288b18, 2 unknown elements in a row
2023/07/03 08:31:33.985393 [HLS] ffmpeg: chrome-USA (East): [matroska,webm @ 00000000012224c0] Seek to desired resync point failed. Seeking to earliest point available instead.
2023/07/03 08:31:44.167373 [DVR] Starting job 1688387504-ch12580 2023 Tour de France on ch=[12580]

Would be interested to see your system resources. Using an old I7, I could kinda run a single stream but as soon as I did something else on the computer or it ran a task I would see freezes...etc. While my GPU and CPU were OK, the old system couldn't handle mutltiple threads cleanly.

When I moved to a headless new AMD Ryzen, I can run 4 streams at the same time. I use a HDMI Headless adapter and control it via VNC. It only does Chrome and the App. I have done recordings and they are also flawless. I do see some issues on NBC, sometimes. I only notice this on golf channel. E! and others that the wife watches are great. Spectrum is flawless.

My experience has been mixed to date.

I have no more issues with black borders, since going above 1920x1080 resolution on the capture PC. No missed recordings, although I have noticed if the capture PC is rebooted, the first attempt to tune a channel, will fail. Then, a second attempt is OK. I have a mix of Fubo and NBC sources running, and Fubo consistently gives a higher bit rate capture.

But, my biggest issue is the constant "judder" when watching on a client. Specifically on sports, it's very, very annoying. Doesn't matter if the source is NBC or Fubo. I agree with CScott above, the video in the Chrome tab, on the capture PC, is perfectly smooth, but after encoding and traveling thru the Channels server, it becomes judder-y. Something must be happening to the frame rate somewhere along the path.

I've tried the capture PC with only the internal graphics on my i7-8700, a GTX 1650 GPU, and an Arc A380 GPU. All with latest drivers, and all deliver the same judder at the Channels clients. It doesn't matter how many streams are being capture, this happens with 1 or 4 streams. Doesn't appear to be a resource issue, and the both the CPU and GPU are reasonably loaded. More investigating on the horizon.

2 Likes

I have been playing with this for a while.
Best to have a dedicated computer, or at least one that you are not interacting with while Chrome Capture is active.
I have had the best result with my old I7 with Quadro RTX4000 video. Set to 3840x2160p to a HDMI dummy plug.

I tried running this on my main Computer into a 3rd monitor (which was actually a dummy plug) so I wouldn't have to look at it while it was in action. Interacting with the computer and running other tasks caused the capture to fail in one way or another. Hence the need for a dedicated computer. At this point, the results have been mostly acceptable. Probably not reliable enough to depend on recordings, but certainly good enough to watch live.

To set the video output, I logged into the PC with Chrome Remote Desktop, or whatever they are calling it. this way the PC thought the dummy plug was the active display and I could change settings.

I'm not having the judder problems with this particular setup, but I have seen it with most of the things I have tried and its too annoying to watch.

Update: Tried Fubo as a source and was getting some Judder.
The fix for me was to create a custom resolution in the NVidia software for 2048x1536 120hz
No border no judder.

1 Like

Thanks for the info. My capture PC is a spare machine, dedicated to only this task. Fresh Windows 11 Pro install. I do have a GTX 2060 I can try. That will have a similar Turing chip, as your Quadro RTX4000. But, I suspect there is a settings issue somewhere, as all the hardware I've been trying, certainly has the ability to encode a smooth stream.

In the past, whenever I've gotten an "EADDRINUSE" error, I've been able to fix it by using Activity Monitor on the Mac and force-quitting any instances of Chrome Capture, and then relaunching it. If a Chrome Capture process isn't appearing, though, but I still get that error, is there another process that would cause the error? I've been getting that error, without any Chrome Capture processes running, and the only way to recover is rebooting my Mac.

1 Like

How to force the the url on NBC to the west_cost feed when slected in custom channel. when a east and west feed are selected in CDVR client. Its always starts the default brand url. Here is what the server is showing
[2023/07/03 17:05:02.349] GET /stream?url=https://www.nbc.com/live?brand=syfy&callsign=syfy_west from ::ffff:192.168.1.34 responded 200 in 1914.347 ms
[2023/07/03 17:05:02.449] finished https://www.nbc.com/live?brand=syfy
[2023/07/03 17:05:02.455] streaming https://www.nbc.com/live?brand=e
[2023/07/03 17:05:23.631] GET /stream?url=https://www.nbc.com/live?brand=e&callsign=e_west from ::ffff:192.168.1.34 responded 200 in 808.203 ms
[2023/07/03 17:05:23.685] finished https://www.nbc.com/live?brand=e
[2023/07/03 17:05:23.761] streaming https://www.nbc.com/live?brand=e
[2023/07/03 17:05:39.187] GET /stream?url=https://www.nbc.com/live?brand=e&callsign=e_east from ::ffff:192.168.1.34 responded 200 in 970.678 ms
[2023/07/03 17:05:39.336] finished https://www.nbc.com/live?brand=e
[2023/07/03 17:05:39.365] streaming https://www.nbc.com/live?brand=bravo
[2023/07/03 17:05:50.711] GET /stream?url=https://www.nbc.com/live?brand=bravo&callsign=bravo_west from ::ffff:192.168.1.34 responded 200 in 772.910 ms
[2023/07/03 17:05:50.798] finished https://www.nbc.com/live?brand=bravo
[2023/07/03 17:05:50.801] streaming https://www.nbc.com/live?brand=bravo

2 Likes

Which streaming services work with this?

NBC obviously works
Fubo works perfectly
DirecTV Stream does not work.
Hulu does not work.

Anyone try Sling?
Sounds like YouTube works, but I haven't tried it.
Inquiring minds want to know.

Following up on my post from two days ago, I was able to get the behavior I was looking by using AdGuard extension custom filters to get to the point where only the video viewport/div was shown on the page (and all others that were 'noise' were filtered out). This also allowed for the video auto-fit to start working properly.

For anyone wanting to do the same, remove any statements in main.js and puppeteerstream.js that refer to the Chrome argument "--disable-extensions-except". Otherwise, your ad blocking extension will not be allowed to load.

I am not sure why all extensions except for puppeteer are explicitly disabled, but I am finding no adverse effects by removing that constraint.

2 Likes

@tmm1 Hi Aman, is there a way to schedule a recording pass using a 30-minute placeholder interval (instead of the default 60)? I see that it is possible to have a repeating recording every hour for a length of 30 minutes (60 ending 30 minutes early), but that would not capture recordings starting at the half hour mark.

Anyway, some ability to adjust the default EPG would be helpful when used in conjunction with Chrome Capture and/or HDMI for Channels. Thanks.

1 Like