MB tools / utilities

If there is any interest, I have running on my local intranet an iTunes artwork puller and the EAC disc ID tool for lookup and submit to MB. I am making some revisions to the code again and am willing to post this public access. I Could also host any other scripts that those at MB here use. I would likely post at thwaller.com/mb.

If there is any interest, let me know. I would be happy to help provide access to things to make the job easier, and take any suggestions on improvements as it helps all.

8 Likes

I know this is an old topic, but as it is mine, I an resurrecting. I am finally going to publish these tools online. I had a need and I was on a different system, so I had no intranet. If I could kindly ask… while my initial post will be crude, do any of the other contributors have additions to the page? I will post back later today, with a link to where this is.

5 Likes

So I finally have this almost ready, starting with only a working EAC TOC tool, which many have used before. If anyone has anything to add, please ler me know so I can incorporate it. I will be adding the iTunes artwork puller and artist/release/recording searcher next, but the code I have for this needs some additional work.

I will have the code on GitHub, https://github.com/thwaller/musicbrainz. Feel free to post there with comments, fixes, additions, etc.

2 Likes

This is great, and I see it is also hosted on Github pages :slight_smile:

I have been finally looking into adding EAC log file format support for disc lookups in Picard. Now you also support XLD log files, and according to the code the TOC entry is structured similar there. So my existing code might already work with XLD as well. But I am not familiar with XLD and can’t easily test it myself. Do you have details on this, maybe a XLD log file you can share?

1 Like

I am glad that we both finally got to starting around the same time, maybe we can help each other in the testing and workings. Yes, it is on GitHub and hosted on GitHub Pages. I found that to be the best option. This is not for me really, it is more to help the community as a whole. While all of the tools I am adding are hosted elsewhere, there is nothing consolidated that the community can participate in. That is in reference to changes and additions to the utilities.

I am in the same position as you, but a bit worse I believe. I am running Fedora mostly now, with a dual boot of Ubuntu. So I cannot use either EAC or XLD unless I use Wine for EAC in which case I lose trust in the application due to Wine. However, I do have a sample XLD file to share. I have not yet tested that portion of it, I just did the EAC test run a few hours ago. What is the best way to provide the XLD file?

1 Like

I can t least run EAC on a Windows 10 VM :slight_smile: Although giving direct access to the CD drive has sometimes been a bit problematic, but the last time I did that it worked. I need to check, maybe I can also get CD ripping working on macOS. I have an older mac mini, but last time I tried it had some trouble with the external CD drive I used :frowning:

You could send it to me at ph dot wolfer at gmail dot com. Or maybe share it on https://gist.github.com or something similar.

2 Likes

Thanks a lot for the example file. In addition I was able to get my mac mini attached to a CD drive and use XLD there successfully :slight_smile: And I also found out that searching for XLD log files gives you plenty of online results.

In case it helps you, I have my code changes for Picard at https://github.com/metabrainz/picard/pull/2048 . There are also two example log files included. But the code for parsing was taken from existing code, and essentially it is exactly the same as yours.

Actually I’m really glad you submitted your tool. Implementing this CD log parsing functionality in 2022 kind of made me feel like I’m too late to the party. But even if someone thinks this is true, at least I did not arrive alone :smiley:

3 Likes

I have started adding the iTunes Artwork portion, but I have a bit to go. The core of it is PHP, which GitHub Pages does not serve, static only. So I am either going to host the PHP portion remotely (not ideal) or convert the PHP into JavaScript (not fun).

It would be great to also have such things in Picard, although it sort of diminishes the reasons for this page. However, there are always going to be users that do not use Picard, so offering options to users is great.

I would like to also address ISRCs and AcoustIDs, but that would come next.

The iTunes artwork part sort of works, if you want to have a look. It is not pretty, just looking at function right now. I Am unsure if I want to keep all the other stuff in there… it is all artwork though, just many areas aside from music included. Maybe I just make music the first one and default. Not sure yet.

1 Like

If I could ask, do the tools meet a need, provide a benefit? I am ok with a commitment of retaining hosting of the tools, so I want to ensure they work and are providing value to the MB community. As pointed out, the content is primarily on GitHub as public, however since GitHub Pages does not support PHP I need to use external service, which is hosted at Oracle. My effort is to keep all open and transparent, welcoming any and all contributions from others. The core of the tools are not my creation, I have only modified them and hosted them.

This effort is to help others in the MB community, so I am happy to include anything others find useful.

Do any users find this page / tools useful? I am happy to add more, but currently there is only what I have added. I am considering moving to DB driven (MySQL or MariaDB), but no sense if there is no interest of users.

I am happy to link to tools from others, like user scripts and such, but I want to focus on more server side functionality when ever possible. Meanwhile, I will just continue to change to suit my needs, but I am happy to make things better by suiting the needs and wants of others.

For those that understand, everything is LAMP, although some is hosted on GitHub Pages, which does not support LAMP, just static. I get around this by posting the dynamic code on GitHub and hosting it elsewhere.