tags:

views:

427

answers:

1

I work for an organization where we take raw MPEG-2 video files of lectures from academic institutions and make them available on our website in a variety of formats. Right now the workflow for turning the MPEG-2 into audio (MP3) and video (MP4), uploading to iTunes U, YouTube, etc. is extremely tedious. I would like to automate this process, but the main thing keeping me from doing it is all the tagging that is associated with each step in the workflow.

Basically, I would like to make it so that I can just tag the original file once (tagging the raw MPEG-2 file and having the metadata stick with it through transcoding is probably too much to ask, so let's just assume I'd tag each pair of MP3/MP4 files), with all of the metadata needed for every place that the video is uploaded - so the metadata would have to include the proper data for YouTube, iTunes U, our website, and every other place we upload content to. Because of how extensive the metadata is, the normal ID3 tags won't be enough. I would like some sort of a fully customizable metadata (maybe XML-based, but not necessarily) solution for programmatically tagging and reading metadata fields from MP3 and MP4 files. Does such a thing exist? I'm ok with writing my own custom client programs for this, and the language choice isn't really important, but I haven't been able to find a specification for something like what I'm looking for.

+1  A: 

Since no one has answered yet, I'll answer with what my initial thoughts are. I've found a few MP3 tagging libraries, but nothing that can work with both MP3 and MP4 files. Would it be too "hacky" to have an XML file associated with each media file? So if I had SomeSpeaker.mp3 in my audio folder, I would also have SomeSpeaker.mp3.xml in my metadata folder. This is probably the easiest solution, the only problem being that I need to make sure the XML file is uploaded along with the media files, but that shouldn't be a problem because my client program would be doing the uploading. Any thoughts on this?

dancavallaro
Agreed just a question of whether there are tools out there to support this or do they have to be written from scratch.
Ankur