[Bug]: Series and series-part do not get embedded when you write meta data to files. #2325

Closed
opened 2026-04-25 00:06:07 +02:00 by adam · 8 comments
Owner

Originally created by @derkington on GitHub (Oct 23, 2024).

What happened?

Previously I would manually update my audio files with information including the series information using mp3tag (extended fields for series information). The audiobookshelf app would then enable me to click on series in the interface and see all the books which are part of the series. I have recently started using the audiobookshelf user interface to match files and embed the data into the files for the first time. It appears that the series and book number is identified when a match is carried out in the UI, however the series and series part does not get written to the file or display in the UI. When I add and populate the series and series part using mp3tag and do a scan everything displays and works as expected.

What did you expect to happen?

The series information would appear in the android app, allowing me to see all books in the series.

Steps to reproduce the issue

  1. Match a audiobook that is part of a series
  2. The series field does not appear in the android app.

Audiobookshelf version

v2.15.1

How are you running audiobookshelf?

Debian/PPA

What OS is your Audiobookshelf server hosted from?

Linux

If the issue is being seen in the UI, what browsers are you seeing the problem on?

Firefox

Logs

No response

Additional Notes

No response

Originally created by @derkington on GitHub (Oct 23, 2024). ### What happened? Previously I would manually update my audio files with information including the series information using mp3tag (extended fields for series information). The audiobookshelf app would then enable me to click on series in the interface and see all the books which are part of the series. I have recently started using the audiobookshelf user interface to match files and embed the data into the files for the first time. It appears that the series and book number is identified when a match is carried out in the UI, however the series and series part does not get written to the file or display in the UI. When I add and populate the series and series part using mp3tag and do a scan everything displays and works as expected. ### What did you expect to happen? The series information would appear in the android app, allowing me to see all books in the series. ### Steps to reproduce the issue 1. Match a audiobook that is part of a series 2. The series field does not appear in the android app. ### Audiobookshelf version v2.15.1 ### How are you running audiobookshelf? Debian/PPA ### What OS is your Audiobookshelf server hosted from? Linux ### If the issue is being seen in the UI, what browsers are you seeing the problem on? Firefox ### Logs _No response_ ### Additional Notes _No response_
adam added the bug label 2026-04-25 00:06:07 +02:00
adam closed this issue 2026-04-25 00:06:07 +02:00
Author
Owner

@mikiher commented on GitHub (Oct 27, 2024):

Let me make sure I understand the sequence of actions you're reporting.

  1. You matched a book (did you use Quick Match or the Match tab in the book details box?)
  2. The match contained a series and sequence number
  3. If you used the Match tab, you submitted the match by selecting it and clicking the Submit button on the bottom?
  4. Now that book doesn't have the matched series in the Audiobookshelf android app?

Did I understand the sequence correctly?

@mikiher commented on GitHub (Oct 27, 2024): Let me make sure I understand the sequence of actions you're reporting. 1. You matched a book (did you use `Quick Match` or the `Match` tab in the book details box?) 2. The match contained a series and sequence number 3. If you used the `Match` tab, you submitted the match by selecting it and clicking the `Submit` button on the bottom? 4. Now that book doesn't have the matched series in the Audiobookshelf android app? Did I understand the sequence correctly?
Author
Owner

@advplyr commented on GitHub (Oct 27, 2024):

I believe the old tone metadata embed tool would embed series and series-part meta tags in a way they were accessible to ffprobe from both mp3 and mp4 containers.
I'm not sure how it works but tone set up special meta tags that made it accessible for non-mp3.
server/utils/toneHelpers.js

Now for mp4 containers unless they are embedded in that way ffprobe won't pull a series and series-part tag.

Since we switched to ffmpeg for embedding we use the grouping tag which is available on mp3 and mp4 containers. Last week I updated the grouping tag to use a semicolon delimited list of series + sequence in order to fix a bug with parsing multiple series. See #3473 and the fix https://github.com/advplyr/audiobookshelf/commit/953ffe889e5ba39f74e167d2600c0c3908f280ed

This was one of the downsides to switching to ffmpeg for embedding meta tags. Ffprobe only supports a small number of tags for mp4 containers.

The docs should be updated once the next release goes out showing which tags can be read in which container and which tags get written when embedding.

@advplyr commented on GitHub (Oct 27, 2024): I believe the old tone metadata embed tool would embed `series` and `series-part` meta tags in a way they were accessible to ffprobe from both mp3 and mp4 containers. I'm not sure how it works but tone set up special meta tags that made it accessible for non-mp3. [server/utils/toneHelpers.js](https://github.com/advplyr/audiobookshelf/pull/3111/files#diff-c75ce1d09d1f1ee386d12ae993c50d59146599806f7cc07b20f1b90994ad17aa) Now for mp4 containers unless they are embedded in that way ffprobe won't pull a `series` and `series-part` tag. Since we switched to ffmpeg for embedding we use the `grouping` tag which is available on mp3 and mp4 containers. Last week I updated the grouping tag to use a semicolon delimited list of series + sequence in order to fix a bug with parsing multiple series. See #3473 and the fix https://github.com/advplyr/audiobookshelf/commit/953ffe889e5ba39f74e167d2600c0c3908f280ed This was one of the downsides to switching to ffmpeg for embedding meta tags. Ffprobe only supports a small number of tags for mp4 containers. The docs should be updated once the next release goes out showing which tags can be read in which container and which tags get written when embedding.
Author
Owner

@mikiher commented on GitHub (Oct 28, 2024):

I know the bug title is about embedding, however that is not what the bug description says. It says:

It appears that the series and book number is identified when a match is carried out in the UI, however the series and series part does not get written to the file or display in the UI.

It also says how to reproduce it:

Match a audiobook that is part of a series
The series field does not appear in the android app.

I was not able to reproduce the described behavior, hence the clarifying questions asked.

@mikiher commented on GitHub (Oct 28, 2024): I know the bug title is about embedding, however that is not what the bug description says. It says: > It appears that the series and book number is identified when a match is carried out in the UI, however the series and series part does not get written to the file or display in the UI. It also says how to reproduce it: >Match a audiobook that is part of a series The series field does not appear in the android app. I was not able to reproduce the described behavior, hence the clarifying questions asked.
Author
Owner

@derkington commented on GitHub (Nov 1, 2024):

Sorry that this was not clear. I have added some pictures to show the outcome I was expecting instead.
I do a match, see series info is present. Go the phone app and series is not present for the book, but series info is in the subtitle. I get mp3tag and add series and series-part tags, the phone app now shows series (3rd image). I click on series and all the books of the series are displayed.

After matching and ultimatly embedding I was hoping for the book to be populated with the info in image 3, instead you end up with image 2 unless you add further info and save which I use mp3tag to do.

1 Match
2 After match abd embed
3 after adding series tags to file

@derkington commented on GitHub (Nov 1, 2024): Sorry that this was not clear. I have added some pictures to show the outcome I was expecting instead. I do a match, see series info is present. Go the phone app and series is not present for the book, but series info is in the subtitle. I get mp3tag and add series and series-part tags, the phone app now shows series (3rd image). I click on series and all the books of the series are displayed. After matching and ultimatly embedding I was hoping for the book to be populated with the info in image 3, instead you end up with image 2 unless you add further info and save which I use mp3tag to do. ![1 Match](https://github.com/user-attachments/assets/02fbcec2-a0b4-415b-9793-1639eb6783b8) ![2 After match abd embed](https://github.com/user-attachments/assets/ad01c909-3a8e-4807-a4d2-d9cf15e01d3e) ![3 after adding series tags to file](https://github.com/user-attachments/assets/e0e3ab03-33f5-49b2-b6c0-1638c0e3c097)
Author
Owner

@mikiher commented on GitHub (Nov 1, 2024):

Thanks for the exaplanation. This is very weird. I also see that the matched Narrators are not reflected in image 2, not only the Series.

A couple of followup questions:

  1. Are you sure you pressed the Submit button on the bottom of the Match tab in image 1? You have to scroll down to the bottom to see it.
  2. After you pressed Submit, can you please take a screenshot of the Details tab and share it here?
@mikiher commented on GitHub (Nov 1, 2024): Thanks for the exaplanation. This is very weird. I also see that the matched Narrators are not reflected in image 2, not only the Series. A couple of followup questions: 1. Are you sure you pressed the `Submit` button on the bottom of the Match tab in image 1? You have to scroll down to the bottom to see it. 2. After you pressed `Submit`, can you please take a screenshot of the Details tab and share it here?
Author
Owner

@advplyr commented on GitHub (Nov 21, 2024):

Is this still an issue?

@advplyr commented on GitHub (Nov 21, 2024): Is this still an issue?
Author
Owner

@BrianAker commented on GitHub (Dec 20, 2024):

This is still an issue, because of this change Audiobookshelf is now hammering the Audible api endpoint for data that is the file itself. The series information is in the file.

( As aside, it would be nice to see Tone being an option to use. )

@BrianAker commented on GitHub (Dec 20, 2024): This is still an issue, because of this change Audiobookshelf is now hammering the Audible api endpoint for data that is the file itself. The series information is in the file. ( As aside, it would be nice to see Tone being an option to use. )
Author
Owner

@mikiher commented on GitHub (Dec 20, 2024):

When you say "this is still an issue", please be clear about what you mean when you say "this". If you read the description, the bug is not really about embedding (despite the title), it's about matching and saving of match results.

If you see a behavior that is similar to what the original author complained about, please provide details to reproduce, as the original author dropped off the radar and didn't answer my follow up questions.

If this is really an issue with embedding, please open a separate bug and provide more details.

@mikiher commented on GitHub (Dec 20, 2024): When you say "this is still an issue", please be clear about what you mean when you say "this". If you read the description, the bug is not really about embedding (despite the title), it's about matching and saving of match results. If you see a behavior that is similar to what the original author complained about, please provide details to reproduce, as the original author dropped off the radar and didn't answer my follow up questions. If this is really an issue with embedding, please open a separate bug and provide more details.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#2325