I didnt create any new accounts this is my original account which was temporarily suspended and I got it back so i asked my question with my legit account that was just reinstored. I have nothing to hide I have done nothing wrong
I didnt create any new accounts this is my original account which was temporarily suspended and I got it back so i asked my question with my legit account. I have nothing to hide I have done nothing wrong
but thats okay i wont ask anymore questions thanks either way
I was wondering why I received numerous notifications, DMs and messages for the same thing. I found it very odd that many people would ask that exact same question all the sudden!
To @TaliandTony @luiseduard4841 @tali1 @tali2 the others that all asked for a copy of the script I was using for Peacock to unmute the stream, I'm no longer using CC4C and don't have the config file anymore. I posed my changes here from back when I was testing out CC4C but have not used it since.
In case anyone else runs into this: I use a Beelink mini computer, Windows 11 Pro, exclusively for the Channels DVR. I was having issues with CC4C, streaming Spectrum channels, like Taliand Tony mentioned. I'd have lags, stalls, and garbled audio playing back on my firestick. But I was also accessing my Channels DVR settings page on that computer using Google Chrome. The issue also happened if I accessed the settings page via Firefox. But when I switched my browser to EDGE when accessing http://127.0.0.1:8089/admin/home, and streamed a CC4C channel, everything streams fine. So for that machine, I've made EDGE my default browser and I no longer have problems. Just passing along the experience in case it helps anyone else.
Does anyone have a cc4c development environment currently working? Please provide details about it if you do. I have it loaded into Visual Studio, but it fails every time chrome is launched.
I've set up Chrome Capture and am using NESN (and NESN+) with it, but somehow it launches NESN into full screen while leaving NESN's header bar there.
When watching NESN "manually" in my browser there's no way I can find to get it into this state. It starts in a window with the header, but still seeing the full video below it:
Or it goes into full screen where the header bar disappears, of course.
Any ideas? I figure you might've sorted out the right way to do this back when NESN was functional in Channels. Maybe there's a different/better URL to use?
And thank you!
(I posted about this in December and I thought I had posted this here in the cc4c thread, but now realize it was in a NESN thread. NESN - Not Working - #25 by DaveTheNerd)
Afaik nesn works in the ESPN+/3/fox method from m0ngr3l
I do -- though I've only ever built the Docker version. Also, I posted how to set up cc4c in a Proxmox LXC, if that helps.
Thanks. I attempted to set up cc4c in Docker on a Debian server where I am currently running the Channels server. It did not go well. I may try that again with AI assistance, or I may rebuild the server with a new motherboard (it's too old for Windows 11, so I went the linux route to avoid the demise of Windows 10)
I have the cc4c executable running on a Lenovo Yoga 900 laptop in Windows 11. It's reasonable, but it needs some tweaking to work well enough. I can't get main.js to run on that laptop, though. It fails when chrome is launched, and it behaves exactly the same way on my current laptop (Dell XPS 15 9520).
I must be setting it up incorrectly, but I can't figure out what I'm doing wrong.
Only a few people have ever reported satisfactory results running cc4c in a Docker container. A few of us have attempted improvements, but nothing has really gotten us where we want to go.
Check out the write-up I did for installing cc4c in an LXC container, as that's more-or-less the same as what you'd need to do to install it on a Debian host:
thanks, that looks doable. I won't have the opportunity to try it for a couple of weeks, so I'll check back in.
Meanwhile, if you or anyone else have any insight about why I can't get "node main.js" to work in Windows, I'd greatly appreciate it! The symptom is that when it attempts to launch chrome to start rendering, chrome immediately disconnects. Then cc4c tries a few more time before giving up.
Thanks,
-Jay
The steps I posted here have consistently worked for me on Windows 10 and 11 (“new” computer came with 10, later wiped it and upgraded to 11) as recently as last week. Might be worth a shot if you haven’t already tried them.
EDIT: Originally linked the wrong post
That's the one. I tried to edit my previous post after I posted it because I realized I had inserted the wrong link. I must have done it too fast and triggered a filter. My apologies. I've edited that post now
When trying to play a cc recording away from home I get this error...lmk if anyone knows where I went wrong!
Error on device
Recording corrupted (-16)
log
2025/03/02 12:50:20.042836 [ENC] Starting encoder for Garage Squad S03E02 2016-08-24 68 El Camino 2025-03-02-1148.mpg in G:\DVR\Streaming\file21330-2fd882c0285e-2278964111\encoder-248-3490365921 at 248 (761.488000) (encoder=h264_amf, codec=h264, acodec=aac, resolution=720, deinterlacer=blend, bitrate=3808, segment_size=0.01)
2025/03/02 12:50:20.135419 [HLS] ffmpeg: file21330-2fd882c0285e: [h264_amf @ 000001d133bfe9c0] [Eval @ 00000046f99fced0] Undefined constant or missing '(' in 'reserved'
2025/03/02 12:50:20.135419 [HLS] ffmpeg: file21330-2fd882c0285e: [h264_amf @ 000001d133bfe9c0] Unable to parse option value "reserved"
2025/03/02 12:50:20.135419 [HLS] ffmpeg: file21330-2fd882c0285e: [h264_amf @ 000001d133bfe9c0] Error setting option color_primaries to value reserved.
2025/03/02 12:50:20.135419 [HLS] ffmpeg: file21330-2fd882c0285e: Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
2025/03/02 12:50:20.137551 [HLS] ffmpeg: file21330-2fd882c0285e: [aac @ 000001d13186f740] 2 frames left in the queue on closing
2025/03/02 12:50:20.240163 [ENC] Encoder stopped for Garage Squad S03E02 2016-08-24 68 El Camino 2025-03-02-1148.mpg in G:\DVR\Streaming\file21330-2fd882c0285e-2278964111\encoder-248-3490365921 after starting from 248 without encoding any segments. Marked segment as failed.
The channel works live on the device along with other non cc recordings.
My cc recordings work at home.
Progress! I followed those instructions before, at least up to the NewChromeCapture part. However, when I ran npm install, I got a ton of warnings which I opted to "fix" according to the instructions. That reduced (but not eliminated) the warnings, and it completely broke ChromeCapture. Here are the warnings:
npm warn deprecated vm2@3.9.19: The library contains critical security issues and should not be used for production! The maintenance of the project has been discontinued. Consider migrating your code to isolated-vm.
added 272 packages, and audited 273 packages in 11s
30 packages are looking for funding
run `npm fund` for details
21 vulnerabilities (3 low, 3 moderate, 12 high, 3 critical)
To address issues that do not require attention, run:
npm audit fix
To address all issues possible (including breaking changes), run:
npm audit fix --force
Some issues need review, and may require choosing
a different dependency.
Run `npm audit` for details.
This time I ignored the warnings and node main.js worked fine.
My next trick was to try NewChromeCapture. That didn't work, though. If I run it directly, node ncc-7-0.js, I get the following errors:
[2025/03/02 12:16:58.661] TypeError: Cannot read properties of undefined (reading 'match')
at C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\ncc-7-0.js:248:33
at newFn (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express-async-errors\index.js:16:20)
at Layer.handle [as handle_request] (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express\lib\router\route.js:144:13)
at Route.dispatch (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express\lib\router\route.js:114:3)
at newFn (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express-async-errors\index.js:16:20)
at Layer.handle [as handle_request] (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express\lib\router\layer.js:95:5)
at C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express\lib\router\index.js:284:15
at param (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express\lib\router\index.js:365:14)
at param (C:\Users\jay\source\repos\ChromeCaptureDev\chrome-capture-for-channels\node_modules\express\lib\router\index.js:376:14)
If I run the batch file, I get:
node:internal/process/promises:392
new UnhandledPromiseRejection(reason);
^
UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "undefined".
at throwUnhandledRejectionsMode (node:internal/process/promises:392:7)
at processPromiseRejections (node:internal/process/promises:475:17)
at process.processTicksAndRejections (node:internal/process/task_queues:106:32) {
code: 'ERR_UNHANDLED_REJECTION'
}
Node.js v23.6.0
Now that I have it running, maybe I can figure that one out in VS. FWIW, my main goal is to see if I can set the Chrome process priority from Node just after Chrome is launched.
Thanks for your help!
Ahh! Perfect. I hadn't realized that. Thank you. I'll check it out!
I found out why this wouldn't work for me. The code near line 246 needed to be changed:
app.get('/stream/:name?', async (req, res) => {
// Extract the channel name from the "ch" query parameter of the URL.
// const urlParam = req.query.url; req.query is undefined
const urlParam = req.url; //but this works
const channelMatch = urlParam.match(/[?&]ch=([^&]+)/);
const channel = channelMatch ? channelMatch[1] : null;
I found that urlParam was undefined because req.query was undefined. However, req.url contained the info needed for channelMatch.