by SteveB23 » Mon Oct 06, 2025 4:37 pm
I've finally found the root of the problem with disappearing lyrics. It comes with additional questions, possibly including a change request or two, which I'm not sure how to submit.
Usually, when I'm adding lyrics to a song, I like to listen to the song at the same time, so I can compare the new lyrics to the recording. One option is to start the song before I open the File Properties window, but unfortunately there are no playback controls available once you get there, so if I want to pause the playback or back up, I have to save my work, exit, change the playback to where I want it, and then get back in. That's way too much work. I've resorted to opening up File Explorer in another window, finding the file, and then playing it outside of MMW. My standalone media player of choice is VLC. If I'm doing a whole album, I'll load the whole folder into VLC and then I can skip forward and back whenever I want. What I did not realize until just recently is that VLC apparently places a lock on those files (or at least on the "current" file) while it's playing. If I finish adding the lyrics in MMW and click on OK or Previous or Next while VLC still has that file locked, MMW cannot add or update the lyrics tag in the file. It does at least update the database.
All that makes a lot of sense now that I see what's going on. I understand why some files are successfully updated and some are not. What I don't understand is why MMW doesn't notify me that it was unable to write to the file. Other programs that find themselves unable to complete a write operation (especially if it is simply because of a file lock condition) will typically notify the user of the error and ask if they want to skip it or try again. At least then I would be aware of the problem, plus I would have the opportunity to try to clear the lock and try again.
The error is compounded the next time MMW performs a restart or rescan. When it finds the mismatch between the lyrics in the database and none in the file, IT DELETES THE LYRICS FROM THE DATABASE!!! Forgive me for yelling, but I find this inconceivable! Why would it do that? Again, I don't understand why the choice was made to *not* display a message about the inconsistencies and give me the chance to fix them instead of just tossing all my hard work?
Now, I readily admit that I may be very wrong about this. I really hope that there are some configuration options that I've missed that would prevent these two situations from happening, but I've looked and can't find them. If that's the case, I will gladly apologize and we can all move on.
However, it occurs to me that all of this could be prevented by having some sort of playback controls embedded in the File Properties window, so I could start/stop/reposition the playback without leaving the File Properties window. At a minimum, start/stop/pause buttons and a progress bar where I can move the pointer to anywhere in the song. Beyond that, a pair of "|<<" and ">>|" buttons to move to the previous and next songs would be nice, or perhaps it would be better to add those functions to the existing "Prev" and "Next" buttons so the playback moves along with the visible file properties. Another option would be to have the File Properties window *not* be a child of the main window, so the main window (and the playback controls) would still be active, i.e. not locked out until the File Properties window is closed.
While I'm thinking of it, those same playback controls would be very helpful in the MMA lyrics editor as well. (Actually, the MMA lyrics editor could use a *whole* lot of work, but that's a topic for a whole 'nother post.)
So... how do I turn these into formal feature requests?
- Notify the user when a write operation fails and give them the option to quit or try again
- Notify the user when inconsistencies show up during the file scan, with the option to write missing or updated tags to the file instead of simply deleting them from the database
- Add playback controls to the File Properties window, or provide the functionality in some other way
Thanks!
Steve
I've finally found the root of the problem with disappearing lyrics. It comes with additional questions, possibly including a change request or two, which I'm not sure how to submit.
Usually, when I'm adding lyrics to a song, I like to listen to the song at the same time, so I can compare the new lyrics to the recording. One option is to start the song before I open the File Properties window, but unfortunately there are no playback controls available once you get there, so if I want to pause the playback or back up, I have to save my work, exit, change the playback to where I want it, and then get back in. That's way too much work. I've resorted to opening up File Explorer in another window, finding the file, and then playing it outside of MMW. My standalone media player of choice is VLC. If I'm doing a whole album, I'll load the whole folder into VLC and then I can skip forward and back whenever I want. What I did not realize until just recently is that VLC apparently places a lock on those files (or at least on the "current" file) while it's playing. If I finish adding the lyrics in MMW and click on OK or Previous or Next while VLC still has that file locked, MMW cannot add or update the lyrics tag in the file. It does at least update the database.
All that makes a lot of sense now that I see what's going on. I understand why some files are successfully updated and some are not. What I don't understand is why MMW doesn't notify me that it was unable to write to the file. Other programs that find themselves unable to complete a write operation (especially if it is simply because of a file lock condition) will typically notify the user of the error and ask if they want to skip it or try again. At least then I would be aware of the problem, plus I would have the opportunity to try to clear the lock and try again.
The error is compounded the next time MMW performs a restart or rescan. When it finds the mismatch between the lyrics in the database and none in the file, IT DELETES THE LYRICS FROM THE DATABASE!!! Forgive me for yelling, but I find this inconceivable! Why would it do that? Again, I don't understand why the choice was made to *not* display a message about the inconsistencies and give me the chance to fix them instead of just tossing all my hard work?
Now, I readily admit that I may be very wrong about this. I really hope that there are some configuration options that I've missed that would prevent these two situations from happening, but I've looked and can't find them. If that's the case, I will gladly apologize and we can all move on.
However, it occurs to me that all of this could be prevented by having some sort of playback controls embedded in the File Properties window, so I could start/stop/reposition the playback without leaving the File Properties window. At a minimum, start/stop/pause buttons and a progress bar where I can move the pointer to anywhere in the song. Beyond that, a pair of "|<<" and ">>|" buttons to move to the previous and next songs would be nice, or perhaps it would be better to add those functions to the existing "Prev" and "Next" buttons so the playback moves along with the visible file properties. Another option would be to have the File Properties window *not* be a child of the main window, so the main window (and the playback controls) would still be active, i.e. not locked out until the File Properties window is closed.
While I'm thinking of it, those same playback controls would be very helpful in the MMA lyrics editor as well. (Actually, the MMA lyrics editor could use a *whole* lot of work, but that's a topic for a whole 'nother post.)
So... how do I turn these into formal feature requests?
[list=1][*]Notify the user when a write operation fails and give them the option to quit or try again
[*]Notify the user when inconsistencies show up during the file scan, with the option to write missing or updated tags to the file instead of simply deleting them from the database
[*]Add playback controls to the File Properties window, or provide the functionality in some other way[/list]
Thanks!
Steve