FastChannels - FAST Channels aggregator/manager

Thanks for this great project!

One issue I'm having:

I can't seem to set any Gracenote IDs. This is what I see when I try to enter one:

Nice piece of work....A couple things....

  • I'm doing some experimenting. Where/how do I get the cookie auth for Amazon?
  • The sort by channel number under channels, doesn't seem to work all the time, especially when there is a filter change.
  • Would it be possible to have the channel number start be specified per source (I use it as an indicator of the source)? Can do it if I break up the feeds, but would be easier if it could be done under the larger rollup.

Thanks.

FastChannels v1.4.0 — What's New

LocalNow scraper (beta)

  • New source for LocalNow, including local broadcast stations and national FAST channels. Automatically detects your local market via a city autocomplete search in Sources config — type your city and select it, no manual DMA codes needed. Local broadcast stations (ABC affiliates, NBC locals, CBS stations, "Very [City] by [Station]" channels, etc.) are automatically tagged as Local News for easy feed filtering. Subscription-only channels are filtered out. Stream audit enabled.

Admin dashboard improvements

  • Sources table now shows a Next Scheduled Scrape column — amber highlight when a source is overdue, "Disabled" for inactive sources
  • All timestamps shown in your local timezone (respects TZ env var) with abbreviation (EDT, PDT, etc.)

Bug fixes

  • DB locking eliminated — program inserts during large scrapes (Roku especially) now use bulk INSERT instead of row-by-row, cutting the write-lock window from ~20 seconds to under a second. Feed saves no longer get blocked mid-scrape.
  • XMLTV program scoping — EPG generator now queries programs only for channels actually in the playlist, preventing gracenote-backed channels from leaking into XMLTV output.
  • Stream inspect stats — "stats for nerds" variant info (resolution, bitrate, codecs) now correctly appears for LocalNow channels.
  • Stirr: fixed expired SSAI session tokens by returning the master URL from resolve()
  • Stirr: local news channel names normalized (callsigns and parentheticals stripped)

Under the hood

  • Worker logs version at startup
  • Graceful 503 response if a feed save hits a write conflict (belt-and-suspenders fallback)
  1. I'll message you if you want to experiment. All streams DRM though.

  2. Fixing in next version

  3. Probably not. I'd prefer to push people to use feeds. I understand your ask, but that'd start to get hairy if I went down that path.

@KineticMan Feature request: Add a link to your github (preferably from the version number in the upper-right corner, but anywhere would be handy) :pray:

  1. I'll msg you to get the discussion started on cookie auth....thanks!
  2. channel number sort...thanks for addressing
  3. Understand it might get complicated....just thought I'd ask.

Took a quick look at this. Looks impressive.
The main thing for me i would like to see...or maybe i just not see the way to do it they way my mind wants to...
Is to be able to easy exclude categories of channels from each source while editing each sources available channels. (or globally from all sources)

I did see in creating feeds you can check boxes to include categories, but guess my logic is to have it the other way around. Or that feeds, is the step after one cleans up and removes each sources available channels.

In my mind, much easier and faster, to filter down to the specific channels i want to see, and not be bothered seeing ones i don't, is to be able to just remove them straightaway in the source list.
Like, i want to check a box, to disable an entire category at once, like all Sports, News, non English, Heath, Food...etc channels. Inside each source channel list.

Would be even better as a nice polish, to then have an option to hide/unhide disabled channels fully, or hide whole categories from the lists, to make the UI much cleaner and only show the user the things they want to see.

If i could disable and hide/remove/ignore all Sports and News and Non-English channels first thing, and globally, that would drastically cut down on all the duplicates and further sorting/comparing i would need to do.
(not just filter them out passively via search)

I see i can filter to view each category specifically, inside each source, but then have to go through all those single channels and disable each one in each category i want disabled.

1 Like

Can we get a case insensitive sort for the Channel names when we're in the Channels tab?

1 Like

LocalNow....had heard of them.
i looked at their site. Is not live stream of local OTA tv.
Is more aggregated VOD like service.
I do see certain News programs are streamed at same time as live OTA, but seems to be the same web stream as going to the local news stations own website.
Nice to have those in one place though i guess.

Ok will add to next version.

Thanks!
Also, when on the Channels tab and I click the Preview button on a channel, the guide data displayed is for 10pm, but it's 3pm here. The program shown is correct and currently playing, just the time displayed is wrong.

I have my timezone set in my compose.

    environment:
      # Set the timezone to your local timezone
      - TZ=America/Los_Angeles

No, not true. Click the box at the top left on the header line. It will select all the channels and you'll get options to Disable/Enable all selected

ah ok. but still., There is a crap ton of categories, some are kinda the same as each other. So, not practical really to do things that way i see now. needs to be a easier way.

I think it’s defaulting to UTC time for almost everything. I’m messing with getting it to respect local times. But minor issue as it’s just a preview of what’s on/next. Regardless I’ll address.

2 Likes

Garbage in, garbage out. I largely took the categories that the source provides. I did try to normalize some. I know it’s not perfect but I’m just a one man show and not interested in personally auditing every Channel category for 3000 channels and maintaining it.

I challenge you to think differently. Think more of filtering IN instead of filtering OUT. Like, build a feed with Music video channels and Music channels. Then in that feed, unclick the channels you don’t want in that feed. Don’t even concern yourself with the source as primary filter.

1 Like

I'm experiencing the same thing.
Guess it's on the to do list.

Yep oversight on my part. I had a simple JS error in there. Already fixed for next version.

2 Likes

the canadian one is playing a different episode - the others all play the same episode at the same time- with top gear i like some extra choice :slight_smile:

Yah, the categories from the sources are all over the place.
If you sort all channels by name and see the duplicate ones, the same channel name has different categories from different sources. Same with language, it's not accurate enough to rely on just those.

The other thing that might be useful is forcing gracenote when one version of the channel has gracenote info - i would prefer gracenote when possible

1 Like