Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Automate dBpoweramp tagging? (Read 4098 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Automate dBpoweramp tagging?

This post has two subjects: general MIDI tagging and taking advantage of dBpoweramp to automate the process if possible
I didn't wanted to jump in dBpoweramp announcement thread so I made separate post


I gave a try to dBpoweramp, and noticed RIFF List support for WAV files which is fine, as rarely tagging software supports this format (BTW I use mp3infp: http://win32lab.com (Japanese site) and I'm used to this feature in properties tab). However I'm not used to this program and I don't know how can I automate WAV tagging for example?

Secondly, my problem are MIDI files. Lot's of it, and I'm trying for some time to do some systematization there. Software for writing tags to SMF midi files are rare and tagging is per file based. I see solution to my problem by converting them to RMI format which uses "INFO-List chunk" just like WAVs in RIFF container and it is RIFF container for MIDI files. For that purpose I made VBS to mass convert standard midi files to RMI (only adds valid RIFF header: http://pastebin.com/vzmApmi0), but managing RIFF INFO-List tagging in VBS is probably bad idea. So in summary:

- Can tagging process with dBpoweramp be automated?
- If answer to above is yes, will there be tagging support for RMI files?
- Are there known tagging solutions for MIDI files (RMI of SMF, no matter)?


Automate dBpoweramp tagging?

Reply #2
Thanks for your reply

So COM object is accessible with licensed dBpoweramp for automating through C++, .NET and VBS

Unfortunately tip for renaming MIDI files in RIFF container to WAV can't go. As I noticed that RMI tags can't even be read by dBpoweramp, unless I do something wrong. For the record MIDI RIFF header looks like this (for regular SMF as for DLS it's different):



yellow four-bytes: little-endian hex number of whole filesize in bytes
green four-bytes: little-endian hex number of MIDI data in bytes (SMF filesize before it has been wrapped in RIFF)

It's different then RIFF WAV header, but INFO-List chunk is same added at the end of file

While looking at this dBpoweramp feature I noticed also that it doesn't add only INFO-list to WAV files but also ID3 data and it seems like it adds zero byte data at the end of file for some reason

 

Automate dBpoweramp tagging?

Reply #3
How much zero byte data? one byte?

Automate dBpoweramp tagging?

Reply #4
It's easy to check: it's not constant value and it's around 2K bytes (maybe ≤ 2K, like some sort of padding it seem)


Automate dBpoweramp tagging?

Reply #6
I found some kind of solution with the help of this very forum  Among many threads discussing pro/con RIFF standard for tagging WAVs and so on, I accidentally run on this thread: http://www.hydrogenaudio.org/forums/index....showtopic=16908 or more directly this program: ATWavTag

Program is just what I was looking for - simple executable suitable for tagging RIFF Info data through batch processing.
I took the source, made couple of changes and now I can mass tag my RMI files LOL

http://www.hydrogenaudio.org/forums/index....showtopic=83757

It's compiled with VS2008, and this is first C++ program I ever compiled. I don't use this language nor understand it, but made couple of obvious changes to make it work for my need. It processes only MIDI files with RIFF header*

Now, if there is some C/C++ coder with little interest in RIFF tagging, I believe he could make one program from the source, for both MIDI (RMID) and WAV RIFF tagging (as their only difference in this case is RIFF header) in minimal time

* Script from the fist post for mass creating RMI from MID fails if "hex(filesize)" has odd number of ciphers, due to error in LER function. Corrected script is here:  http://pastebin.com/yL00azwr