[Enhancement]: Save timestamps in ID3-tags according to ISO 8601 #2867

Open
opened 2026-04-25 00:11:23 +02:00 by adam · 0 comments
Owner

Originally created by @satosti on GitHub (Jul 1, 2025).

Type of Enhancement

Server Backend

Describe the Feature/Enhancement

Timestamps, such as the publication dates of podcast episodes, are currently saved into the ID3-tags of the underlying files in the time format specified in RFC 822. While this format choice follows the RSS specifications, the ID3v2.4 specifications demand that timestamp fields follow a subset of ISO 8601:

When being as precise as possible the format of a time string is yyyy-MM-ddTHH:mm:ss (year, “-”, month, “-”, day, “T”, hour (out of 24), ”:”, minutes, ”:”, seconds), but the precision may be reduced by removing as many time indicators as wanted. Hence valid timestamps are yyyy, yyyy-MM, yyyy-MM-dd, yyyy-MM-ddTHH, yyyy-MM-ddTHH:mm and yyyy-MM-ddTHH:mm:ss. All time stamps are UTC. For durations, use the slash character as described in 8601, and for multiple non- contiguous dates, use multiple strings, if allowed by the frame definition.

It would be great if Audiobookshelf would convert the timestamps, it fetched from an RSS feed, to ISO 8601 when saving them to the audio files ID3-tags!

This will also be relevant when a kind developer adapts the "Embed metadata" tool for audiobooks to also work with podcasts, as requested in #4304.

Why would this be helpful?

It would improve the later handling of the audio files by other users or programs, which expect ID3-tag timestamps to follow ISO 8601.

Future Implementation (Screenshot)

Audiobookshelf Server Version

v2.25.1

Current Implementation (Screenshot)

Originally created by @satosti on GitHub (Jul 1, 2025). ### Type of Enhancement Server Backend ### Describe the Feature/Enhancement Timestamps, such as the publication dates of podcast episodes, are currently saved into the ID3-tags of the underlying files in the time format specified in RFC 822. While this format choice follows the [RSS specifications](https://www.rssboard.org/rss-specification), the [ID3v2.4 specifications](https://mutagen-specs.readthedocs.io/en/latest/id3/id3v2.4.0-structure.html) demand that timestamp fields follow a subset of ISO 8601: > When being as precise as possible the format of a time string is yyyy-MM-ddTHH:mm:ss (year, “-”, month, “-”, day, “T”, hour (out of 24), ”:”, minutes, ”:”, seconds), but the precision may be reduced by removing as many time indicators as wanted. Hence valid timestamps are yyyy, yyyy-MM, yyyy-MM-dd, yyyy-MM-ddTHH, yyyy-MM-ddTHH:mm and yyyy-MM-ddTHH:mm:ss. All time stamps are UTC. For durations, use the slash character as described in 8601, and for multiple non- contiguous dates, use multiple strings, if allowed by the frame definition. It would be great if Audiobookshelf would convert the timestamps, it fetched from an RSS feed, to ISO 8601 when saving them to the audio files ID3-tags! This will also be relevant when a kind developer adapts the "Embed metadata" tool for audiobooks to also work with podcasts, as requested in #4304. ### Why would this be helpful? It would improve the later handling of the audio files by other users or programs, which expect ID3-tag timestamps to follow ISO 8601. ### Future Implementation (Screenshot) <p align="center"> <img src="https://github.com/user-attachments/assets/1a58bb7f-d2b7-45a1-84f9-84232de38c02"> </p> ### Audiobookshelf Server Version v2.25.1 ### Current Implementation (Screenshot) <p align="center"> <img src="https://github.com/user-attachments/assets/9af2fa9e-a3be-492e-a78c-07edcbd14f5b"> </p>
adam added the enhancement label 2026-04-25 00:11:23 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#2867