MLB.TV for Channels

try running the session and login clear commands. my somewhat random guess is that MLB is seeing you were already logged in at one IP and getting confused when you're trying to use the same player / device at a different IP.

docker exec -it channels-baseball php8 artisan session:clear
docker exec -it channels-baseball php8 artisan login:clear

root@OffensiveBias:~# docker exec -it channels-baseball php8 artisan session:clear

GuzzleHttp\Exception\ClientException

Client error: POST https://ids.mlb.com/oauth2/aus1m088yK07noBfh356/v1/token resulted in a 403 Forbidden response:

<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/ (truncated...) at vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113 109▕ if ($summary !== null) { 110▕ $message .= ":\n{$summary}\n"; 111▕ } 112▕ ➜ 113▕ return new $className($message, $request, $response, $previous, $handlerContext); 114▕ } 115▕ 116▕ /** 117▕ * Obfuscates URI if there is a username and a password present +11 vendor frames 12 app/Services/MlbService.php:121 GuzzleHttp\Client::post() 13 app/Services/MlbService.php:77 App\Services\MlbService::refreshLogin() root@OffensiveBias:~#

that means MLB is sending back a 403 when your server tries to log in. to me, that seems to indicate that they have blocked your IP for whatever reason (at least from getting the streams via API as this container does). does viewing on the web / mobile apps work?

weird - might be a network thing - i have multiple vlans now going into my server

it works fine on app

Error went away on its own. Maybe I was looking at the guide when there was no content. No clue.

Hey, I went through this exact issue over the weekend. I confirmed the problem by trying to login to my MLB.tv account on the same device and it threw a non-specific error. I changed my password, still no luck. I then tried to login on another device and it worked. I'm doing something "unsupported" so I don't know how much detail I should go into but I changed some other things and it lit back up. If you want more info, we can talk offline.

1 Like

just pushed a new version with some pretty significant changes. i'll try to outline them all here...

first: i changed the versioning scheme to make it a little easier to keep track of where we are (rather than trying to determine if something is a big enough change for a major version number increment)...moving forward, all versions released will be numbered by the year, month, and release number in that month (similar to how home assistant does their version numbers now). so, for example, this new version that was just pushed is 2022.6.1

second: TV feeds are now going to be on subchannel .1 for all teams. when you load this new version, you'll need to refresh your m3u to make sure everything lines up on the new subchannels instead of the original channel number without subchannel. the reason for this is related to the third major thing in this release...

third: radio feeds are available, although they won't work in channels (you'll have to use a different player to make them work). i would STRONGLY recommend you run multiple containers if you want the radio feeds, since having them show up in channels is pointless as it won't be able to load the alternate audio. in order to set this up, there are two new environment variables you can use:

MLB_SHOW_TV_FEEDS=true
MLB_SHOW_RADIO_FEEDS=true
  • if you don't set either one of these variables, the container will work exactly as it always has...it'll only show you the TV feeds (although as mentioned earlier, they'll now be on subchannel .1 for each team).

  • if you only set MLB_SHOW_RADIO_FEEDS to true, it will ONLY show the radio feeds on subchannel .2.

  • setting them both to true will show both feeds, with TV on subchannel .1 and radio on subchannel .2.

fourth (and final note) on the radio feeds specifically: there's a pretty significant delay on some of these sometimes (but not always). i don't have any way to account for that, so you'll likely want to use a player that allows you to control the audio offset. tivimate allows this for up to one full second in either direction, which for the most part has been good enough for me...although occasionally i've had to go a little bit longer and had to use a different player with a longer delay offset. kodi works well for this, although it does have issues decrypting the feeds on some android devices (i'm not at all sure why, it works perfectly on my phone but has issues on my chromecast with google tv).

i've done a lot of testing on this with the mets feeds over the past few weeks, but please put this through the paces if you'd like and let me know if you notice anything strange happening that needs fixed.

almost on cue, it seems the radio feeds are broken. something must have gotten screwed up when i built this image.

i'll see if i can get it working ASAP.

edit: found the issue. it has to do with it trying to load the spanish audio feed instead...i'll make that an option in the next release, but for right now i am just going to get together a fix for english radio.

edit 2: pushed 2022.6.2, this one should work for english radio for all teams. i'm going to delete 2022.6.1 from the repo, since it has a pretty major flaw (it'll work for some teams but not all).

one caveat: when you first load this new version with the radio feeds, you're going to need to clear your sessions for this to work. there's a built in command that you can run from inside the container to accomplish this...

php8 artisan session:clear

edit 3: like clockwork, there's another issue i'm fixing now (relating to the radio overlay for the FOX regional games). it will work for the first team you load, but if you try to load the radio feed for the other team in one of those games it won't work.

just pushed 2022.6.3 which should fix the issue described above.

and now, i'm logging off to enjoy my saturday evening. :slight_smile:

seriously though, feel free to put this through the paces and let me know if there's anything else broken.

edit: one final push for tonight, just fixed a potential issue with the radio feeds for the second game of a doubleheader. 2022.6.4 is now the latest image.

2 Likes

has big inning been broken for anyone else lately? not loading for me right now even though it's live, and I don't watch it much...

edit: confirmed, big inning is broken. i think i have an idea for a fix, but won't be able to test til tomorrow since it's done for the day.

Awesome work once again! Does anyone know if it's possible to set up a recurring recording in Tivimate then with the radio overlay, and then somehow import those recordings into Channels? Therefore allowing two versions of the game waiting for me in my Channels UI? Is this possible?

1 Like

Those apple TV+ games are annoying. Love having everything in one place with this marvelous app. I created a fantasy baseball c# program to change the channel every time my player is hitting or pitching with notifications etc. You think it’s possible to use streamlinks to switch to the friday night apple TV+ games?

Peacock games are not blacked out on mlb.tv around the world, only in america. Is there any chance the blackout message could be removed and the game played, for those of us not blacked out?

Thanks for all your work on this

+1, add me to the list. I can watch the national broadcast, appletv games, peacock etc without restrictions. So for those games i have to use the mlb app. It would be awesome to have it as an option to not automatiacally exclude them

Just curious if anything was ever done for the seek duration problem with channels-baseball recordings? See here for a refresher.

Been running 2022.6.4 for several days now and Channels still uses “Normal” seek durations instead of “Sports” on both iOS and ATV…

Also, does anyone know why comskip doesn’t work at all on these recordings? By “doesn’t work at all”, I mean there are never any commercials detected on these recordings. None. Not even false detections. Always zero commercials detected.

It was fixed but it’s broke again. I think it’s on channels side this time because I’m pretty sure I’m running the same docker version from when it was fixed. It still works correctly and uses sports on shield tv

1 Like

Is there a way to hide the teams "win/loss" records from the description of the recording? I'm often times behind by a game or two, and the team's Win/Loss record is displayed on the screen every time i fast forward (which i do a lot while i skip between pitches)

i can try to make that an option.

btw, in case anyone was curious, fixing the big inning feed involved completely rewriting the authentication system and how it talks to MLB's API. this is taking a while to get working. that's why there hasn't been a release in a while.

2 Likes

so, i'm not sure the big inning feed is ever going to work again. i'm not having any luck getting it to work, even after re-writing the entire authentication system.

edit: yeah, taking a break from this for a while. i've been whacking at it for two weeks now and feel like i've gotten nowhere. it just won't work.

my apologies, but big inning is dead...at least for now. hopefully this isn't an omen for the rest of the feeds.