Program to allow Printing of Songs

Great idea. Shame it doesn’t run on a Mac.

2 Likes

Works awesome. Thank you very much.

Enhancement ? perhaps filter on "RocK’.

New Version !! (@BeatBuddy_Support take note - since you were interested in the prior version)

I’d like to thank everyone for the positive feed back on my program. I’m glad it’s useful fellow musicians. As such, I’ve made an update. Basically the update gives you the ability to print certain song folders or print songs that use a particular drum set (rather than all items). So, basically, as requested (@Reathpd), choose Rock and all songs with Rock as the drum set will be exported.

Operation is pretty much the same as before, but if you only want certain song folders to print - first - press the ‘Populate Song Folders’ button and then select the folder or folders (Control Select) you want. Then, in the Selection - Part B area - choose ‘Folders Selected’ and then use the Process button.

For songs that use a particular drum set, first - press the ‘Populate Drum Sets’ button and then select the drum set or sets (Control Select) you want. Then, in the Selection - Part B area - choose ‘Drums Selected’ and then use the Process button.

Processing using the selection of certain song folders or drumsets will run slightly slower than a normal processing, so be a little patient. For me - the original process would take maybe 3 seconds for 900 songs. Doing a selection if might run 8 seconds for example. The program will tell you when processing is done.

Output, as before can go to a text file, csv, or my fav - html…

This works with the current BB Manager - it ‘may’ not with future ones if they change the structure of the layout in more than a cursory manner.

As always, make sure you have a backup of your BB Manager workspace. Here is a new screen shot of the program - output format is as shown before (unless of course you limit the selection).

If you downloaded the first version - you can download the new version to a new folder (or delete the original folder) - extract it and run the file ASW_BB_BeatsRecap.exe. You’ll still get the message explained earlier because it’s been downloaded from the internet. I think it just occurs once.

The download link is the same (but I’m listing it again) - it’s actually in the same folder as the first link. I’ve left the first version in there for now - this one - the zip file has the suffix V2.

I doubt I’ll do anything else on this unless there’s some problem with it. Shoot me a message letting me know how it’s working for you if you get a chance. Nice to hear it’s being put to use.

Joe

Here is the link and you want the _V2 zip file - https://www.dropbox.com/sh/9jpmkwmaeuu7zek/AADb-hnXvV4yK0uyotv78pbEa?dl=0

Folder(s) Selection

Drum Selection

Drum Selection output

4 Likes

Brilliant, thanks!

Terrific tool. Thank you.

Peter

Works very well. Thank you

Peter

Will check it out, thank you! :slight_smile:

Hi Joe_southern

Thank you, your program works great
(not sure why the BBM programmers decided to hide project files though)

Could you add another function to also show which MIDI files each song uses?
I think that info is stored in the .BBS files & not the .csv files

That would be very useful for folks that have 100s of songs & make changes/improvements to a particular “beat” & would like to have that change in all songs that use it (without combing thru their songs, looking to see which songs use it)

Great work!

New Version - Version 3

New for this version is the ability to include the MIDI file name in the output as requested by @Kevin_Morris. It was a bit of a challenge (: I hope it’s kind of what you were looking for as an update. I’m only reading the BB files and not doing any updates to them.

Selecting this option will include the embedded MIDI file name in your output. The file name inside the file includes the directory path of the person that originally added it so it may not be relevant to you. You can select to only include the file name and not the path if you want.

Further, it uses / vs \ for directories. You can choose to have your output display it in windows format if you’d like. Again this only affects output and not your BB files.

Here is a screen shot of the new version. The file uses the same link already posted but I’m posting it again. Just choose the _V3 zip file.

As I indicated before, I probably won’t make any other updates unless there is some issue. And again fellow users, let me know how it’s going and working for you.

Joe

1 Like

Joe_southern

Wow…that was fast & exactly what I was looking for!!!
I hope BB users find this feature useful

However, the program displays some extra “characters” in the MIDI file list
Because I have 100s of songs, this occurs often.
Here’s an example for song 14…

  1. I Should Have Known Better -(Metal)
    ROCK Boom Boom Tick 1.mid
    NULL OUTTRO.mid
    Count - Fast 4 x Stick.mid


    �a

    $o
    *:

    *

A smaller issue is that the order of MIDI files is inconsistent & should always be as follows
1 - “Intro Fill” MIDI
2 - “Main Loop” MIDI, “Drum Fill” MIDI, “Transition Fill” MIDI, “Accent Hit” MIDI (there may be multiples of this)
3 - “Outtro Fill” MIDI

I thank you very much for doing this Joe
This will be a great help to me & has made using my BeatBuddy easier!
Kevin

New Version - Version 4

@Kevin_Morris found where a few errant characters were being displayed when you included MIDI file info in the output. Good eyes.

I didn’t see this in my output originally, but after your input, Kevin, yeah, I see it too. Maybe not as prevalent in mine, but there for sure.

When you first asked on this (doing the midi at all) I looked a bit and then I was like - umm… impossible (: Then after two Doobie’s … Doobie Brother’s records, I thought well, maybe ha ha.

I don’t have access to the BB file layouts etc and so I’ve had to guess through all this. The midi stuff is buried deep in the binary files. Anyway, the issue is in recognizing the flag that there aren’t any more midi files listed. That’s where the run on characters come in.

I’ve changed the logic and you’ll have to tell me if that fixed it. It did on the limited ones I had here. The thing to watch though, Kevin, is make sure it’s not now dropping some midi files as in for example - the song has 4 midi files and now the output has only 2 listed. That didn’t occur on mine, but in testing just kind of watch that.

I did have one file ( a downloaded one) that gives a slight glitch and that I think was due to an apostrophe in the original file name. He seems like a one off (out of 1084 songs) and I don’t have enough info to track down or large enough sample base to see how that one occurred originally. Generally a bad idea to include apostrophe’s etc in some file names. I’m not positive that’s why but the song’s title lent itself to an apostrophe (:

As far as the order of them - this is the order in the BB file. As I said, I don’t have a roadmap of their binary files so I’m not sure how to figure out what order they go in. I’m not positive I can do anything about that part ): I’ll listen to a few more records, but…

The Download link is the same - just download the _V4 zip file.

Hi Joe

Thanks again!

That fixed 99% of the extra characters…it’s much, much better!

There were only 18 songs with extra stuff out of 1123 songs!

It also did not miss any MIDI files but all my songs only have 3 per song…I don’t do any fills etc

That BBM bug that certain characters in the song title cause problems has bit me a couple of times…ending up in losing all the songs in that folder after that song

I am more careful now…

Very impressive that you were able to parse the BBS files & produce the results when you don’t know their structure

The MIDI file order thing is not really important

Singular should hire you to clean up their BeatBuddy Manager

There was another thing & it’s no big deal either

There is a Program Error/Crash if you don’t point it right to the “SONGS” folder

Below is the text…

************** Exception Text **************

System.IO.FileNotFoundException: Could not find file ‘C:\Users\Kevin\Documents\BBWorkspace\user_lib\K&D BeatBuddy June2019 - Project\Config.csv’.

File name: ‘C:\Users\Kevin\Documents\BBWorkspace\user_lib\K&D BeatBuddy June2019 - Project\Config.csv’

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)

at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath,
Boolean checkHost)

at System.IO.FileStream…ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)

at System.IO.StreamReader…ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)

at System.IO.StreamReader…ctor(String path)

at ASW_BB_BeatsRecap.frmMain.cmdProcess_Click(Object sender, EventArgs e)

at System.Windows.Forms.Control.OnClick(EventArgs e)

at System.Windows.Forms.Button.OnClick(EventArgs e)

at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

at System.Windows.Forms.Control.WndProc(Message& m)

at System.Windows.Forms.ButtonBase.WndProc(Message& m)

at System.Windows.Forms.Button.WndProc(Message& m)

at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************

mscorlib

Assembly Version: 4.0.0.0

Win32 Version: 4.8.4069.0 built by: NET48REL1LAST_B

CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll

Great Kevin. Glad that pretty much took care of it. I’ll trap the issue next release for if someone doesn’t pick the SONGS folder - yep currently instant punishment! Ha ha.

I too experienced that BBM bug you spoke of years ago. Yeah, oops.

Long ago, when dinosaur’s ruled the Earth, I would convert large dissimilar accounting systems often residing in systems as far apart in every aspect as possible. Documentation would be nearly non existent. So I often had to be super creative to do those kind of conversions. Things are easier now - for example, we have the light bulb… ha ha.

Kevin, if you’d like to send DM me the .bbs file for one or two of the 18 songs that still glitched, I’ll be happy to look at them. I don’t need anything else. Not sure I can’t improve it but we’ll see.

Joe

Hi Joe

Attached is a ZIP of the SONG Folder with the BBS files & your program output for that particular folder that shows the 3 songs with the extra characters

5B6905F0.zip (28.5 KB)

(Sorry, I wasn’t sure how to DM you in this forum)
Kevin

New Version - Version 5 - Choose “ASW_BB_BeatsRecap_V5.zip” from the download link.

Kevin - that was very helpful. I think the changes I just made should hopefully fix the errant characters in those files. I ran it against the ones you sent and it fixed them. There seem to be multiple termination flags for the midi file names. Let’s see how this does.

I also made it required to use the SONGS folder. Thank you very much for your help.

Good Morning Joe

VERSION 5 appears to have fixed everything
There were no more extra characters in my 1123 songs & the MIDI list seemed complete

Well done!
Now…if we could only get you to work on the BBM software too!

Kevin - that’s awesome! Thanks so much for your diligence in testing it. I wouldn’t have been able to get it cleaned up or even provide that as another feature of my program without your help and sample. I hope that enhancement is helpful to you and other BB users.

To recap -

Version 1 - this allowed for printing your entire Song list (exporting to html, text or csv format)

Version 2 - this version optionally allows you to include the drum set in your output. It also allowed for the selection of one or more song folders for output (vs all of them) or songs that include one or more drumsets that you select. (Harder to explain than use …)

Version 3 & 4 - initial implementation of option allowing you to include the song’s midi file info in output. This proved to be more challenging…

Version 5 - you can choose to optionally include midi file info in your output. You can also use this together with song folder selection or drumset selection.

Keep on Rocking in the Free World fellow BB users. I’ll post the link again to make it easier to find.

Joe

5 Likes

Thanks. This is great!! Functionality that you think would be standard with BB Manager.
Appreciate this since I used to have take screen shots of my lists.

I have been trying your program out. Awesome!!
One other thing that would complete this functionality(at least for me)…to know which part of the song each midi part was associated with. i.e intro, main, fill, transition.