FastChannels - FAST Channels aggregator/manager

Got back from game and decided to play. The first log snippet is a successful tune to SEC Network.

2026-11-07 19:10:19,029 INFO     app.worker: [worker] pruned 934 expired EPG entries
2026-11-07 20:06:19,665 INFO     app.routes.play: [fc-player] request_id=89d501394e90c432 ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network adb=10.0.1.32:5555 triggered=True -> ah4c (trigger-only)
2026-11-07 20:06:19,817 INFO     app.routes.play: [play] request_id=e08bdf58f660009d ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network
2026-11-07 20:06:27,837 INFO     app.routes.play: [play] request_id=0d1de25ac3f2ace9 ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network
2026-11-07 20:06:32,021 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://linear-espn-ftc-na-east-1.media.dssott.com/…
2026-11-07 20:06:32,162 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://linear-espn-akc-na-east-1.media.dssott.com/…
2026-11-07 20:06:32,684 INFO     app.routes.play: [play] request_id=f3e4be1ba6a79e4a ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network
2026-11-07 20:06:33,243 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://linear-espn-akc-na-east-1.media.dssott.com/…

And these are several unsuccessful tunes.

2026-11-07 20:06:19,665 INFO     app.routes.play: [fc-player] request_id=89d501394e90c432 ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network adb=10.0.1.32:5555 triggered=True -> ah4c (trigger-only)
2026-11-07 20:06:19,817 INFO     app.routes.play: [play] request_id=e08bdf58f660009d ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network
2026-11-07 20:06:27,837 INFO     app.routes.play: [play] request_id=0d1de25ac3f2ace9 ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network
2026-11-07 20:06:32,021 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://linear-espn-ftc-na-east-1.media.dssott.com/…
2026-11-07 20:06:32,162 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://linear-espn-akc-na-east-1.media.dssott.com/…
2026-11-07 20:06:32,684 INFO     app.routes.play: [play] request_id=f3e4be1ba6a79e4a ip=172.23.0.1 source=espn channel_id=sec channel_name=SEC Network
2026-11-07 20:06:33,243 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://linear-espn-akc-na-east-1.media.dssott.com/…

Plan to logout/login & rescrape.

Log snippet with error after logging out the back in; rescrape; reload.

2026-11-07 20:39:04,391 INFO     app.routes.play: [play] request_id=470796556c32898f ip=172.23.0.1 source=espn channel_id=airing:1b13af44-b5d3-4654-b347-1316e933e179 channel_name=NCAAW - Northern Colorado Bears at Texas Longhorns
2026-11-07 20:39:04,642 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://live-espn-ftc-na-east-1.media.dssott.com/…
2026-11-07 20:39:04,709 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://live-espn-ftc-na-east-1.media.dssott.com/…
2026-11-07 20:39:05,541 INFO     app.routes.play: [play] request_id=228f41902fc67000 ip=172.23.0.1 source=espn channel_id=airing:1b13af44-b5d3-4654-b347-1316e933e179 channel_name=NCAAW - Northern Colorado Bears at Texas Longhorns
2026-11-07 20:39:05,544 WARNING  app.fc_player_bridge: [fc-player] device playback error: 11-08 02:39:02.953 E/FCPlayer.Playback(23438): playback error channel_key=espn:airing:1b13af44-b5d3-4654-b347-1316e933e179 (retry 2/3): androidx.media3.exoplayer.ExoPlaybackException: Source error

So I used the DDG search assistant on the log error. Not sure if it helps or what it’s telling me.

The error indicates the app cannot verify the server's SSL certificate because the device lacks the required root certificate in its trust store. This often happens on older Android devices or when the server's certificate chain is incomplete.

Edit: Stopped Fast Channels stack. Restarted stack. Error came back at startup.

βœ… Redis started
⏳ Waiting for Redis...

βœ… DB ready
2026-11-07 21:03:13,370 INFO     __main__: [xml-cache] enqueued refresh job
2026-11-07 21:03:12,807 INFO     __main__: Scraper worker listening on queue: scraper
2026-11-07 21:03:12,769 INFO     __main__: FastChannels worker v5.9.0 starting
2026-11-07 21:03:12,774 INFO     __main__: FastChannels worker v5.9.0 starting
2026-11-07 21:03:13,124 INFO     __main__: Startup summary β€” enabled_sources=5 total_sources=59 enabled_feeds=4
2026-11-07 21:03:12,938 INFO     __main__: Scheduler started β€” checking sources every 60s
βœ… Starting gunicorn on port 5523
βœ… Worker roles started (scheduler, scraper, fast, maintenance)
βœ… Network ready
⏳ Waiting for outbound network and DNS...
βœ… Disabled-source leftovers checked
βœ… Orphaned sources checked
βœ… Sources seeded
2026-11-07 21:02:19,650 INFO     app.worker: Seeded 59 sources
βœ… Redis ready
2026-11-07 21:03:14,141 INFO     __main__: FastChannels worker v5.9.0 starting
2026-11-07 21:03:14,193 INFO     __main__: Fast worker listening on queue: fast
2026-11-07 21:03:14,813 INFO     __main__: FastChannels worker v5.9.0 starting
[2026-11-07 21:03:17 -0600] [1] [INFO] Starting gunicorn 23.0.0
2026-11-07 21:03:14,817 INFO     __main__: Maintenance worker listening on queue: maintenance
2026-11-07 21:03:17,661 INFO     gunicorn.error: Listening at: http://0.0.0.0:5523 (1)
2026-11-07 21:03:17,662 INFO     gunicorn.error: Using worker: gevent
2026-11-07 21:03:25,511 INFO     app.worker: [artifacts] refreshed 3 XML artifact(s) and 5 M3U artifact(s); skipped 35 not requested in 7 days (2.2s)
2026-11-07 21:03:28,793 INFO     app.gracenote_map: [gracenote-map] remote map refreshed β€” 3472 rows from https://gist.githubusercontent.com/kineticman/87765d469610233f894c9c225cb4f2ca/raw/gistfile1.txt
2026-11-07 21:03:28,799 INFO     __main__: [gracenote-map] startup remote fetch: OK β€” 3472 rows loaded.
2026-11-07 21:03:29,034 INFO     app.gracenote_map: [gracenote-exclusions] remote list refreshed β€” 245 rows from https://gist.githubusercontent.com/kineticman/d15d0d96ef09b0c159f016f8d4b881d7/raw/gistfile1.txt
2026-11-07 21:03:29,036 INFO     __main__: [gracenote-exclusions] startup remote fetch: OK β€” 245 rows loaded.
2026-11-07 21:03:34,585 WARNING  app.fc_player_bridge: [fc-player] device playback error: 11-08 02:42:28.322 E/FCPlayer.Playback(23438): Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

My post was marked as offensive? Probably because of the post that follows.

Edit Update:
Set an SEC+ event to record while I was away and it recorded with no issue. Think I’ve done so much between the containers and sticks that I need to let them settle down. I’ve got an event scheduled tomorrow night so hopefully it’ll record. Maybe just got some bad data that needs to work itself out.

@KineticMan
The issue with SEC+ network events is also affecting ACCN Extra events. The log snippet below details a failed tune to the ACC Extra event as well as a successful ESPN+ event.

My troubleshooting effort:
Signed out and in to ESPN & TV Provider
Stopped stack and redeployed (several time).
Found that all (8) Firesticks had been awaiting an Amazon update. Updated all. Thought that might clear the issue but it didn’t.
Attempted to revert back to 5.8.0 to see if issue was caused by v5.9.0 without success (my skills to revert back are very lacking)

Normal tunes to Directv Stream Bridged Channels are not affected.

I'll be out a few hours and all day tomorrow so if you got an idea for me to try, let me know.

ENJOY YOUR DAY!!!. This is only TV and it'll get fixed when it gets fixed!

2026-11-08 11:48:54,555 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://live-espn-ftc-na-east-1.media.dssott.com/…
2026-11-08 11:48:56,457 INFO     app.routes.play: [play] request_id=28ed75bf67a5c9ec ip=172.23.0.1 source=espn channel_id=airing:992786fd-83ca-4934-b233-29754abbe0be channel_name=NCAAW - Cornell Big Red at Syracuse Orange
2026-11-08 11:48:56,846 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://live-espn-ftc-na-east-1.media.dssott.com/…
2026-11-08 11:48:58,909 WARNING  app.fc_player_bridge: [fc-player] device playback error: 11-08 17:48:56.590 E/FCPlayer.Playback( 4619): Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
2026-11-08 11:50:20,246 INFO     app.routes.play: [fc-player] request_id=1f70da344a82d837 ip=172.23.0.1 source=espn channel_id=airing:1c9a9e40-1f97-4f95-a1cc-5ca2180a087c channel_name=NCAA Women's Volleyball - Rice Owls at Temple Owls adb=10.0.1.62:5555 triggered=True -> ah4c (trigger-only)
2026-11-08 11:50:20,279 INFO     app.routes.play: [play] request_id=df431573c806c8ec ip=172.23.0.1 source=espn channel_id=airing:1c9a9e40-1f97-4f95-a1cc-5ca2180a087c channel_name=NCAA Women's Volleyball - Rice Owls at Temple Owls
2026-11-08 11:50:20,788 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://live-espn-akc-na-east-1.media.dssott.com/…
2026-11-08 11:53:46,464 INFO     app.routes.play: [fc-player] request_id=f20630722aa730f2 ip=172.23.0.1 source=espn channel_id=airing:1c9a9e40-1f97-4f95-a1cc-5ca2180a087c channel_name=NCAA Women's Volleyball - Rice Owls at Temple Owls adb=10.0.1.62:5555 triggered=True -> ah4c (trigger-only)
2026-11-08 11:53:46,481 INFO     app.routes.play: [play] request_id=7b343b0b2b3b13f3 ip=172.23.0.1 source=espn channel_id=airing:1c9a9e40-1f97-4f95-a1cc-5ca2180a087c channel_name=NCAA Women's Volleyball - Rice Owls at Temple Owls
2026-11-08 11:53:46,871 INFO     app.routes.play: [play] DRM detected (Widevine) in manifest: https://live-espn-akc-na-east-1.media.dssott.com/…

Just a quick update in case anyone else ends up with a similar issue as I was having with a channel taking a long time to start then erroring out. Disabling Resource Saver in Docker seems to have resolved the issue. It's also greatly reduced the time to tune in a channel when the system hasn't been used for a while. And oddly enough, it also seems to have reduced how much memory the system is using (from ~52% to ~45%) unless that could have been caused by enabling Lite Mode and/or updating to v5.9.0.

I'm experiencing intermittent playback failures with ABC Disney TVE in FastChannels v5.9.0 using YouTube TV authentication and ah4c capture.

Some channels play normally while others display a black screen. The affected channels change between attempts. Occasionally, a failed channel starts playing on its own.

Configuration:

  • FastChannels v5.9.0 (Docker on Ubuntu 24.04)
  • Three ONN 4K Google TV streaming boxes
  • ah4c bridge-only M3U feeding Channels DVR
  • YouTube TV authentication successful
  • Disney TVE stream audit: 26/26 healthy

Android log error:

SSLHandshakeException
CertPathValidatorException:
Trust anchor for certification path not found

FCPlayer.Playback:
ERROR_CODE_IO_NETWORK_CONNECTION_FAILED
giving up after 3 retries

Troubleshooting completed:

  • Confirmed correct date/time on ONN devices.
  • Updated ONN Android system software; no improvement.
  • Verified both ONN devices use Google DNS (8.8.8.8 / 8.8.4.4).
  • Verified Disney's *.media.dssott.com certificate chain using OpenSSL on Ubuntu: Verify return code: 0 (ok) .
  • Reloaded M3U, refreshed Disney TVE, and confirmed successful provider authentication.
  • Confirmed failures occur on multiple ONN devices.

The failures appear related to HTTPS certificate validation within FastChannels Player. However, the exact failing HTTPS endpoint has not been identified.

Could you investigate whether this is a known FastChannels Player issue or whether additional certificate-chain handling is needed?

I can provide Android logcat output if helpful.

Thanks!

Spoke too soon. Everything seemed fine since Saturday when I made the change, but it did it again just a few minutes ago. The only difference is the channel never started, just an error after ~20 seconds, hit play and it's fine. I'll have to search the Mac forums to see if others are having problems. Memory usage is up again too. I need to check to see if the 10GB OWC network adapter has any settings that may be causing the issue.

EDIT: There's an AVB/EAV mode that many are saying causes random disconnects and slow initial connections on the Apple silicon machines. It's under System Settings > Network > Ethernet > Details > Hardware. Have to set the interface for manual configuration in order to turn off AVB/EAV, but you can leave Speed at autodetect. My older Intel Mac mini doesn't have the AVB/EAV setting.

So, did you re-enable Resource Saver?

No, doing one change at a time to see if it makes a difference. I may reenable it if AVB/EAV disable seems to resolve. I just rebooted and it seems ok so far, but I'll have leave the system idle for a while to see if I can get it to happen again. I also turned it off on my other 2 Mac mini servers - sometimes the initial drive mapping takes longer than expected.

I am about 2 seconds from ordering a Mac mini M5 Pro, 18-core CPU, 20-core GPU, 48GB RAM, 1TB storage and 10GB ethernet.