Improve folder structure for series with multiple authors #183

Closed
opened 2026-04-24 23:00:31 +02:00 by adam · 10 comments
Owner

Originally created by @soilheart on GitHub (Jan 21, 2022).

(Borrowing the template from the audiobookshelf-app-repo)

Is your feature request related to a problem? Please describe.

Improve folder structure for series with multiple authors, grouping the files/folders mainly by series, and not author.

Describe the solution you'd like

What I would like is support for a structure where Author information is parsed after the Series folder, e.g.:

Series/Author 1/Book 1 - Title/

I have thought long and hard about it though, and I haven't figured out any suggestion that is also backwards compatible with the current supported path formats so I don't have a solution
(I have some books which follow a Series/Book 1 - Title/ format, but as expected the series gets misinterpreted as author in that case)

Describe alternatives you've considered

A workaround that kind of works, but can get a bit unruly is using the structure:

Author 1/Series/Book 1 - Title/
Author 2/Series/Book 2 - Title/
Author 1/Series/Book 3 - Title/

The downside to this as I see it is that the books folders is now harder to process in bulk etc. For example if I needed to add a leading zero to the number as the series grow I would need to do so in authors number of folders, instead of a single folder. It also clutters up the top folder with authors that may only be relevant for one series (although that is possible to solve with yet another top folder)

Additional context

Example of series with multiple authors
Horus Heresy: https://wh40k.lexicanum.com/wiki/Horus_Heresy_Series (This one also has short story collections, which could add yet another level of complexity).
The Old Republic: https://starwars.fandom.com/wiki/Star_Wars:The_Old_Republic(novel_series)

Originally created by @soilheart on GitHub (Jan 21, 2022). (Borrowing the template from the audiobookshelf-app-repo) ### Is your feature request related to a problem? Please describe. Improve folder structure for series with multiple authors, grouping the files/folders mainly by series, and not author. ### Describe the solution you'd like What I would like is support for a structure where Author information is parsed after the Series folder, e.g.: ``` Series/Author 1/Book 1 - Title/ ``` I have thought long and hard about it though, and I haven't figured out any suggestion that is also backwards compatible with the current supported path formats so I don't have a solution (I have some books which follow a `Series/Book 1 - Title/` format, but as expected the series gets misinterpreted as author in that case) ### Describe alternatives you've considered A workaround that kind of works, but can get a bit unruly is using the structure: ``` Author 1/Series/Book 1 - Title/ Author 2/Series/Book 2 - Title/ Author 1/Series/Book 3 - Title/ ``` The downside to this as I see it is that the books folders is now harder to process in bulk etc. For example if I needed to add a leading zero to the number as the series grow I would need to do so in authors number of folders, instead of a single folder. It also clutters up the top folder with authors that may only be relevant for one series (although that is possible to solve with yet another top folder) ### Additional context Example of series with multiple authors Horus Heresy: https://wh40k.lexicanum.com/wiki/Horus_Heresy_Series (This one also has short story collections, which could add yet another level of complexity). The Old Republic: https://starwars.fandom.com/wiki/Star_Wars:_The_Old_Republic_(novel_series)
adam closed this issue 2026-04-24 23:00:31 +02:00
Author
Owner

@JKamsker commented on GitHub (Jan 22, 2022):

+1

Perry Rhodan: https://www.audible.de/series/Perry-Rhodan-NEO-1-50-Hoerbuecher/B075192HZF

Maybe make even a specialized folder named Series would be cool. Like

Series/[Series Name]/Author/Book [N] - Title

@JKamsker commented on GitHub (Jan 22, 2022): +1 Perry Rhodan: https://www.audible.de/series/Perry-Rhodan-NEO-1-50-Hoerbuecher/B075192HZF Maybe make even a specialized folder named Series would be cool. Like ``Series/[Series Name]/Author/Book [N] - Title``
Author
Owner

@soilheart commented on GitHub (Jan 23, 2022):

Reading through my initial text again, I realize that my example wasn't the best.
What I would like is to be able to do
Series/Book 1 - Title/
But have it pick up Author somewhere after the book number (not sure where...)

The suggestion from JKamser would work for me, but I would prefer if Book 1 could come first after the [Series Name] folder...

Perhaps:
Various Authors/[Series Name]/Book [N] - Title - Author/
E.g. if the author is "Various Authors" (loaned from the term "Various Artist" in music tagging etc.), then pick the actual Author from the Book folder (possibly disallowing subtitle).

@soilheart commented on GitHub (Jan 23, 2022): Reading through my initial text again, I realize that my example wasn't the best. What I would like is to be able to do `Series/Book 1 - Title/` But have it pick up Author somewhere after the book number (not sure where...) The suggestion from JKamser would work for me, but I would prefer if `Book 1` could come first after the `[Series Name]` folder... Perhaps: `Various Authors/[Series Name]/Book [N] - Title - Author/` E.g. if the author is "Various Authors" (loaned from the term "Various Artist" in music tagging etc.), then pick the actual Author from the Book folder (possibly disallowing subtitle).
Author
Owner

@advplyr commented on GitHub (Jan 24, 2022):

I think series needs to be thought through again because I also missed the use-case where a book could belong to multiple series.

One of the reasons Abs started off relying heavily on directory structure was because at first it wasn't pulling audio file metadata and there was no match feature.
Now that it parses audio file metadata well, and there will soon be automatic matching, then maybe we can have the directory structure be optional altogether.

Maybe there is a better way to go about this that can be used to solve for any directory structure.

@advplyr commented on GitHub (Jan 24, 2022): I think series needs to be thought through again because I also missed the use-case where a book could belong to multiple series. One of the reasons Abs started off relying heavily on directory structure was because at first it wasn't pulling audio file metadata and there was no match feature. Now that it parses audio file metadata well, and there will soon be automatic matching, then maybe we can have the directory structure be optional altogether. Maybe there is a better way to go about this that can be used to solve for any directory structure.
Author
Owner

@soilheart commented on GitHub (Jan 26, 2022):

Now that it parses audio file metadata well, and there will soon be automatic matching, then maybe we can have the directory structure be optional altogether.

While I agree that directory structure could be optional, that already seems to be the case with the "Scanner prefer [audio|OPF] metadata"

While I understand this is a very subjective opinion:
As there's no de-facto standard for this kind of metadata (at least when it comes to in-file tags), I prefer having the information outside the file (as I prefer portability, e.g. not modifying the file for a specific software). Ideally this could be solved through folder structure, but in the cases where it's not enough maybe the OPF track is the way to go...

How does it work at the moment? Is it either/or with folder structure and for example OPF metadata? Or is the switch only a switch for saying what takes preference for the fields? (E.g. could I add an OPF file with basically only the author in the book folders for now, and that way get around this issue for now?)

@soilheart commented on GitHub (Jan 26, 2022): > Now that it parses audio file metadata well, and there will soon be automatic matching, then maybe we can have the directory structure be optional altogether. While I agree that directory structure could be optional, that already seems to be the case with the "Scanner prefer [audio|OPF] metadata" While I understand this is a very subjective opinion: As there's no de-facto standard for this kind of metadata (at least when it comes to in-file tags), I prefer having the information outside the file (as I prefer portability, e.g. not modifying the file for a specific software). Ideally this could be solved through folder structure, but in the cases where it's not enough maybe the OPF track is the way to go... How does it work at the moment? Is it either/or with folder structure and for example OPF metadata? Or is the switch only a switch for saying what takes preference for the fields? (E.g. could I add an OPF file with basically only the author in the book folders for now, and that way get around this issue for now?)
Author
Owner

@wtanksleyjr commented on GitHub (Jan 27, 2022):

I agree with the author-series problem (being a Wheel of Time fan), and the multiple-series problem (look at the data Audible provides, it frequently includes "chronological order" and "published order", and more for series like the various Thrawn books).

It strikes me that we might actually want a system more like the current Genre system, in which you can simply assign as many as you want to each book. This can be done using OPF files (or some replacement, but I'm happy with what kinda works right now).

With that said, I wanted to point out a problem with all schemes like this. If I have two books that are identical except for one attribute that's not recorded in the filename/path, how do I store them? This happens right now with narrators (in my collection I have LOTR, Hobbit, and Narnia in multiple versions, and of course someday there might be a good recording of Dune and for some reason I might want to keep the old one please don't hate me). I have an adequate solution, which is to repurpose the subtitle parsing so the title contains both parts and the subtitle contains the narrator.

@wtanksleyjr commented on GitHub (Jan 27, 2022): I agree with the author-series problem (being a Wheel of Time fan), and the multiple-series problem (look at the data Audible provides, it frequently includes "chronological order" and "published order", and more for series like the various Thrawn books). It strikes me that we might actually want a system more like the current Genre system, in which you can simply assign as many as you want to each book. This can be done using OPF files (or some replacement, but I'm happy with what kinda works right now). With that said, I wanted to point out a problem with all schemes like this. If I have two books that are identical except for one attribute that's not recorded in the filename/path, how do I store them? This happens right now with narrators (in my collection I have LOTR, Hobbit, and Narnia in multiple versions, and of course someday there might be a good recording of Dune and for some reason I might want to keep the old one please don't hate me). I have an adequate solution, which is to repurpose the subtitle parsing so the title contains both parts and the subtitle contains the narrator.
Author
Owner

@advplyr commented on GitHub (Jan 27, 2022):

How does it work at the moment? Is it either/or with folder structure and for example OPF metadata? Or is the switch only a switch for saying what takes preference for the fields? (E.g. could I add an OPF file with basically only the author in the book folders for now, and that way get around this issue for now?)

It is just for what takes priority. Yes to your question.

It strikes me that we might actually want a system more like the current Genre system, in which you can simply assign as many as you want to each book. This can be done using OPF files (or some replacement, but I'm happy with what kinda works right now).

I was thinking series could be treated more like collections are

There is no good way to handle the case of multiple books with different narrators. I have that in my library and I added the narrator name to the audiobook folder then manually edited the title in audiobookshelf.

@advplyr commented on GitHub (Jan 27, 2022): > How does it work at the moment? Is it either/or with folder structure and for example OPF metadata? Or is the switch only a switch for saying what takes preference for the fields? (E.g. could I add an OPF file with basically only the author in the book folders for now, and that way get around this issue for now?) It is just for what takes priority. Yes to your question. > It strikes me that we might actually want a system more like the current Genre system, in which you can simply assign as many as you want to each book. This can be done using OPF files (or some replacement, but I'm happy with what kinda works right now). I was thinking series could be treated more like collections are There is no good way to handle the case of multiple books with different narrators. I have that in my library and I added the narrator name to the audiobook folder then manually edited the title in audiobookshelf.
Author
Owner

@wtanksleyjr commented on GitHub (Jan 28, 2022):

I was thinking series could be treated more like collections are

In the end they'd have to be their own thing, obviously. In the meantime, whatever's easy to balance programming and ease of use! It's at least interesting that OPF files already support multiple series, so technically we have the "how to get the data loaded" mostly solved.

There is no good way to handle the case of multiple books with different narrators. I have that in my library and I added the narrator name to the audiobook folder then manually edited the title in audiobookshelf.

So what I did was I changed my book-organization Python script so that it appended all of the subtitles onto the title, and then added the narrator after a " - ". Then I turned on subtitle parsing. Boom, an easy way to track who's narrating :) . I actually like the subtitle being part of the book name (except when it's just "Series Name, Book 3" but that's also something I easily fixed).

@wtanksleyjr commented on GitHub (Jan 28, 2022): > I was thinking series could be treated more like collections are In the end they'd have to be their own thing, obviously. In the meantime, whatever's easy to balance programming and ease of use! It's at least interesting that OPF files already support multiple series, so technically we have the "how to get the data loaded" mostly solved. > There is no good way to handle the case of multiple books with different narrators. I have that in my library and I added the narrator name to the audiobook folder then manually edited the title in audiobookshelf. So what I did was I changed my book-organization Python script so that it appended all of the subtitles onto the title, and then added the narrator after a " - ". Then I turned on subtitle parsing. Boom, an easy way to track who's narrating :) . I actually like the subtitle being part of the book name (except when it's just "Series Name, Book 3" but that's also something I easily fixed).
Author
Owner

@soilheart commented on GitHub (Jan 28, 2022):

It is just for what takes priority. Yes to your question.

Great, then I have a workaround for now

There is no good way to handle the case of multiple books with different narrators. I have that in my library and I added the narrator name to the audiobook folder then manually edited the title in audiobookshelf.

So what I did was ...

And what I've done, is that for books where I have multiple versions, I usually add the distinguishing features in a parentheses after the title, e.g. Title (Narrator1) and Title (Narrator2) if two different narrator, or Title and Title (m4a) if I have book in both m4a and mp3 (mp3 is the default, so doesn't get any distinction).

Was about to propose to add a feature to "clean up the title" by removing parentheses (and/or brackets) from the title etc., but didn't feel like I had thought the idea through enough, but as the topic was brought up.... :)

@soilheart commented on GitHub (Jan 28, 2022): > It is just for what takes priority. Yes to your question. Great, then I have a workaround for now > > There is no good way to handle the case of multiple books with different narrators. I have that in my library and I added the narrator name to the audiobook folder then manually edited the title in audiobookshelf. > So what I did was ... And what I've done, is that for books where I have multiple versions, I usually add the distinguishing features in a parentheses after the title, e.g. `Title (Narrator1)` and `Title (Narrator2)` if two different narrator, or `Title` and `Title (m4a)` if I have book in both m4a and mp3 (mp3 is the default, so doesn't get any distinction). Was about to propose to add a feature to "clean up the title" by removing parentheses (and/or brackets) from the title etc., but didn't feel like I had thought the idea through enough, but as the topic was brought up.... :)
Author
Owner

@snowmangoh commented on GitHub (Feb 9, 2022):

That's exactly how I handle the different narrator problem.

@snowmangoh commented on GitHub (Feb 9, 2022): > That's exactly how I handle the different narrator problem.
Author
Owner

@advplyr commented on GitHub (Jul 15, 2022):

That folder structure won't be supported as the default structure but if we add support for selecting custom folder patterns then this would be supported. Follow #774

@advplyr commented on GitHub (Jul 15, 2022): That folder structure won't be supported as the default structure but if we add support for selecting custom folder patterns then this would be supported. Follow #774
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#183