Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - boroda

Pages: 1 23 4 ... 278
Plugins / Re: Additional Tagging & Reporting Tools
« on: May 22, 2024, 10:46:06 AM »
new release of the version 8.1
it's the last release for MB 3.5 (except for possible bug fixes). further plugin versions will be built for MB 3.6+.

* some bug fixes and improvements related to LR
* case changing functions are now the following (note that the order of parameters has been changed!):


$SentenceCase2(string,sentence_separators) : where sentence_separators is the list of characters after which the words will become capitalized. Characters in sentence_separators list may be separated by spaces or not separated at all. For example, these two character lists mean the same: ". , -" and ".,-". Dot followed by space is always treated as sentence separator






$TitleCase5(string,lower_case_words,word_separators,lower_case_between_chars_opening_list,lower_case_between_chars_closing_list,lower_case_after_chars) : where lower_case_words is the list of words separated by spaces, which will become lowercase (always except for the first word and except for the last words if not lowercase by other parameters); word_separators is the list of characters after which the words will be capitalized. lower_case_between_chars_opening_list and lower_case_between_chars_closing_list are the lists of characters between which the words become lowercase. The number of characters in both lists must be the same, the opening and closing characters are paired by their position in the lists (the lists may be, e.g. "( [ {" and ") ] }"). lower_case_after_chars consists of a list of characters, after which the words become lowercase (e.g. ' for something like "Someone's"). The first word will always be capitalized. It’s recommended to enclose the last four lists into quotes (e.g. "& . -"). Characters in all character lists may be separated by spaces or not separated at all. For example, these two character lists mean the same: ". , -" and ".,-". You can omit any parameter except for the first one: use a single character ` not surrounded by spaces to pass empty parameter. You can safely use character ` in its literal meaning if it’s typed in the list along with other characters. To use the single character ` in its literal meaning (not as omitted parameter) type "\`", and to use the single character \ in its literal meaning type "\\"


Plugins / Re: Skip Over Song
« on: May 22, 2024, 08:11:25 AM »
To the matter in hand, I executed all your instructions but in the last step, after entering a time stamp in Tags(2) in 'Edit',
Nothing happens.
Used these formats to enter a skip to one minute in the song:

but when playing it doesn't skip.

i never used this plugin, but try to enter simply 00:01 for 1 min.

as for the Settings in Edit, in Start Time field, I can enter a value for each individua song and it works but when choosing multiple songs, in the Start Time field  it says "[Empty]" and I can't enter a time stamp.
I also need to check again how it can be done in Mp3Tag, seems I don't see a way for that in there now...

start/end time is stored in MB database only. you can't edit these MB track settings in Mp3Tag.

MusicBee Wishlist / Re: Buttons with scripts in MB language
« on: May 22, 2024, 07:35:50 AM »
ASR of tag tools plugin has \@eval[[virtual tag expression]] function (it can be used in "replace by" fields only). you can define one or more ASR presets, which use only one step to search for ^(.*) in given tag and replace by e.g. \@eval[[\@1]], where \@1 means <custom text 1>. also, you can assign hotkey/toolbar button to any ASR preset to quickly apply it to selected tracks. you must refer searched tag as $1 in <custom text 1>.

Plugins / Re: Additional Tagging & Reporting Tools
« on: May 20, 2024, 02:15:53 PM »
new version:

* various UI/UX bug fixes (mostly related to LR, but not only)
+ some UI/UX improvements, e.g. now you can use up/down/page up/page down keys in opened combo box dropdown lists
* code refactoring and cleanup


Steven has partially implemented my request for extending the syntax of custom function (only for MB 3.6), so i'll replace five $TitleCase#() functions by one function $TitleCase() soon (there will be two plugin versions for MB 3.5 and MB 3.6). you will be able to omit any number of end parameters simply by putting closing parenthesis earlier, e.g.:


the only solution i have now for omitting parameters in the middle of $TitleCase() function is to put some character in parameter, which will hardly be used in tags, e.g. @ or `

P.S. i can add support for some special character for "empty parameter", and special "escape sequence" to pass this character to the plugin.

Questions / Re: ripping a CD
« on: May 05, 2024, 10:30:41 AM »
What would be the most convenient time to call you?
I'm asking because forum members that might be able to help you will be living in time zones all over the world, and they won't want to wake you up in the middle of night.


Plugins / Re: Additional Tagging & Reporting Tools
« on: May 03, 2024, 04:47:31 PM »
could you post the right casing for these titles?
I think they should be like this:

Act I: A Gentleman's Honor (vocal)
Merry Christmas Mr.Lawrence - Theme - (live)
It Better End Soon: 3rd Movement (guitar solo)
Chalk Dust - The Umpire Strikes Back
1st of tha Month (K&D Session™)

That's probably also how they are on MusicBrainz where I most likely got these titles from.

new "release" build of the version 8.1:

* some bug fixes

- the option "execute ticked presets after every # of tag changes" has been removed from LR (because it has become almost useless after implementing dynamically updated LR function results caching in custom tags).

+ new "change case" command option "don't change case of the words between symbols" (in addition to existing option "don't change case of the words after symbols"). the number of opening and closing symbols must be the same, they are paired by their position in the lists.

+ new virtual tag function:

$TitleCase5(string, lowercase_words, word_separators, lowercase_words_after_symbols, lowercase_words_between_symbols_opening_list, lowercase_words_between_symbols_closing_list)

you selected the wrong preset. see its name and description. the preset you selected is named: TITLE (ARTIST). you need the preset for that selected track: ARTIST - TITLE


i see from your screenshot that you haven't installed the new preset (see download link to updated presets above). the required preset is missing in preset list.

Questions / Re: Recently Played
« on: April 30, 2024, 07:10:52 PM »

Questions / Re: Questions about loudness normalisation
« on: April 30, 2024, 07:06:08 PM »
replaygain is written to tags (2 tags: track replaygain & album replaygain) for mp3 files. track replaygain normalizes the volume of the entire track to maximum level, but still to avoid clipping. album replaygain does the same for the entire album. "smart replaygain" is not calculated or written to tag. it's just MB option to dynamically switch between track and album replaygains depending on how you are listening to the music: by albums or shuffled.

Plugins / Re: Additional Tagging & Reporting Tools
« on: April 30, 2024, 01:57:19 PM »
I think they should be like this:

Act I: A Gentleman's Honor (vocal)
Merry Christmas Mr.Lawrence - Theme - (live)
It Better End Soon: 3rd Movement (guitar solo)
Chalk Dust - The Umpire Strikes Back
1st of tha Month (K&D Session™)

for the first 4 the rules seem obvious (thought #3 not supported at this time), but #5? what to do with it? if only #1-#3 ("vocal", "live" and "guitar solo", but not "K&D Session", to define as "lower case words")?

btw. #4 is not a problem even now, and even if you define "-" in "lower case words after characters" list. because "-" is surrounded by spaces.

Plugins / Re: Additional Tagging & Reporting Tools
« on: April 30, 2024, 10:30:53 AM »
Wishlist suggestion/enhancement...

Make the ASR drop-downs selection accessible via typing the first letter of the tag. For example, <Tag 1> drop-down field is currently populated with "Comment" and I want to change it to "Title." Using the drop-down I have to scroll from "C" to "T". It would be nice to be able to type "T" with the drop-down dropped down and have it go to the first tag starting with the letter "T."

Thanks for considering.

if i correctly understood you, then not skinned combo boxed always supported searching for first letter on typing. i've added support to the skinned combo boxes (to read-only combo boxes only, when you actually can't type text). this is a bit extended support. if the combo box can't find an item begging with typed letter, then it searches for items begging with symbol (e.g. "<"), and having the typed letter as the second character.

Plugins / Re: Additional Tagging & Reporting Tools
« on: April 30, 2024, 06:54:12 AM »
The five other examples I presented later are probably better to test things though. They are actual titles, each with one or two realistic challenges:

Quote from: hiccup
act I: a gentleman's honor (vocal)
merry christmas mr.lawrence - theme - (live)
it better end soon - 3rd movement (guitar solo) (live)
chalk dust - the umpire strikes back
1st of tha month (k&d session™)

my english is too poor for such challenges. could you post the right casing for these titles?

Plugins / Re: Additional Tagging & Reporting Tools
« on: April 30, 2024, 05:24:00 AM »
Using AT&RT v8.1.8885.8927 I select a track and open ASR  via a toolbar button and this error gets thrown. But not every time I try. Clicking "OK" doesn't close the error window. Clicking "OK" a second time does. But at that point the all the toolbar button is inactive, As are all other toolbar buttons. I close MB via the X and restart and it runs and I can use ASR again. But at some point withing the next five minutes, it errors again.

MusicBee v3.6.8884.15285P  (Win10.0), 29 Apr 2024 6:48:

System.ArgumentException: Parameter is not valid.
   at System.Drawing.Image.get_FrameDimensionsList()
   at System.Drawing.ImageAnimator.CanAnimate(Image image)
   at System.Drawing.ImageAnimator.ImageInfo..ctor(Image image)
   at System.Drawing.ImageAnimator.Animate(Image image, EventHandler onFrameChangedHandler)
   at System.Windows.Forms.PictureBox.Animate(Boolean animate)
   at System.Windows.Forms.PictureBox.Animate()
   at System.Windows.Forms.PictureBox.InstallNewImage(Image value, ImageInstallationType installationType)
   at System.Windows.Forms.PictureBox.set_Image(Image value)
   at MusicBeePlugin.AdvancedSearchAndReplace.initializeForm()
   at MusicBeePlugin.PluginWindowTemplate.PluginWindowTemplate_Load(Object sender, EventArgs e)
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

@phred, try to use this version for a while. it's debug version, the error messages will be more detailed, they will contain the line number in the code where the exception is thrown:

@phred, i'm not able to reproduce this bug, but i've made some tweaks which could fix it. re-download debug version from the same link if you've already downloaded it.

Plugins / Re: Additional Tagging & Reporting Tools
« on: April 30, 2024, 12:03:11 AM »
@boroda, have you considered having only one $TitleCase function instead of 4 versions?
One that can use any or all of the three parameters?
Maybe have it mandatory for the formula to always contain three comma's, where it is optional for the user to put parameters in any of the three positions?


So a basic version would look like:
$TitleCase(<Title>,a an and,,)

and something like:
would also work?
(pretty useless, but to show what I mean)

this is what i've tried to make initially. but it turned out that this is not supported by MB for custom functions. though, i'm sure, MB supports this internally. at least .NET allows this style of coding. i can't make this without Steven's support. we've pm'ed each other about adding support for this style to MB, but i'm still waiting for his answer. at least the answer "i won't do this".


sorry, i actually meant this style of code:


as for this style:

$TitleCase(<Title>,a an and,,)

it should be very easy for Steven to add support for this. all custom function parameters have type "string". MB could just pass empty strings as literally empty strings to the plugin.

Plugins / Re: Additional Tagging & Reporting Tools
« on: April 29, 2024, 11:57:09 PM »
I'm gonna wait a little while before adding these functions to the Tips&Tricks topic.
This needs some more testing (and bug-hunting?), and карбоск will help me to come up with some good English sentence/title examples for each of the 4 functions.

Here's a challenge for you guys:

Take this title:

an all-in-one, forty-two bar r&b vs. neo-progressive rock medley: a journey (uma viagem) (moby remix)
And have it turn out like this:

An All-in-One, Forty-Two bar R&B vs. Neo-progressive Rock Medley: A Journey (Uma Viagem) (Moby remix)

In case it is helpful, this is a list of words I have assembled for Lower_case_words:

a an and as at but by for if in nor of off on or per so the to up via vs. yet album alternate demo edit extended live mono re-remix remix single stereo version
There may be more that should be in it?

spoiler alert, I think this may be impossible at the moment.
E.g. it looks like the function should not be capitalising the last word when it is at the end, but between round brackets.
Not sure, maybe have some rules that only affect anything that is between round brackets?

Have fun!

ohh, no, hiccup! isn't it too complicated?  ;)

Pages: 1 23 4 ... 278