[RELEASE] Playlist Manager for Channels [Streaming Library Manager Extension]

Thanks for the explanation. Will it fallback,if all the ADB Tuner sources are in use?

At this time, PLM cannot limit the number of streams based on the source.

Thanks for the reply. I’m using the playlist functionality solely to get custom channel logos, so what I’ve done to mostly work around (I think?) the inability to limit the number of streams is put PLM as my first source and limit it to two streams, so Channels itself will fallback to the next sources after that. All my stations in PLM are on at least one other source, with the exception of my local CBS affiliate. So that’s the only one where I’d have a problem if I needed more than two streams.

(Hopefully I’m understanding all this correctly)

EDIT: And actually, as I think about it, even that CBS affiliate wouldn’t be a problem, as its “regular” source, TVE, is one of the sources below PLM, so Channels should fall over to that, if I correctly understand how Channels works.

Big mostly PLM focused update with too much to list!

The update just released is great.
Very nice imiprovements.

1 Like

As of v2025.03.18.1154 of PLM, the below items have been addressed. Additionally, there have been a number of performance and quality of life improvements all throughout. Much of this can be seen in the greatly updated documentation on the Wiki.

And one last important note: PLM and Streaming Stations are now on by default for new installations!


Filters are now remembered when you save/new/delete a value. It won't remember exactly where you were, but will remember what you input and maintain it, thus a step in this direction.


By child station in a playlist, you can override the Stream Format. In other words, if you set your playlist as HLS, you can say an individual station is MPEG-TS and PLM will then parse it into a final compatible playlist for Channels. As a reminder, even if you don't care for Docker, there are versions in Windows, Linux, and Python self-deployed for any OS.


In addition to being able to turn off a whole source, you can now turn off individual parent stations. This can be especially useful with season ones so you don't need to favorite/hide in Channels and just leave everything in place for its eventual return. Read about it here:

I have found that if I do not sync my stations on my clients that hidden stations will still appear if they are assigned to a Channel Collection, but ones that don't exist anymore are not a problem. As such, this resolved that issue for me entirely!


The use of the 'temp.txt' file has been deprecated, meaning there is no longer a need for the offset to remove it if it still exists. This should fully eliminate any potential issues that have existed in the past from this methodology. Further, the same process that created this was also causing performance issues and lockouts while running. This has been resolved, too, and the program will be fully responsive even when intensive automation routines like this are running!


1 Like

This is unnecessary. Setting format to MPEG-TS allows playback of both MPEG-TS and HLS streams. My feature request was to remove the unnecessary hurdles the end user has to jump through by following the outdated documentation.

1 Like

Buddy, I don't work here; I'm just a paying customer like you. Complaining to me won't help.

I just thought of your situation and many requests (that don't read remotely like the way you are describing now) and spent precious hours of my life developing a solution that works within the confines of how Channels functions and presents itself. Take it or leave it, but I don't need to be lambasted for caring.

Maybe next time consider something like...

"Thanks, but I actually found that you can just set the playlist to MPEG-TS and it'll work with that and HLS, so this isn't completely necessary. I wish the Devs would update the documentation to reflect this info."

2 Likes

Question:
Is there any downside to making ALL my Custom Channels MPEG-TS (excluding STRMLINK) ?

Take this as a grain of salt because I'm far from an expert, but my understanding is that HLS tends to be "better" or "cleaner" when dealing with live streaming, but perhaps not as "efficient" as MPEG-TS. Since the Channels Devs think there is a value to maintaining this difference, then I'd stick with it, as well, simply because there's got to be some kind of benefit. I'd also say, just because in one use case HLS streams worked with the MPEG-TS setting, that is no guarantee it will work in all situations. Given that, IMHO, I see no need to add risk.

2 Likes

Thanks.

No

This is not about you. This is about all who read this to prevent them from wasting time by following an outdated documentation.

I just installed the latest SLM via docker and get the folloowing error
ValueError: dict contains fields not in fieldnames: None stderr
04/10/2025 11:02 raise ValueError("dict contains fields not in fieldnames: " stderr
04/10/2025 11:02 File "/usr/local/lib/python3.12/csv.py", line 159, in _dict_to_list stderr
04/10/2025 11:02 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stderr
04/10/2025 11:02 return self.writer.writerows(map(self._dict_to_list, rowdicts)) stderr
04/10/2025 11:02 File "/usr/local/lib/python3.12/csv.py", line 167, in writerows stderr
04/10/2025 11:02 writer.writerows(rows) stderr
04/10/2025 11:02 File "/app/slm.py", line 10116, in check_and_add_column stderr
04/10/2025 11:02 check_and_add_column(csv_file, 'streaming_service_active', 'On')

I think I see the issue and how to fix it, should have a fix soon.

EDIT: v2025.04.11.1411 has been released with the fix, and some other stuff......

Hi, I'm having trouble adding the m3u link for a HDHR. I can fully access the link myself, and confirmed the link and m3u file are accessible over the network within the docker container, but I get 0 stations. Same outcome using either the full IP or hdhomerun.local.

Just to make sure, have you run Update Station List yet? Because you'll have zero stations until you do. This is essentially the "Import into PLM" function.

Also @rpaulmerrell and everyone else I've lost track of...

Currently as of prerelease v2025.05.22.1726, there is a new feature called Child Station Mappings. As the name implies, you can modify anything about the base loaded stations using testing criteria. However, I have also expanded this functionality to include the ability to automatically assign parents (including making parents) and setting stream format overrides, both of which are especially helpful for rapidly changing m3u's. Full details are available here:

Again, this is only available in prerelease right now because I'd like to get some other people to kick the tires first before moving to a general release. As you can imagine, the the potential possibilities of how you'd want to set this up can be near infinite, and as such I have not been able to verify even a broad batch of scenarios. I'd greatly appreciate some feedback and experiences!


EDIT: This is now available as of v2025.05.26.1617. That said, I'm still in the monitoring game to see if there are any hangups. Otherwise, it's available to everyone now!

Hey I believe this would solve my one request.. my m3u occasionally adds new channels for events (like sporting events) and deletes the channel after the event. I noticed when they do this, I have to hop into PLM and assign the channel.

Would this automation solve this to automatically assign as a parent and push to non gracenote custom source?
**edit - I have it setup to test. I followed the WIKI and believe this is what i'm looking for.

Also just a thought - once these channels delete from my source, do I need to manually prune my channel list to delete them? I suppose no harm leaving?