mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-05-30 23:40:40 +02:00
[Bug] Embed audio file not embedding ASIN, series and series sequence #1151
Closed
opened 2026-04-24 23:34:16 +02:00 by adam
·
13 comments
No Branch/Tag Specified
master
book_tags_genres_dedupe
episode_download_fallback
Issue-4540-SortBy-StartedDate-and-FinishedDate
episode_meta_tagging
fix_authorize_race_condition
redirect_transcode_requests
progress_updated_sort
fix_ereader_socket_event
fix_change_empty_root_password
fix_podcast_session_track_index
fix_set_token
session_modal_user
localize_durations
fix_oidc_create_user
jwt_auth_refactor
fix_scanner_deleting_single_file_books
fix_mediaprogress_updatedat_2
experimental_next_client
podcast_episode_duration
episode-timestamps-clickable
book_author_secondary_sort_title
podcast_useragents
pathexists_user_access
fix_pathexists_join
book_author_secondary_sort
clean_duplicate_mediaprogress
sanitize_html_description
trix_prevent_attachments
check_path_api_fix
fix_mediaprogress_updatedat
increase_express_json_limit
fix_dockerfile_nunicode
search_episodes
audiobook_tools_update
episode_secondary_sorts
hls_stream_url_update
new_session_track_endpoint
audiobook_tools_enhancements
watcher_rescans_update
player_track_tooltip
fix_exclude_prefixes_crash
socket_item_events
fix_podcast_episode_scanner_promise
new_stats_controller
count_cache_for_userpermissions
parsing-opf-v3
validate_migration_files
fix-quick-match-all-crash
fix-chapter-end-sleep-timer
stringify_sequelize_query
remove-col-ambiguity
fix_next_prev_edit_description
details_trim_whitespace
fix_content_url_basepath
fix_logger_fatal
progress_bar_visibility
batch-edit-populate-map-details
feed_generator_updates
bookmark-modal-updates
migrate-library-item-in-scanner
migrate-new-library-items
migrate-podcasts-new-library-item-2
migrate-podcasts-new-library-item
fix-remove-episode-from-playlist
playback-session-use-new-library-item
refactor-library-item
fix-heatmap-caption
feed-episodes-upsert
share-media-player-media-session-api
remove-old-playlist
remove_old_collection_object
plugin-implementation-demo
feed_migration
refactor-feeds-from-item
fix_remove_authors_no_books
v2.17.3-fk-constraints-migration
migrations-first-upgrade
sqlite_2
feature/nuxt-target-server
waveform
sqlite
playlists
video
v2.35.1
v2.35.0
v2.34.0
v2.33.2
v2.33.1
v2.33.0
v2.32.1
v2.32.0
v2.31.0
v2.30.0
v2.29.0
v2.28.0
v2.27.0
v2.26.3
v2.26.2
v2.26.1
v2.26.0
v2.25.1
v2.25.0
v2.24.0
v2.23.0
v2.22.0
v2.21.0
v2.20.0
v2.19.5
v2.19.4
v2.19.3
v2.19.2
v2.19.1
v2.19.0
v2.18.1
v2.18.0
v2.17.7
v2.17.6
v2.17.5
v2.17.4
v2.17.3
v2.17.2
v2.17.1
v2.17.0
v2.16.2
v2.16.1
v2.16.0
v2.15.1
v2.15.0
v2.14.0
v2.13.4
v2.13.3
v2.13.2
v2.13.1
v2.13.0
v2.12.3
v2.12.2
v2.12.1
v2.12.0
v2.11.0
v2.10.1
v2.10.0
v2.9.0
v2.8.1
v2.8.0
v2.7.2
v2.7.1
v2.7.0
v2.6.0
v2.5.0
v2.4.4
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.3.5
v2.3.4
v2.3.3
v2.3.2
v2.3.1
v2.3.0
v2.2.23
v2.2.22
v2.2.21
v2.2.20
v2.2.19
v2.2.18
v2.2.17
v2.2.16
v2.2.15
v2.2.14
v2.2.13
v2.2.12
v2.2.11
v2.2.10
v2.2.9
v2.2.8
v2.2.7
v2.2.6
v2.2.5
v2.2.4
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.5
v2.1.4
v2.1.3
v2.1.2
v2.1.1
v2.1.0
v2.0.24
v2.0.23
v2.0.22
v2.0.21
v2.0.20
v2.0.19
v2.0.18
v2.0.17
v2.0.16
v2.0.15
v2.0.14
v2.0.13
v2.0.12
v2.0.11
v2.0.10
v2.0.9
v2.0.8
v2.0.7
v2.0.6
v2.0.5
v2.0.4
v2.0.3
v2.0.2
v2.0.1
v1.7.2
v1.7.1
v1.7.0
v1.6.0
v1.5.5
v1.5.0
v1.4.11
v1.4.9
v1.4.7
v1.4.6
v1.4.4
v1.4.2
v1.4.0
v1.4.1
v1.3.4
v1.3.3
v1.3.1
v1.2.8
v1.2.6
v1.2.5
v1.2.4
v1.2.1
v1.1.15
v1.1.14
v1.1.13
v1.1.12
v1.1.11
v1.1.10
v1.1.9
v1.1.8
v1.0.0
0.9.61-beta.0
0.9.61-beta
Labels
Clear labels
authentication
backlog
bug
chapter editor
config-issue
ebooks
encoding/embedding
enhancement
help wanted
listening sessions & progress
planned
possible plugin
progress sync
pull-request
sorting/filtering/searching
unable to reproduce
upload
users & permissions
waiting
Mirrored from GitHub Pull Request
No Label
bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
Assignees
adam (Adam Melkus)
Clear assignees
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/audiobookshelf#1151
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @jeff47 on GitHub (May 25, 2023).
Describe the feature/enhancement
I have a number of files where the asin tag is present, but when I go into Match, it defaults to the Title instead. It seems more logical to use the ASIN first, if it exists, and then use the title as a fallback.
@advplyr commented on GitHub (May 25, 2023):
This should be how it already works. What is your provider set to?
@advplyr commented on GitHub (May 25, 2023):
I just tested again and this is working, but let me know how I can reproduce it.

@jeff47 commented on GitHub (May 25, 2023):
Audible.
I've attached an example. Tone finds the ASIN in the m4b file, but the ASIN doesn't seem to get parsed by Audiobookshelf.
@advplyr commented on GitHub (May 25, 2023):
Abs uses
ffprobeto get the meta tags from audio files. Can you try ffprobe?@jeff47 commented on GitHub (May 25, 2023):
Ah, I assumed since tone was used to embed the metadata, it was used to read it as well! My mistake.
ffprobe doesn't reveal any ASIN tag set.
However, I don't see an ASIN in other files using ffprobe where ABS does have them set. Do I need a different parameter to extract them?
@advplyr commented on GitHub (May 25, 2023):
I'm not sure how tone is setting the
asintag, maybe @sandreas could help out. In this comment he hadAUDIBLE_ASINpicked up by ffprobe. https://github.com/advplyr/audiobookshelf/issues/787#issuecomment-1532282307@jeff47 commented on GitHub (May 25, 2023):
Hmm. Using that ffprobe commandline is helpful. Even after matching with an ASIN, and seeing it in ABS on the book info page and in the tone dump, I do not see it in ffprobe. I do not believe ffprobe supports those tags.
@sandreas commented on GitHub (May 26, 2023):
@advplyr @jeff47
tonedoes not set the fieldASINautomatically... Depending on which format you use (e.g.mp3orm4a), you have to useAdditionalFieldsfor this, see here:https://github.com/sandreas/tone/blob/c3ab8c49019afd6f057a55fa5b6ac0ecb22ee789/tone/Metadata/Taggers/M4BFillUpTagger.cs#L37
You can do this with custom JavaScript taggers as well.
I personally use
metadata.AdditionalFields["----:com.pilabor.tone:AUDIBLE_ASIN"]for my very own purposes, whichffprobedetects asAUDIBLE_ASIN(without the----:com.pilabor.tone:prefix). I don't useASIN, because it is a term for Amazon items. While Audible uses the same format for its ID, theASINon Audible and Amazon are not identical for the same product (I think this is to prevent scraping the websites). Therefore I usedAUDIBLE_ASINto not pollute theASINtag.@jeff47 commented on GitHub (May 26, 2023):
I don't see AUDIBLE_ASIN in the ffprobe output for files I've used ABS to embed metadata, and if I remove a properly tagged file from ABS and reimport it, ABS does not populate the ASIN field even when tone displays it on the cli.
That's the basis for my question -- is this the expected behavior? I would have assumed that if an ASIN tag was found in the metadata for a file, it would be used to improve the match and in my experience, this is not happening.
@sandreas commented on GitHub (May 26, 2023):
@jeff47 That may happen, if ABS tries to tag files via
toneAdditionalFields, butffprobeis not able to show it.toneis still able to show tags because they are there,ffprobedoes NOT show, but after reimporting the ABS cache may be gone and the tag cannot be determined sinceffprobeis used.@advplyr So this MAY be a problem in ABS, but you have to investigate this... If it is something in
tonefeel free to open an issue.@advplyr commented on GitHub (May 27, 2023):
I had to make some updates to get embed tool to work for ASIN, series and series sequence
For mpeg4 audio files it will use
----:com.pilabor.tone:SERIESfor series name----:com.pilabor.tone:PARTfor series sequence----:com.pilabor.tone:AUDIBLE_ASINfor asinI tested this on an m4a and was able to properly embed those and the scanner read them.
I also added an additional check for if series sequence is an integer. If it is not an integer then MP3 files will add
PARTin additionalFields. Tested all of these on MP3 as well.@advplyr commented on GitHub (May 28, 2023):
Fixed in v2.2.21
@jeff47 commented on GitHub (Sep 11, 2024):
It's been a while since I checked on this, but I don't think the audible_asin tag is being embedded. I don't see it showing up when I check with "tone dump" after doing the quick embed function.
Are all the metadata fields to be embedded listed on this page? audible_asin doesn't show up there, although it is present on the main book page.