Channels DVR downsides

There’s plenty of downsides with Channels DVR.

Like it costs money. Not the worst part though.

Uses a custom ffmpeg, and I can’t find the source, so I guess a closed source ffmpeg.

When accessing the web interface, at least on your local network, it loads resources from the internet, possibly a Google IP. That isn’t private. Also, good luck making an exception in LibreWolf, so the time zone isn’t wrong when going to it, since they decided to use your browser’s time zone. At least if using the Docker image.

Nope, not making another profile in LibreWolf, and not using a different web browser, just for Channels DVR. Also, it accessing some other domain, to load something on the web interface, makes it really questionable if I should keep paying for it.

And just checked, some Channels DVR domains, and gstatic, which is probably owned by Google.

So guess what? If you make a white list of IPs your network can access on the internet, and you don’t include any Google shit, well, the web interface may not work. Probably won’t, unless it loads it from somewhere else if those domains fail.

Also, I won’t bother paying for any DVR shit, or even DirecTV streaming service, if I make a white list. TV Everywhere could be on Google servers or the Google cloud for all I know. Also, DirecTV could be as well, not to mention, I don’t trust DirecTV anyways. So should probably just cancel DirecTV and Channels DVR.

You can or might be able to record DirecTV from the website, with cc4c, I don’t see why not. I could access the M3U from Channels DVR in Jellyfin, didn’t make a custom M3U and see if that’ll work, maybe copy the one from Channels DVR and remove the chrome:// crap. Jellyfin probably doesn’t have Chrome, or understand whatever that means in Channels DVR.

All cc4c does, is open a Chrome browser, and make it into a video stream. So why couldn’t you record it with anything?

And you can get TV guide data for free if you want. Be careful if using Schedules Direct with Jellyfin, just read their homepage. If you use the wrong method of connecting, you might get banned. You can get unbanned, but then you have to email them, and change the method. Or get banned again, and possibly no unban.

Also, not sure I like Jellyfin, I added my Channels DVR TV recordings folder to it, and good luck finding the show you want to watch with the two clients I have on the Apple TV, MrMC, and the inFuse Pro thing. In the inFuse thing, you can’t seem to sort, well maybe if you go all the way back into settings. And in MrMC, you can search, but it also puts everything in one giant ass folder. No sub folders, and just the name of the file.

You can search, I tried at least on the web interface, and well good luck with that as well. Doesn’t show the full file name, and only shows a certain amount of shit. So search for expedition, and you no Expedition X will be shown, unless you only have Expedition X.

And I’m not typing all the time with a regular remote on the Apple TV. And I’m not getting anything from the Google Play store to use a keyboard on the fucking Apple TV.

I even updated the POS Apple TV, because I was having issues playing my encoded videos.

Well, there’s poc errors, so I didn’t need to update the spyware on the Apple TV anyways. You can fix it, if you conver the mkv to a 70+ GB AVI file, and the re encode it. I still have the original file Channels DVR made, I’d rather re encode that, if I can using ffmpeg, correctly.

I don’t want to make a script to convert files to convert the videos to AVI, as I probably don’t have enough space, to keep the AVI files until it’s done. Not deleting files in my script either. Too risky. You could copy files around, or put the file in a tmp folder, overwrite the file, bla bla bla. Still not doing it. I might actually do nothing at this point. Maybe just delete all the new broken mkvs, and restore the .bak files.

When converting with Handbrake on a Mac mini, I didn’t have any issues. But I won’t use the Mac Mini, or even turn it on to get the file with the encoder settings. Also, what does HandBrake use? Well, on Linux it only supports AMD GPUs, with the Pro driver. So probably not ffmpeg. Maybe their own thing. And I’m not installing the Pro driver, so the settings, might do me no good.

Now if I knew the settings, Channels DVR uses, maybe I could figure it out easier. And maybe whatever I encoded with, has issues making HEVC, last time might have actually been my desktop using a AMD GPU. I’d think that would be more stable then my Orange Pi 5, and the rockchip BS.

Just using -c copy does not work for converting the file, and using -c copy to an avi, there’s no video, didn’t have sound on, so not sure about sound. Also, the file was smaller then the original file.

But if you want to fix a bad video made with ffmpeg, you can use ffmpeg -i input_video -q:v 0 output.avi, depending on the original video, it can easily be 70+GB. So if you have a lot of videos, well have fun. Not worth the time to make the script. I’d re encode the original file, as I already have a script for that. I just need different encoding options I guess.

And using -err_detect ignore_err from the already encoded video didn’t do anything. Thought somebody said that didn’t work when encoding, but too blind to find the comment. Guess I’ll look that up. Or try it on one original file, to see if that’ll work if you encode it.

Might have found the problem anyways, the other command I use, might not actually make a working file. One command for most of the files, but the other command, which converts the audio, might be causing issues. Cause apparently converting the audio doesn’t work.

Nope, should be using the first command, just checked the srt file.

So what, their ffmpeg is broken? I’m using not the stable version because their proprietary TV Everywhere recording feature broke itself, and they said to update Channels DVR, to non stable version, on their forum.

Another reason not to use it. Why no open source solution to record TV Everywhere?

If you look at the debug log of a video file, you can see the domain it’s getting TV Everywhere from. It’s some video service thing, that isn’t free. Either the Discovery channel, uses that for their TV Everywhere, or all TV Everywhere channels use that site, or Channels DVR is paying for some video hosting thing.

I doubt you can access that URL without logging in.

Also, the c4cc method, can be detected super easy. All they have to do is look at the server logs, and then log you out, or ask for a captcha. Not worth using AI to read their captcha. AI might use a lot of GPU, at least does for generating images. I guess the login method would be easy enough to fix. But then it’ll be a cat and mouse game, and not worth it.

Can’t use the official Jellyfin app on Apple TV, probably wants me to login, and the first time it asks me to login, I’ll probably just use my AtariVCS for watching TV. I’m not typing a random password in, I’ll copy and paste, but not type.

The AtariVCS, I could get an app to control that, might need to install something on it, still better then using Google Play.

And when I stop using the Apple TV, I need to remember to cancel that inFuse Pro subscription crap.

You could easily use a web browser on the AtariVCS. Well, maybe not with Jellyfin, since finding shit isn’t easy.

There’s a DLNA Plugin, but apparently it doesn’t work with the folder I added. Or maybe it doesn’t work at all anymore. If it worked, I could use VLC.

The command I’m testing with, probably isn’t going to work “corrupt input packet in stream 1”. The reason I most likely don’t convert the audio for most of the files. Doing so, produces errors.

Possible the custom ffmpeg, in Channels DVR just sucks at making good video files. But Handbrake is able to encode em somehow. But an open source ffmpeg can’t as easily.

Hmm, so those errors don’t matter? Guess the video is fine with that command. Tested in MPV, and could fast forward, and backwards, much faster. Didn’t open MPV in a terminal though. If you play the broken file in the Channels DVR app, eventually, when you try skipping commercials, it’ll go backwards, and some people will get impatient, and not keep trying.

That’s a TV Everywhere recording, and it looks like their solution, sucks ass. As why do I have packet corruption?

Also it’s in the video stream, so might not be from converting the audio. Might not even be an ffmpeg problem, maybe Channels DVR’s custom ffmpeg problem.

The reason not to use custom shit with no source code.

I thought I watched an OTA video, cause I thought it worked, well the srt file for the OTA file could have been 0 bytes, and it was using the other command. No point in adding the empty srt file to it.

$CONVERTERBIN -hwaccel rkmpp -hwaccel_output_format drm_prime -i "$FILE" -sub_charenc 'UTF-8' -f srt -i "$1"/"$filename".srt -strict -2 -c:v hevc_rkmpp -rc_mode 2 -qp_init 26 -c:a aac -b:a 128k -r 30 "$1"/"$filename".mkv

Possible working options for ffmpeg, you’ll get packet corruption probably though. If the source is a Channels DVR TV Everywhere recording.

Apparently I ran the command without the -map crap, guess it isn’t needed.

And this script doesn’t do what I thought, if the mkv exists, it isn’t going to do anything. Guess I’ll let it encode the new crap first. Then check the date of the files instead. That script may be on my desktop.

Or maybe after it’s done on Orange Pi 5, just run the desktop script on desktop, the AMD GPU is probably faster anyways.

Under 10 FPS with vaapi on my desktop with AMGPU, using Vulkan around 300 FPS, not much faster then using the Orange Pi 5.

And radio might sound better with new Python script, and no need to restart anything yet, even if I did, I’d probably just need to click stop and start to restart rtl_fm and sox anyways.

Almost 4 hours of streaming, and no crapping out like rtl_fm_streamer would probably at least before 3 hours, or maybe 1 hour.

This radio station reboots at least once a day or something, kind of annoying.

$CONVERTERBIN -init_hw_device vulkan=vk:0 -hwaccel_output_format vulkan -filter_hw_device vk -i "$FILE" -sub_charenc 'UTF-8' -f srt -i "$1"/"$filename".srt -vf "format=nv12,hwupload" -strict -2 -map 0:0 -c:v hevc_vulkan -rc_mode 2 -b:v 2M -map 0:1 -c:a aac -b:a 128k -r 30 -map 1:0 -c:s srt "$1"/"$filename".fix.mkv

Command for regular ffmpeg, and AMDGPU using vulkan.

Still encoding, so haven’t tested any of the files yet. And maybe set -b:v to 1.5M. The files might be slightly bigger then my other files, oh well.

The -qp stuff doesn’t work, always says q=2-31, even though I set -qp to 26, tried -qmin 26, and -qmax 26. It’s a dick head, and always uses 2-31. No info when searching either. And I set the rc_mode to 1.

Setting -quality to 2 doesn’t appear to do shit either, like make the encoding faster.

And that command, most likely won’t work. Lots of errors on some recordings, probably because of the audio they use.

Hmm, just played a video and it worked, might have been the one with I think audio issues, but it’s an OTA recordings, the signal not being perfect, results in a not as good video file.

And VLC works with DLNA plugin on Jellyfin now, either I didn’t wait long enough, or I should have tried restarting Jellyfin.