Pluto for Channels

Installing the Portainer WebUI, and deploying Watchtower, is the easiest way to manage your Docker deployments. It makes it much more straightforward to visualize, and update your containers:

docker run -d -p 8000:8000 -p 9000:9000 -p 9443:9443 --name portainer \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v portainer_data:/data \
    cr.portainer.io/portainer/portainer-ce:latest
2 Likes

So, I been using the maddox Pluto container for a bit now. And the nocords urls on secondary server.

The joagomez container, seen some recent posts of updates to it.
There is a post a bit back that sates some channels are missing or duplicated between the 2,

Wondering what container is superior on the backend if that is a thing.
maddox container it self not been updated in years, but joagomez changelog mentions optimizations etc.

I do not need to specify what region or use multiple regions. USA is default on both right?

Looking for opinions/input.

Considering moving/re-installing my secondary server to different hardware, and thus looking at if i should just stick with maddox container, or try the joagomez one, or just use the nocords url (which is powered by maddox container??)

I've had the Maddox docker running for over a year and no issues on my side. I can't say if I am missing out on other features with another Docker solution, but for me, so long as "it just works", I'm good.

well, both the nocords and maddox docker fluctuate. Each adding or removing channels. they supposed to be running off the same code?

At present, nocords lists 429 channels, and maddox docker 426. Each has fluctuated by a few here and there every few days or so.

I plan to setup the joagomez container on my test setup, to compare.

I just setup the joagomez container, on my test system, and it exposes all the various regions into separate urls. Though, there are 3 versions of each. I assume the "maddox compatibility" url is the one to use for Channels?

The ALL maxes out a 750 channels i think it was, so many that it heavily lagged the web browser tyring to load the guide for it.

I did have a quick look at the other regions playlists. I notice that some have more channels.

Like CA has 6 South Park specific channels, a dedicated Star Trek TOS and TNG channels, Nicktoons, Comedy Central Standup, Arthur, and a few other specific channels that are not in any of the US playlists.
UK, also has a few extra ones.
Both have many of the same named channels, though most are airing different episodes or programs than the USA version.
The UK and CA both have Arthur channel, but each is airing different episodes.

So, i guess, if one wanted to add a some more content to their TV options, u could add the extra regions playlist/s as a additional custom channel source. Either some different channels, or the same, but just have different episodes on...gotta watch out for channel numbers though.

Edit: Seems the 2 extra Star Trek channels, just repeat the same dozen or so episodes, all the time. Weird.

What i can't figure out, is what is this containers equivalent to default US region output of the maddox or nocords solutions? This container has both US East, and US West, and Local.

2 Likes

No, different approaches against different Pluto API components, hence why different results.


All of them are compatible with Channels. The "Maddox compatibility" is for switching the sources in place and not losing your favorite/hide and Channels collection settings:


Yes.


I believe it is "US East", but it doesn't matter. Do whatever is your locale; the stations will be the same no matter which one you pick, only the times in the guide will be different. I used "Local" when I did the in-place swap-out.

the maddox and nocords would be local based on where the container is hosted.

The locales added is based on an X-Forwarded-for tag where the geolocations are:

US East = Charlotte, NC
US West = Los Angeles, CA
UK = London, England
CA = Toronto, Ontario
FR = Pessac, Nouvelle-Aquitaine

The changes are as @babsonnexus noted the API calls are different, plus JWT support those channels that use JWT (such as CNN Headlines)

I asked elsewhere but no answer... Is there a way to get more show info in the ChannelsDVR guide grid? I am assuming this is how CHDVR is coded and nothing I can do but thought I'd ask anyhow.

I have a lame duck copy of Tivimate that, using the same listings source (nocords.xyz), shows the season and episode number along with occasional extra info.

1 Like

I'm using the joagomez container and am seeing season and episode numbers on very many Pluto channels, but not all.

I always figured that was just due to some inconsistencies in Pluto's guide data? Just now I checked a few channels though, (examples: "Universal Crime," "Murder She Wrote" and "Little House on the Prairie") and I see that they while they aren't displaying that information in Channels, those same channels on Pluto.tv do include it. Hmm.

1 Like

Using the Jon Maddox container, I can see the Season and Episode in the data it pulls from the Pluto API (it's cached in the container /usr/src/app/cache.json)

                "_id": "66d12f8de0873100133e3749",
                "start": "2024-09-20T19:12:00.000Z",
                "stop": "2024-09-20T20:07:00.000Z",
                "title": "Little House on the Prairie",
                "episode": {
                    "_id": "6567c9da2f9f5b001351ef75",
                    "number": 4,
                    "season": 2,
                    "description": "The Green-Stockings of Sleepy Eye challenge the men of Walnut Grove to a baseball game.",
                    "duration": 3300000,
                    "originalContentDuration": 3300000,
                    "genre": "Classics",
                    "subGenre": "Classic Dramas",
                    "distributeAs": {
                        "AVOD": false
                    },
                    "clip": {
                        "originalReleaseDate": "1975-10-01T00:00:00.000Z"
                    },
                    "rating": "TV-G",
                    "name": "The Big Inning",
                    "slug": "the-big-inning-live-epg-2-4-ptv1",
                    "poster": {
                        "path": "https://images.pluto.tv/episodes/6567c9da2f9f5b001351ef75/poster.jpg?fill=blur&fit=fill&fm=jpg&h=1000&q=75&w=694"
                    },
                    "firstAired": "1975-10-01T00:00:00.000Z",
                    "thumbnail": {
                        "path": "https://images.pluto.tv/episodes/6567c9da2f9f5b001351ef75/thumbnail.jpg?fill=blur&fit=fill&fm=jpg&h=440&q=75&w=440"
                    },
                    "liveBroadcast": true,
                    "featuredImage": {
                        "path": "https://images.pluto.tv/episodes/6567c9da2f9f5b001351ef75/featuredImage.jpg?fill=blur&fit=fill&fm=jpg&h=900&q=75&w=1600"
                    },
                    "series": {
                        "_id": "65666a8a20854800140c4820",
                        "name": "Little House on the Prairie",
                        "slug": "little-house-on-the-prairie-live-epg",
                        "type": "live",

Capture

but it doesn't pass it in the XMLTV output.

	<programme start="20240920121200 -0700" stop="20240920130700 -0700" channel="little-house-on-the-prairie">
			<title lang="en">Little House on the Prairie</title>
			<icon src="https://images.pluto.tv/series/65666a8a20854800140c4820/tile.jpg?fill=blur&amp;fit=fill&amp;fm=jpg&amp;h=900&amp;q=75&amp;w=900"/>
			<date>19750930</date>
			<category lang="en">Series</category>
			<series-id system="pluto">65666a8a20854800140c4820</series-id>
			<desc lang="en">The Green-Stockings of Sleepy Eye challenge the men of Walnut Grove to a baseball game.</desc>
			<category lang="en">Classics</category>
			<category lang="en">Classic Dramas</category>
			<live/>
			<episode-num system="original-air-date">20240920121200 -0700</episode-num>
			<category lang="en">Drama</category>
			<category lang="en">Drama</category>
			<category lang="en">Drama</category>
			<sub-title lang="en">The Big Inning</sub-title>

	</programme>

Screenshot 2024-09-20 at 11-55-26 Channels Guide

Hmmm making me question the logic now since I based mine off of Maddox

I see the issue and its present in the screenshot by as well as the json.

The EPG is marking the episode as type of "live": and the logic does not include Season/Episode data in the XMLTV output when its marked as "Live" because its supposed to be a Live broadcast.
It's noted with the "Live" tag in the screenshot of what is displayed in Channels

The current logic adds Season/Episode data when type is "tv" so will look to change that logic in a future update

1 Like

Ahh, because Pluto says it's a live broadcast.

That tag as well but also type in the "series"

"series": {
                        "_id": "65666a8a20854800140c4820",
                        "name": "Little House on the Prairie",
                        "slug": "little-house-on-the-prairie-live-epg",
                        "type": "live",
1 Like

Makes me wonder if anything on Pluto is actually "Live", besides some news and sports channels.

They used to show NCAA Big Sky conference games a few years ago, but sure if anything is "live" now

Updated to check programs marked as Live

1 Like

Isn't Big Brother live?

I guess I wasn't as clear as I should've been. When I said

"get more show info in the ChannelsDVR guide grid"

I really did mean "in the grid", not above, as your arrow points.

That "live" flag in Pluto's API just means that the channel originates from a linear source instead of something created on the fly from VOD clips hosted on Pluto's servers.

3 Likes