ESPN+ & FOX Sports with Custom Channels via EPlusTV

  1. Go to the folder in File Station
  2. Right click on the target folder and select Properties (I am using eplus)
  3. Click on the Permissions tab
  4. Click CREATE (I created the read/write permissions for the group Everyone, at least until I find a better way)
  5. Click OK to Save
  6. Clear/Reset the Container and then Start the Container
2 Likes

Thank you. That works for me.

Here is the current (2022-11-01) method of getting this to work with Windows Docker:

docker run -d --restart unless-stopped --name ESPN_Plus -p [PORT YOU WANT THIS TO RUN ON]:8000 -e START_CHANNEL=[CHANNEL NUMBER YOU WANT THIS TO START ON] -e USE_ESPN3=true -v C:\docker_volumes\eplustv\config_dir:/app/config m0ngr31/eplustv:latest

As an example:

docker run -d --restart unless-stopped --name ESPN_Plus -p 7976:8000 -e START_CHANNEL=90000 -e USE_ESPN3=true -v C:\docker_volumes\eplustv\config_dir:/app/config m0ngr31/eplustv:latest

Please note that both things with -e after them are completely optional.

After you run the command, open the container and go to the logs. You should see this:

image

Do exactly what it says. If you return to the logs, things should be loading in:

image

Everything works fine after that!

I pushed out a new update just now that has a few changes:

  • Previously I was using streamlink to play the stream and then pipe that into ffmpeg. I was able to rip out streamlink and do everything in ffmpeg now. Hopefully should help with buffering issues and has the added benefit of a smaller docker image.
  • Added a new environment variable: STREAM_RESOLUTION. If you don't set it, it defaults to 720p60.
  • Found a potential race condition where it's checking for refresh tokens. Might fix some issues of people having to login, but not a promise. I might just have some bad logic about refreshing the tokens.

The next step is going to be trying to reverse engineer the code from the yt-dlp project and see if I can figure out how to enable the Adobe authentication to allow playing ESPN3 (and possibly other ESPN network) events. I don't have a timeline for this though because I need a brave soul who trusts me enough to volunteer their login info so I can actually develop it.

2 Likes

Got this up in Docker in Windows but can't find out how to enter it as a source in Channels

Got the info into Channels and its up and running but all I get is a picture but no sound

As a test, can you try running at different resolutions and see if that changes anything? Or maybe a different client?

Tried to play on both Windows and Apple TV still no sound. Picture is fine

Yeah I can reproduce. I'm pushing up a fix in the next few minutes.

Just updated to the latest. Had no trouble with the auth, reloading the guide or starting/playing the stream and no issue with audio. And everything felt a little snappier. That is, for the streams that were actually active. I found several entries in the guide that are not actually available according to the ESPN+ site. Those did not work of course, but I cannot even see where they came from. (see below).

  • Could be that I don't have authority to those or a blackout, but that doesn't really make sense for this content.
  • At least one of the entries in the guide ("Bart & Hahn") is from ESPN3. I turned that off in the environment variables with "false". Should that be leading case, or is it picking that up erroneously?
  • Some are duplicated, I think that is just that they offer the broadcast in Spanish

Anyway, thank you again for this. Really love have this on Channels.


Used this from your site

docker run -p 8000:8000 -v /your_config_dir:/app/config m0ngr31/eplustv

and I get this

Error: EACCES: permission denied, open '/app/config/entries.db'
    at Object.openSync (node:fs:594:3)
    at Object.writeFileSync (node:fs:2207:35)
    at initDirectories (/app/services/init-directories.ts:26:8)
    at /app/index.ts:176:18
    at Generator.next (<anonymous>)
    at /app/index.ts:8:71
    at new Promise (<anonymous>)
    at __awaiter (/app/index.ts:4:12)
    at /app/index.ts:175:13
    at Object.<anonymous> (/app/index.ts:184:3) {
  errno: -13,
  syscall: 'open',
  code: 'EACCES',
  path: '/app/config/entries.db'
}
1 Like

Aren't you using Docker in Windows? You need to tell it where "your_config_dir" is, as I showed a few posts above.

Ok thanks for the help. Got it up and running

1 Like

I pushed an update last night that has a few fixes - most notable are switching to a forked version of ffmpeg to handle playback better and some new environment variables to help fix the permission issues people are seeing.

3 Likes

Thanks for adding the ID environment variables with 2.0.0-beta4!

Was receiving "Error: EACCES: permission denied, open '/app/config/entries.db' stderr" (ESPN+ with Custom Channels - #316 by marcuscthomas) prior to this.

Running Docker 20.10.3 on Synology DSM 7.1.1

1 Like

Question, it's up and running and that's great. If my docker container restarts for whatever reason, will I need to reauthenticate with ESPN with the code? If that's the case, is there a way to send a notification alerting me that I need to reauthenticate? I've got this running on a mostly unattended desktop but I can't guarantee it won't reboot for some random Windows reason.

Follow up question, how long with the ESPN authentication last? Even if the container stays up indefinitely, will the underlying connection need to be reauthenticated?

It's an awesome product. Keep up the good work!

1 Like

Hi there,
I think it is going to depend. I have the latest version of the container and i did have to activate once again. The docker works great.

Hi there,
Just moved over to Hulu plus live tv and noticed tha ti have to re-authorize the ESPN+ docker continer about every couple of days.
Wanted to know if i'm missing something?
I really like having all these sporting events alone with the great support through TVE.

1 Like

Hi there, j
Lookslike my token expired. I was looking over the ESPN plus appin Synology control panel and the container name is different each time it is started or created.
The access is great but i'm unsure why it stops. I get the white screen telling me my event will start in a minute but it never comes.
What change do i need to make on this end?
Love the idea.

1 Like

My authorization normally lasts 1-2 days. To reauthorize, I delete the tokens file in the eplustv folder, then just just hit the restart button in the container, wait a minute then get the new code from the log. I specifically record (3) teams on ESPN+. Since I know when most of the games are, I reauthorize on game day. I'm not sure why it loses it authorization since my ATV & Firesticks very rarely lose authorization.

The only time I have seen the container name change is when I recreate the container without 1st deleting the old container. Iā€™m sure there is a better way to update to the latest version but it works; just remember to delete the old container first.