completed mp3 metadata.

alt=
DannyA
@dannya
10 years ago
584 posts
When a user purchases a file, the only thing they can tell is whatever file name was used when the original file was uploaded. Is there a way to update the filename and id3 tag with the information in the song details page?
updated by @dannya: 06/22/14 02:40:32AM
brian
@brian
10 years ago
10,148 posts
andersda:
When a user purchases a file, the only thing they can tell is whatever file name was used when the original file was uploaded. Is there a way to update the filename and id3 tag with the information in the song details page?

This would require an ID3 tagger - it's something on the todo list, but has not been added yet. It will be in a future version of the audio module though.

Hope this helps!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
alt=
DannyA
@dannya
10 years ago
584 posts
Do you have an ETA on that? It seems like a pretty important feature. If its not for a while, can you recommend some good lightweight taggers?
brian
@brian
10 years ago
10,148 posts
andersda:
Do you have an ETA on that? It seems like a pretty important feature. If its not for a while, can you recommend some good lightweight taggers?

No ETA at this time. So far you're the first to ask for it ;) No one seemed to care about it in JR4, so it's not something we did for JR5. I can check it out and see how hard it would be to add in - might be easy. I will let you know.

Thanks!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
alt=
DannyA
@dannya
10 years ago
584 posts
That would be great. There are tons of very simple scripts to do this. I thought it would be part of the audio file. Some even support tagging multiple formats e,g, http://sourceforge.net/projects/idteid3tagedito/.
I figure something like this would be basic tool of media package together with ffmpeg


It nice when you purchase a whole bunch of tracks and download them and you know what they are. Unfortunately, a producer may not name his file accordingly when uploading.
brian
@brian
10 years ago
10,148 posts
andersda:
It nice when you purchase a whole bunch of tracks and download them and you know what they are. Unfortunately, a producer may not name his file accordingly when uploading.

And this does open up more issues - what if the audio file IS tagged correctly and the artist does not want their tags overwritten? If I code in a solution it will not handle that scenario - whatever gets coded will apply equally to all files (i.e. whatever gets put in as the title/album/artist is what gets written).

The most important thing to me is that any changes like this are not exposed to users - they need to work seamlessly and effortlessly, with no extra input from the user required.

If that sounds good, I will check it out - if you think you're going to need fine grained control over exactly what tags are written, which are not, for fields for asking the user which ones to write/not write, then you'd want to create something custom to suit your needs.

Thanks!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
alt=
DannyA
@dannya
10 years ago
584 posts
No, I think whatever fields are collected when a user creates media should be the official. In a perfect world, we would detect tags on upload and autofill form, allow the user to make changes, and overwrite with when media is saved. You could also rename the filename something relevant as well (Release-artist-songname).

However i would be happy if we just overwrote; ideally any fields collected on the upload form that could be mapped e.g. label, year, bpm, genre, lyrics, album cover, and especially any unique id or fields; basically ALL AVAILABLE tags. I don't think we need to ask the user which ones to write/not write.

Bonus points if this happened at purchase time so you can also insert a purchaser/transaction id.
brian
@brian
10 years ago
10,148 posts
What I'm looking at is a simple overwrite setup - basically whatever the user enters for audio title, genre, etc. - these are going to get written to the file. Other fields will simply be left as is.

There will be a function for you to write specific fields into the file (which is what I will use), so it would be easy at vault download time to have a small listener copy the file to a tmp location, add user identifiers in, then download that file instead (basically you would key off of the vault_download view). You wouldn't want to write that data to the "master" file, but to a temp file for each user.

I've looked at the tag writer and it seems pretty straightforward so I will get that added in.

Hope this helps!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
alt=
DannyA
@dannya
10 years ago
584 posts
Sounds perfect. Obviously depending on the format, you will be able to use some fields more than others. Something like a wav file doesn't have any tags so we have to do the best we can "tagging" the file name.

Looking forward to this one. It makes the purchaser experience so much better.
brian
@brian
10 years ago
10,148 posts
I am looking at ID3 tags, so only MP3 files would get tagged - WAV files, as well as any container based format (such as WMA, AAC, OGG, etc) will break if you add ID3 tags to it.


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net

updated by @brian: 04/18/14 06:32:00AM
alt=
DannyA
@dannya
10 years ago
584 posts
You should take a look at some of the various taggers. Some handle multiple formats and containers, with little additional effort. But barring that, file name will have to do; at the very least artist-title.
brian
@brian
10 years ago
10,148 posts
andersda:
You should take a look at some of the various taggers. Some handle multiple formats and containers, with little additional effort. But barring that, file name will have to do; at the very least artist-title.

WAV files cannot be tagged - the format does not allow any tagging. Other formats (such as OGG, WMA, AAC, etc.) all have their own unique tag structure.

Right now I am looking at id3v2 as a tagger, since it has a permissive license that allows inclusion in Jamroom. If you know of a 3rd party multi format command line audio tag reader/remover/writer, let me know and I can check it out.

Thanks!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
alt=
DannyA
@dannya
10 years ago
584 posts
The one I referenced above is GPLv3. What license do you need?
alt=
DannyA
@dannya
10 years ago
584 posts
Taglib http://taglib.github.io/is also LGPL and MPL.
michael
@michael
10 years ago
7,718 posts
That url should be http://taglib.github.io/ MPL is compatible with Jamroom. Thanks for the link.
brian
@brian
10 years ago
10,148 posts
andersda:
Taglib http://taglib.github.io/is also LGPL and MPL.

Unfortunately this has some cmake dependencies that prevent it from being packaged as a binary. Then only think it would have added was the ability to tag WAV and OGG files (Jamroom does not support any of the other formats that it supports).

So for now I'm going to stick with ID3 tagging the MP3 files, but have exposed an event trigger that allows a custom module to get in there ahead of the ID3 tagger, do it's work, then tell the default ID3 tagger to not bother - that should allow any type of customization needed.

Thanks!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net

updated by @brian: 04/19/14 08:02:41AM
alt=
DannyA
@dannya
10 years ago
584 posts
Can we still RENAME the mp3 and , more importantly, wav files?
brian
@brian
10 years ago
10,148 posts
andersda:
Can we still RENAME the mp3 and , more importantly, wav files?

I'm not sure what you mean - do you mean can you rename the actual file as it is stored on the file system? No - that is stored in a very specific format. If you just mean the name that it is downloaded as, yes - that is stored in the DS so you can change that to suit your needs.

Hope this helps!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
alt=
DannyA
@dannya
10 years ago
584 posts
Doing some customization of the download file someone gets after a purchase. I know you were planning on adding id3 tag updating when a user UPLOADS. However i am try to modify some tags before they DOWNLOAD.

Has id3 Tagger been added to the system? If so, is there any function to call it?

If not, when do you expect it will be added in?
brian
@brian
10 years ago
10,148 posts
andersda:
Doing some customization of the download file someone gets after a purchase. I know you were planning on adding id3 tag updating when a user UPLOADS. However i am try to modify some tags before they DOWNLOAD.

Has id3 Tagger been added to the system? If so, is there any function to call it?

If not, when do you expect it will be added in?

Yes - there is an extensive changelog for the audio module:

https://www.jamroom.net/the-jamroom-network/networkmarket/12/audio-support?expanded_changelog=1

it was added in Audio Support 1.3.0.

You can access the jrAudio tagging function in your own modules:

jrAudio_tag_audio_file($input_file, $_tags = null)

$_tags must be a valid array of ID3v2 tags (i.e. "TCON").

Hope this helps!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net

Tags