Expand Episodes in a Single File Naming to support spanning seasons

Currently, the syntax for naming multiepisode TV Show files is this:

Multiple Episodes in a Single File

If a single file covers more than one episode, name it as follows:

  • /TV Shows/ShowName/Season 02/ShowName – s02e17-e18 – Optional_Info.ext

However, if you were to name something: ShowName – s02e17-s03e01 – Optional_Info.ext then the episode does not show up in Plex because it doesn’t seem to recognize that it is moving from the last episode in the current season to the first episode in the next season. This is probably a rare thing but it does happen. An example is Star Trek TNG S03E26 to S04E1 The Best of Both Worlds Parts 1 and 2 which are often combined into a single file rather than being separate files as they should. A workaround is to create another copy of the file and rename it or to use a video editor to manually split the file but it seems simple enough to have Plex be able to read the name moving into the next season and treat it like a normal multi episode single file.

I second this. While this is a rare thing, it does happen.

As far as splitting the show; this is mostly okay, except when the is outside the key frame; so you get the extra 2-4 seconds or you lose 2-4 seconds; so it can make splitting things a pain or ugly; then you have to consider if you are trying to have everything be uniform, do you want to splice in the credits/ending to make it look natural vs a split. Lots of work.

Doing the extra copy (or if you are on linux, a sym link), can work too, except it’s ugly and unnecessarily wastes space and it will actually cause the system to play the same episode twice (I think); so you will have to next through one of them.

I also propose that in addition to this; they update the splitting here to allow for additional tags through {} tags to say when the episode should split, to give the illusion of individual episodes such as this:

  • /TV Shows/ShowName/Season 02/ShowName – s02e17-s03e02 – Optional_Info.ext

Where some of the optional info could be something like this:

{split-S03E01-3600s} {split-S03E02-7200s}

And all plex would do is when you go to play S03E01 (that it has referenced from the real file of S02E17), it has the split tag S03E01 and from the interface, it sees you are trying to ‘next’ to S03E01 or trying to start S03E01 from the interface or whatever, it will jump you to 3600s in, automatically.

Where plex does not actually split anything; it simply uses this as a reference as to when it should resume.

So in your case, for this episode it would be

Star Trek - The Next Generation (1994) - S03E26-S04E01 - {split-S04E01-4489.151s}.mkv

or maybe

Star Trek - The Next Generation (1994) - S03E26-S04E01 - {split-4489.151s}.mkv

But plex would have to know how many episodes there are when rolling over to a new season; so it would have to know that there are only 2 episodes between S03E26 and S04E01, what if it was a three parter or a four parter? So 25-26,01-02, how many episodes does it have to fake?

There are really 26 episodes in Season 3 but let’s assume we started it at 25 and ended at the second episode of the next season, so Season 4 episode 2.

Star Trek - The Next Generation (1994) - S03E25-S04E02 - {split-S03E26-4489.151s} {split-S04E01-8489.151s} {split-S04E02-12489.151s}.mkv

or

Star Trek - The Next Generation (1994) - S03E25-S04E02 - {split-4489.151s} {split-8489.151s} {split-12489.151s}.mkv

But plex will need to figure out how many episodes it spans, which is easy to do in a single season, harder to do when you exit one season and start in another; you have to do investigative work to figure out how many episodes it actually spans from api info.

You could take it a step further and add {intro-120s} {credits-6700s} so when it fakes each episode, it can also play the intro/credits for each faked episode or it can use the intro/ending detection and determine this automatically but some episodes may have an intro start after the episode starts (vs having the intro start then the episode start), so you’d maybe need to supply a range {intro-12s-120s} {credits-6700s-6720s} where the first episode would play the first full 12 seconds all the way to the first split, then {credits-6700s-6720s}, then the last episode would play {intro-12s-120s} second split, then {credits-6700s-6720s} + anything else that might happen after (which I don’t think I’ve seen a tv show with like a spoiler after the credits but flexibility is nice)

Jumping may also rely off keyframes; I dunno.