AndroidHDMI for Channels (ah4c): A virtual channel tuner using HDMI Encoder(s) + streaming stick(s)

My recordings have been going great the first two days. Closed captions are the final piece in the WAF puzzle. I'm finding 4 seconds behind with Cohere is significantly different from the broadcast channels with embedded captions. I'm lowering it to 2 seconds to see if that's better.

I've been having good success with Purfview Faster Whisper XXL model largev2 using Subtitle Edit on Windows. My Channels VM doesn't have access to the iGPU, but my media VM (where ah4c sits) does. I'm thinking of installing something there to generate captions after recording. My two biggest issues are what to install and how to run it automatically after Channels commercial detection is complete. We almost never watch live TV, and captioning after the fact would be much more synchronized. I know this is going outside the subject of the thread and can take it elsewhere.

I feel like every few threads it's important to thank the developers for writing this and making it so easy to implement. I like to say "it's just TV," but when TV dies a lot of voices are suddenly clamoring for the TV they lost. It's nice to be able to bring it back.

You should probably take a look at this project:

Last I looked at it, it seemed a bit challenging to get started, but that may have changed.

Hi @tanderson92 can you take a look at GitHub - handy-computer/transcribe.cpp: ggml speech-to-text inference for 16+ model families · GitHub
It might be time to bump and pin and maybe add another model. If you can find one that works well enough for you let me know and I can look into adding it to the model picker. LLM's evolve so quickly I had to stay on this with the captions.

Will do. I'm recording one with a 2-second delay right now. If that passes the wife test I won't need to look any further.

2 Likes

If you have the HW for it have you tried turning on realtime? Several models support it. Just uses more memory and GPU for processing. It's usually fine if you don't have 10 tuners like yours truly.

1 Like

oh @tanderson92 unless you have CUDA backing and a nice GPU I'd avoid Cohere. It's a great model but not great for closed captions unless you really have fast graphics to run it.

I have an iGPU and NVIDIA card on my Proxmox server. The NVIDIA card is passed to one of my VMs and the iGPU to my media VM because it was recommended for Plex/Jellyfin transcoding. I have ah4c on the media (iGPU) VM right now. According to ah4c it ran Cohere 4 second delay at 4x or higher; it's currently running Cohere 2 second delay at 2.9x. I'll try Parakeet real time and Nemotron real time to see if those are any better if Cohere 2 seconds doesn't work for us.

How much memory do you have.

Proxmox is a subject that's very near-and-dear to my heart. I run almost nothing bare metal anymore, everything is virtualized on Proxmox, and it works incredibly well for me. There's really nothing better for the tinkerer. :slight_smile:

One suggestion I would make. VMs are great for something like Windows, but LXCs are the answer for just about everything else. It keeps virtualizations lightweight, and allows for the sharing of resources like an iGPU across those virtualizations.

In fact, Channels DVR itself makes an excellent LXC:

Then you can run Docker in another LXC, with ah4c and other projects. Moving LXCs like this from one Proxmox host to another is super easy with a Proxmox Backup Server, to balance loads or to take a host down for an upgrade or other maintenance.

64GB

I'm still new at Proxmox and built my system based on the best recommendations I could find during my preparations. I have a dedicated Channels VM and a separate Media VM that has Plex, Jellyfin, ah4c and anything else I want to access the iGPU while also seamlessly accessing each other.

I'm looking at spinning up a 2nd CDVR server to be my Mom's (using the main CDVR as the channel source) because she seemed surprisingly open to switching how she watches TV. If I do, I'll make that one an LXC and see how I like it. If that works maybe I'll spin up an LXC for my main server and migrate the settings there. One thing at a time, as she absolutely requires stable captions as opposed to my wife who just prefers watching that way.