vgmrips

The forum about vgm files
It is currently 2017-07-27, 16:32:31

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 20 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: VGMToolbox
PostPosted: 2012-06-07, 4:13:43 

Programmers Programmers
Offline

Joined: 2012-06-04, 5:24:46
Posts: 19
Updated VGMToolbox to support the latest VGM format revision (up to 1.61), so you can have a GUI batch tagger if you prefer that interface. Bug reports are always helpful.


Image


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-07, 20:11:01 

Staff Staff
Programmers Programmers
Musicians Musicians
Contributors Contributors
Offline
User avatar

Joined: 2011-12-01, 20:20:07
Posts: 2730
Location: Germany
Very nice. I'm sure many people still prefer GUIs over commandline tools.
It works so well I'm probably going to prefer this one over VGMTool. (If it would just have drag and drop, I wouldn't hesitate a second ...)

Some things I've noticed:
  • Your update notes say "No more rebuilding the header.", but the header is still completely rewritten.
  • If you just care about the EOF and GD3 offsets instead of the complete VGM header, you don't need to care about the actual version of the VGM, since the GD3 tag has its own version.
    vgm_tag does it this way, btw.
  • This pack has a v1.70 VGM. Trying to tag it results either in a wrong version error, or in a bad file (with invalid data offset), if I change the version number to something lower. (This isn't actually valid, but it was good for testing)
  • Your source code mentions the loop modifier, but not the loop base and volume modifier.
  • Trying to move the cursor between the tag text boxes with the tab key makes the cursor jump around randomly.

An additional note, unrelated to VGMToolBox:
I'm not too strict about the versions. i.e. My players also accept v1.50 VGMs with an OKI chip, if the header is large enough.
(On Project2612 I once made a 1.50 VGM with a loop modifier, because foo_gep refuses to load 1.51 files, for example. Aside from the loop modifier, the VGM was a completely valid v1.50 one.)


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-07, 20:33:44 

Staff Staff
Private Eyes Private Eyes
Promoters Promoters
Offline
User avatar

Joined: 2012-02-17, 5:54:01
Posts: 204
Location: USA
ValleyBell wrote:
Very nice. I'm sure many people still prefer GUIs over commandline tools.
It works so well I'm probably going to prefer this one over VGMTool. (If it would just have drag and drop, I wouldn't hesitate a second ...)


I'm not too keen on using CMDPROMPT commands and executables, so this is an excellent way to batch tag (since I do that loads). And while I don't mind not having a drag and drop feature, for it to be implemented would be even greater!


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-07, 22:08:58 

Staff Staff
Programmers Programmers
Offline
User avatar

Joined: 2012-04-22, 4:03:45
Posts: 203
Location: New York, NY, USA
that screenshot's title bar shows an odd title; may want to fix that.

also, if vgmtoolbox supports drag-n-drop file loading i would recommend vgmtoolbox over the soon-to-be released vgmtool update for windows, as i'm not positive phoenix (the gui toolkit wrapper i'm using to make my update cross-platform) has drag-n-drop. i'll ask byuu abt that, tho.

vgmtool 3 will be cross-platform, however, and i hope to add command-line capabilities to it in the future so that someone can run it gui-less.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-08, 0:02:35 

Programmers Programmers
Offline

Joined: 2012-06-04, 5:24:46
Posts: 19
ValleyBell wrote:
Your update notes say "No more rebuilding the header.", but the header is still completely rewritten.

I left the old code in there, but the rebuild function now simply copies a byte array containing the full header to the output stream.

ValleyBell wrote:
If you just care about the EOF and GD3 offsets instead of the complete VGM header, you don't need to care about the actual version of the VGM, since the GD3 tag has its own version.

I'll take a look at this idea.

ValleyBell wrote:
This pack has a v1.70 VGM. Trying to tag it results either in a wrong version error, or in a bad file (with invalid data offset), if I change the version number to something lower. (This isn't actually valid, but it was good for testing)

I do have code to verify supported versions, but it may not be needed if the above idea works for me.

ValleyBell wrote:
Your source code mentions the loop modifier, but not the loop base and volume modifier.

I got to adding up to v1.51 items and realized that rebuilding the header was unnecessary, so I have yet to add that stuff. Also, due to time constraints, I still blindly grab values in spite of the variable header size. In time both of these can be fixed, but should not affect the tagging functions since the raw header is simply rewritten.

ValleyBell wrote:
Trying to move the cursor between the tag text boxes with the tab key makes the cursor jump around randomly.

I guess I should fix my TAB order, probably like that on most of my tools ;)


Regarding Drag and Drop, I'll look into that feature. I use it in a lot of the other tools in the application and prefer that method of interaction myself.

The title bar text is that way since I just use the application.config file to display the version info (check it out in the Sourceforge version). Since it's running in Debug mode (Visual Studio), I don't have the values set.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-08, 0:54:06 

Staff Staff
Programmers Programmers
Offline
User avatar

Joined: 2012-04-22, 4:03:45
Posts: 203
Location: New York, NY, USA
oh, and i got a response re drag-n-drop in phoenix apps - doesn't happen, and too much trouble for what it's worth. which means i'll have to put buttons/menu items to load files the normal way.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-08, 6:07:16 

Programmers Programmers
Offline

Joined: 2012-06-04, 5:24:46
Posts: 19
Well, I've added most requests in the thread: Tab order, dynamic header sizes for unknown versions (i.e. 1.70), and drag-n-drop functionality.

BTW: I tested the Super Locomotive v1.70 track and it works well, but it seems like the 1.50 track, "03 Stage Clear" misbehaves when I trimmed the excess header size.

Anyhow, any feedback appreciated, since I had to make some design decisions to support the option of drag-n-drop and/or the type in folder name.

Grab a test copy here.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-08, 7:31:42 

Staff Staff
Private Eyes Private Eyes
Promoters Promoters
Offline
User avatar

Joined: 2012-02-17, 5:54:01
Posts: 204
Location: USA
Awesome! It's working fine for me. Although I'm not sure if this is a bug or not.. With packs with specific song credits of two or more composers, it can be overwritten with just one of them when batch tagging the Game tag, for example.

Is there a way to have the option to blank the artist/ripper/date/system tags out during batch tagging? (Like how track tags do)


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-08, 8:21:42 

Staff Staff
Programmers Programmers
Musicians Musicians
Contributors Contributors
Offline
User avatar

Joined: 2011-12-01, 20:20:07
Posts: 2730
Location: Germany
Ah, you're right - it uses the Loop Modifier (for 4x as much loops), so the header das 0x80 bytes. (The data offset is 0x4C.)
When you now resize the header (in this case from 0x80 to 0x40 bytes), you don't just need to adjust the data offset, but the loop offset as well and that is what went wrong.

If you simply add a dynamic header size for all versions >= 1.50, there should be no more problems.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-10, 5:31:01 

Programmers Programmers
Offline

Joined: 2012-06-04, 5:24:46
Posts: 19
dissident93 wrote:
Is there a way to have the option to blank the artist/ripper/date/system tags out during batch tagging? (Like how track tags do)


I've updated the interface to use checkboxes for all fields to indicate which fields to edit. So, where previously fields would be set to read-only or not, I now use checkboxes. In this way, you can select which tags to edit whether batch tagging or tagging a single file. I'd like to hear feedback, because if it seems positive, I may add the same functionality to the xSF tagger.

Grab a copy here.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-11, 0:03:53 

Staff Staff
Private Eyes Private Eyes
Promoters Promoters
Offline
User avatar

Joined: 2012-02-17, 5:54:01
Posts: 204
Location: USA
Perfect, exactly what I wanted.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-14, 0:07:23 

Contributors Contributors
Offline
User avatar

Joined: 2011-12-13, 17:31:14
Posts: 397
Location: Earth Planet
The exe it self uses NET. framework 3.0/4.0?

_________________
オモいカルチャーをオモチャーと言う - 細野晴臣


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-14, 4:09:27 

Programmers Programmers
Offline

Joined: 2012-06-04, 5:24:46
Posts: 19
Sonic of 8! wrote:
The exe it self uses NET. framework 3.0/4.0?


.NET 2.0 should be enough.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-10-07, 8:30:39 

Contributors Contributors
Artists Artists
Offline
User avatar

Joined: 2012-03-30, 9:28:37
Posts: 182
Location: Hagan, GA, USA
Oh lord. Apparently there's a huge issue with the old version I had. After masstagging Sunset Riders...nothing played. Even causes foo_gep to crash with the resulting files. Here's what came out, but for now I'm going back with the newest version to see if that fixes things.

http://www.mediafire.com/?dcfcfl4d558vh0i


Top
 Profile  
 
 Post subject:
PostPosted: 2012-10-07, 9:09:30 

Staff Staff
Programmers Programmers
Musicians Musicians
Contributors Contributors
Offline
User avatar

Joined: 2011-12-01, 20:20:07
Posts: 2730
Location: Germany
The last version I had, had a few problems with files logged by M1.
The header is a few bytes larger than it needs to be, so it recalculates the loop offset wrong in this case.

Sorry that I didn't report that earlier, but I forgot about it.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 20 posts ]  Go to page 1, 2  Next

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group