Skip to main content

Song metadata

Link existing metadata standards.

The following information is required to upgrade existing song metadata to identify rightsholders, usage & licenses in web3 environments.

SyntaxDescription
Song metadataInformation required to link existing web2 information to web3.

Metadata elements

SyntaxDescription
versionuse "sp.music.01.00.00" for original version of the song.

This version defines all fields in this model. Any update/variation from here will require a version update, so when marketplaces can read it properly. (ie. version 2 = "sp.music.02.00.00"
build_keyEquivalent to the mint key, used to identify this unique asset build (optional)
artworkImage url to display as album cover for this NFT
album (a.k.a. collection)key: Unique hash to identify this album. Allows for perfect match between PRO codes & web3 album metadata.
name: Collection name
collection_items_total: different assets (items) in this collection
collection_supply: Total minted assets (different items * item supply)
song (a.k.a. Item)kind: (song, album, video, remix)
sources: list of original NFT tokens. Used to distribute sampling & remix royalties to original creators.
releaseDateOriginal: yyyy/mm/dd hh:ii:ss (song release date)
key: Unique hash to identify this song/videoclip/video/asset. Allows for perfect match between PRO codes & web3 song metadata. All copies of this song will share the same key till supply is reached
isrc : International Standard Recording Code is a unique code to identify the recording. (ISRC: https://isrc.ifpi.org/en/)
iswc : International Standard Musical Work Code is a unique reference number for the identification of the composition.
name: Asset name
supply: Number of created assets (tokens)
genre 1: Main genre that represents this NFT
genre 2: (Optional)
bpm: beats per minute
attributesDescribe assets included in the NFT (image cover traits, song traits...) to be displayed on marketplaces & holder wallets. Examples may include: background color, descriptive items, music genre...
artistkey: unique artist identifier. Allows for perfect match between PRO codes & web3 artist metadata. Claim unique hash via Soundpickr.
name : Use artist name (a.k.a. professional name used by the main artist featured in this song).
mediaurl: Middleware url: provide song urls dynamically if smart contact conditions are fulfilled. Sample tracks urls (mp3 url, video url)
mimeType: file type (mp3, wav, flac...)
duration: duration in seconds
Suggestion for marketplaces

This section of metadata is adapted to be compatible with how NFT marketplaces read & display data. We'll release an updated version of the "attributes" element that will include different attributes for the image, song, video...

As of 2022, all media attributes need to be grouped into a single list, but we encourage marketplaces to update their metadata reading systems to allow creators to differentiate different media attributes included in a single NFT.

JSON example

NFT minimum requirements
{
"version": "sp.music.01.00.00",
"build_key": "",
"artwork": [
{
"url": "",
"mimetype": ".jpg"
}
],
"album": {
"key": "",
"name": "",
"collection_items_total": 0,
"collection_supply": 0
},
"song": {
"kind": "",
"sources": [],
"releaseDateOriginal": "",
"key": "",
"iswc": "",
"name": "",
"supply": 0,
"genre": "",
"sub-genre": "",
"bpm": 0
},
"attributes": [
{
"trait_type": "",
"value": ""
}
],
"artist": {
"key": "",
"name": ""
},
"media": [
{
"kind": "",
"url": "",
"mimetype": ""
}
],
}