Interlude: Ensembling!

Hi everyone! As you might remember, our last post was the end of a series of entries meant to summarize everything that had happened in instrument-land so far. So now that catching up is done, here’s what has happened lately!

This post is rather large, so if you only read one thing about instruments today, make it our new guide for requesting instruments! (More details about this in the last section below.)
Continue reading “Interlude: Ensembling!”

Picard 2.1.2 released

Picard 2.1.2 includes just few changes over Picard 2.1.0, but fixes some annoying bugs, so it is recommended to upgrade:

Bug

  • [PICARD-1382] – macOS packaging script ignores all errors
  • [PICARD-1451] – Redirects of authenticated requests fail with 401 error
  • [PICARD-1454] – Crashes when adding action to toolbar in options

Task

Improvement

  • [PICARD-1450] – Fix language label for zh_CN and zh_TW

As usual, packages will be available from Picard website and from GitHub release pages

Bugs can be reported on Picard bug tracker.

Picard 2.1 release

MusicBrainz Picard 2.1 is finally here. This version includes a lot of fixes and improvements over previous stable version (2.0.4). It is recommended to upgrade of course.

Most notably, it includes following changes:

  • support for MusicBrainz genres
  • new convenient script functions: $title and $delete
  • new command line option (-P, --no-plugins) allowing to skip plugin loading, which may help when a plugin is crashing Picard at start and to identify if an issue is due to a plugin or the main program
  • improve tags support, better compatibility with other applications, wider range of audio files supported
  • better stability and performance

I’d like to thank all developers, translators, testers and users who contributed to this version, kudos to Philip Wolfer (phw).

Binary packages from OSx and Windows are available from Picard Github releases page and from Picard website.

Here is the complete change log:

  • [PICARD-105] – Picard won’t load non-album tracks from fingerprints
  • [PICARD-421] – Releases in private collections are not shown as being in them
  • [PICARD-518] – Sliders without labels in “Options – Metadata – Preferred Releases”
  • [PICARD-637] – $matchedtracks is broken
  • [PICARD-875] – AIFF does not support any of the compatid3 tags
  • [PICARD-949] – Track can be placed in the incorrect spot on the release after using Scan
  • [PICARD-1013] – False file save error in specific circumstances
  • [PICARD-1060] – Collections menu not displayed correctly anymore
  • [PICARD-1112] – Cannot save tags that were previously deleted from file
  • [PICARD-1133] – Plugins list doesn’t load automatically after setting proxy
  • [PICARD-1162] – Solo vocals are tagged wrong
  • [PICARD-1219] – Picard creating empty ID3 TIPL / TMCL / IPLS frames
  • [PICARD-1245] – Set field “Grouping” doesn’t work as expected
  • [PICARD-1275] – After uninstalling a plugin Picard needs to be restarted for it to be reinstalled
  • [PICARD-1281] – Picard has wrong version string on macOS
  • [PICARD-1320] – Black text on a dark theme
  • [PICARD-1332] – Deleted tags for matched files stay deleted
  • [PICARD-1336] – MP4 reports “bpm” as unsupported tag
  • [PICARD-1339] – Removing unclustered files can be very slow
  • [PICARD-1340] – File info doesn’t display Mono / Stereo in Channels field anymore
  • [PICARD-1341] – Cluster track order misinterprets disc/track numbers
  • [PICARD-1346] – Move additional files fails if multiple patterns match
  • [PICARD-1348] – Keyboard shortcuts broken due to localization
  • [PICARD-1350] – Drag and drop on cover image box does not always work as expected
  • [PICARD-1355] – Setting or unsetting album for non-album tracks does not work
  • [PICARD-1359] – Crash with tagger integration when using DuckDuckGo Privacy Essentials
  • [PICARD-1364] – picard.exe has no version tag
  • [PICARD-1368] – Info messages are not shown on logging level Info
  • [PICARD-1369] – Crash on Python 3.7.0 opening URLs
  • [PICARD-1370] – Windows installer to add “Quick Launch” icon no longer supported on Win10
  • [PICARD-1371] – Windows installer does not warn when installing on 32 bit system
  • [PICARD-1373] – Source distributions are unusable
  • [PICARD-1374] – Picard crashes while typing a regular expression in some cases
  • [PICARD-1375] – Metadata sanitation before move-script execution fails
  • [PICARD-1376] – Error saving Ape files with tag marked for deletion that does not exist
  • [PICARD-1381] – Test results depend on execution order of tests
  • [PICARD-1397] – Do not save tags marked as unsupported
  • [PICARD-1398] – Snap package is missing locale files
  • [PICARD-1405] – Pasting formatted text into scripting window shows formatting
  • [PICARD-1410] – Loading Vorbis file with invalid rating value fails
  • [PICARD-1412] – Deleting tag counts not as important metadata change
  • [PICARD-1414] – Image errors lead to crash in info dialog
  • [PICARD-1415] – Open Containing Folder and Open with MusicPlayer does nothing for UNC paths
  • [PICARD-1418] – Display localized default dialogs and keyboard shortcut hints
  • [PICARD-1420] – Can not save wma file. TypeError: sequence item 0
  • [PICARD-1428] – Removing tags which are only in original file metadata not possible
  • [PICARD-1430] – “Authentication required” dialog does not trigger authentication
  • [PICARD-1431] – Some ID3 frames gets deleted even if the corresponding tags are shown as unchanged
  • [PICARD-1434] – Tag acoustid_id can not be removed or deleted in script
  • [PICARD-1436] – Text extraction of “title” and “label” for translation.
  • [PICARD-1437] – After reload file is being shown as changed
  • [PICARD-1438] – Message box buttons Yes/No aren’t translated
  • [PICARD-1439] – Newline character in cover art naming script causes exception on saving

New Feature

  • [PICARD-490] – Allow tagging AAC/ADTS files with APEv2 tags
  • [PICARD-1043] – Support reading & writing iTunes Classical tags
  • [PICARD-1045] – Check for new version
  • [PICARD-1268] – Support concertmaster recording relationships as performer:concertmaster
  • [PICARD-1273] – Add an option to exclude new cover art type “Raw / Unedited”
  • [PICARD-1319] – Provide cover art metadata to cover image naming script
  • [PICARD-1344] – Add $delete function
  • [PICARD-1352] – Add a command-line option to skip plugin loading
  • [PICARD-1354] – Allow using vocals and instruments as credited
  • [PICARD-1367] – Allow opening searches in browser when using search dialogs
  • [PICARD-1384] – Add AppStream data
  • [PICARD-1386] – Add $title function
  • [PICARD-1395] – Support genres from MusicBrainz
  • [PICARD-1440] – Support loading and renaming Standard MIDI Files (SMF)

Task

  • [PICARD-1333] – Run CI tests agaist oldest supported mutagen
  • [PICARD-1347] – Refactor script.py to avoid code duplication
  • [PICARD-1365] – Allow building with PyQt 5.11 or later
  • [PICARD-1442] – Support new Audio Play secondary type

Sub-task

  • [PICARD-1407] – Save originalalbum / originalartist to ASF/WMA
  • [PICARD-1408] – Save originalalbum / originalartist to APE

Improvement

  • [PICARD-664] – When dragging a recording, show the actual file name instead of the path
  • [PICARD-792] – Package a start menu tile for Windows 10 on the windows version
  • [PICARD-1039] – Use forward delete instead of delete button on macOS
  • [PICARD-1049] – Picard should use TXXX:WORK rather than TXXX:Work
  • [PICARD-1068] – Picard should use MP4 ©wrk for Work rather than generic text field
  • [PICARD-1244] – Refresh list of plugins after uninstalling or installing a local plugin
  • [PICARD-1285] – There is no Close menu item in Picard 2.0 on macOS
  • [PICARD-1313] – Refactor plugin UI
  • [PICARD-1325] – Allow disabling new version update checking for packagers
  • [PICARD-1338] – Picard should be more resilient if it gets invalid responses from servers
  • [PICARD-1358] – Use macOS style widgets in the user interface of the macOS version of Picard
  • [PICARD-1363] – AcoustId submission for matched files is impossible when musicbrainz_recordingid is unset
  • [PICARD-1366] – Show Python version in about
  • [PICARD-1379] – Port astrcmp to new Python C Unicode API
  • [PICARD-1383] – Use MCN / barcode read from disc to improve DiscId lookup
  • [PICARD-1393] – Change the application ID
  • [PICARD-1416] – Should store ID3 Artists field as TXXX:ARTISTS not TXXX:Artists
  • [PICARD-1417] – Only show plugins with compatible API version
  • [PICARD-1424] – Translate AppStream data
  • [PICARD-1425] – Support all movement tags for APE, Vorbis and MP3
  • [PICARD-1426] – Map musicbrainz_originalalbumid and musicbrainz_originalartistid to MP4 and WMA
  • [PICARD-1443] – Sort secondary release types in UI alphabetically

Picard 2.1.0dev2 release

Picard team is working hard on the upcoming 2.1.0 version, we decided to release a preliminary version for all to test and to let time for translators to work.

We’ll accept patches that actually fix current features until the final release which is planned in 2 weeks.

Translators can update translations on transifex as usual, strings shouldn’t change (but if we can’t avoid it) anymore until the final release.
It should be noted a new resource picard_appstream was added for the translation of appdata.xml file (PICARD-1424).

This version includes a lot of fixes related mostly to features added in 2.0.x, plus new features related to MusicBrainz changes (like genres support), tag compatibility with other apps, and file formats.

Here is the change log:

Sub-task

  • [PICARD-1407] – Save originalalbum / originalartist to ASF/WMA
  • [PICARD-1408] – Save originalalbum / originalartist to APE

Bug

  • [PICARD-105] – Picard won’t load non-album tracks from fingerprints
  • [PICARD-421] – Releases in private collections are not shown as being in them
  • [PICARD-518] – Sliders without labels in “Options – Metadata – Preferred Releases”
  • [PICARD-637] – $matchedtracks is broken
  • [PICARD-875] – AIFF does not support any of the compatid3 tags
  • [PICARD-949] – Track can be placed in the incorrect spot on the release after using Scan
  • [PICARD-1013] – False file save error in specific circumstances
  • [PICARD-1060] – Collections menu not displayed correctly anymore
  • [PICARD-1112] – Cannot save tags that were previously deleted from file
  • [PICARD-1133] – Plugins list doesn’t load automatically after setting proxy
  • [PICARD-1162] – Solo vocals are tagged wrong
  • [PICARD-1219] – Picard creating empty ID3 TIPL / TMCL / IPLS frames
  • [PICARD-1245] – Set field “Grouping” doesn’t work as expected
  • [PICARD-1275] – After uninstalling a plugin Picard needs to be restarted for it to be reinstalled
  • [PICARD-1281] – Picard has wrong version string on macOS
  • [PICARD-1320] – Black text on a dark theme
  • [PICARD-1332] – Deleted tags for matched files stay deleted
  • [PICARD-1336] – MP4 reports “bpm” as unsupported tag
  • [PICARD-1339] – Removing unclustered files can be very slow
  • [PICARD-1340] – File info doesn’t display Mono / Stereo in Channels field anymore
  • [PICARD-1341] – Cluster track order misinterprets disc/track numbers
  • [PICARD-1346] – Move additional files fails if multiple patterns match
  • [PICARD-1348] – Keyboard shortcuts broken due to localization
  • [PICARD-1350] – Drag and drop on cover image box does not always work as expected
  • [PICARD-1355] – Setting or unsetting album for non-album tracks does not work
  • [PICARD-1359] – Crash with tagger integration when using DuckDuckGo Privacy Essentials
  • [PICARD-1364] – picard.exe has no version tag
  • [PICARD-1368] – Info messages are not shown on logging level Info
  • [PICARD-1369] – Crash on Python 3.7.0 opening URLs
  • [PICARD-1370] – Windows installer to add “Quick Launch” icon no longer supported on Win10
  • [PICARD-1371] – Windows installer does not warn when installing on 32 bit system
  • [PICARD-1373] – Source distributions are unusable
  • [PICARD-1374] – Picard crashes while typing a regular expression in some cases
  • [PICARD-1375] – Metadata sanitation before move-script execution fails
  • [PICARD-1376] – Error saving Ape files with tag marked for deletion that does not exist
  • [PICARD-1381] – Test results depend on execution order of tests
  • [PICARD-1397] – Do not save tags marked as unsupported
  • [PICARD-1398] – Snap package is missing locale files
  • [PICARD-1405] – Pasting formatted text into scripting window shows formatting
  • [PICARD-1410] – Loading Vorbis file with invalid rating value fails
  • [PICARD-1412] – Deleting tag counts not as important metadata change
  • [PICARD-1414] – Image errors lead to crash in info dialog
  • [PICARD-1415] – Open Containing Folder and Open with MusicPlayer does nothing for UNC paths
  • [PICARD-1418] – Display localized default dialogs and keyboard shortcut hints
  • [PICARD-1420] – Can not save wma file. TypeError: sequence item 0
  • [PICARD-1428] – Removing tags which are only in original file metadata not possible
  • [PICARD-1430] – “Authentication required” dialog does not trigger authentication
  • [PICARD-1431] – Some ID3 frames gets deleted even if the corresponding tags are shown as unchanged

New Feature

  • [PICARD-1043] – Support reading & writing iTunes Classical tags
  • [PICARD-1045] – Check for new version
  • [PICARD-1268] – Support concertmaster recording relationships as performer:concertmaster
  • [PICARD-1273] – Add an option to exclude new cover art type “Raw / Unedited”
  • [PICARD-1319] – Provide cover art metadata to cover image naming script
  • [PICARD-1344] – Add $delete function
  • [PICARD-1352] – Add a command-line option to skip plugin loading
  • [PICARD-1354] – Allow using vocals and instruments as credited
  • [PICARD-1367] – Allow opening searches in browser when using search dialogs
  • [PICARD-1384] – Add AppStream data
  • [PICARD-1386] – Add $title function
  • [PICARD-1395] – Support genres from MusicBrainz

Task

  • [PICARD-1333] – Run CI tests against oldest supported mutagen
  • [PICARD-1347] – Refactor script.py to avoid code duplication
  • [PICARD-1365] – Allow building with PyQt 5.11 or later

Improvement

  • [PICARD-664] – When dragging a recording, show the actual file name instead of the path
  • [PICARD-792] – Package a start menu tile for Windows 10 on the windows version
  • [PICARD-1039] – Use forward delete instead of delete button on macOS
  • [PICARD-1049] – Picard should use TXXX:WORK rather than TXXX:Work
  • [PICARD-1068] – Picard should use MP4 ©wrk for Work rather than generic text field
  • [PICARD-1244] – Refresh list of plugins after uninstalling or installing a local plugin
  • [PICARD-1285] – There is no Close menu item in Picard 2.0 on macOS
  • [PICARD-1313] – Refactor plugin UI
  • [PICARD-1325] – Allow disabling new version update checking for packagers
  • [PICARD-1338] – Picard should be more resilient if it gets invalid responses from servers
  • [PICARD-1358] – Use macOS style widgets in the user interface of the macOS version of Picard
  • [PICARD-1363] – AcoustId submission for matched files is impossible when musicbrainz_recordingid is unset
  • [PICARD-1366] – Show Python version in about
  • [PICARD-1379] – Port astrcmp to new Python C Unicode API
  • [PICARD-1383] – Use MCN / barcode read from disc to improve DiscId lookup
  • [PICARD-1393] – Change the application ID
  • [PICARD-1416] – Should store ID3 Artists field as TXXX:ARTISTS not TXXX:Artists
  • [PICARD-1417] – Only show plugins with compatible API version
  • [PICARD-1424] – Translate AppStream data
  • [PICARD-1425] – Support all movement tags for APE, Vorbis and MP3
  • [PICARD-1426] – Map musicbrainz_originalalbumid and musicbrainz_originalartistid to MP4 and WMA

Philip Wolfer (outsidecontext/phw) did (again) a fantastic job on this release. Thanks also to Mineo and all contributors, bug reporters, testers, translators and, of course, users !

We’ll update Picard website soon, in the meantime you can download OSX and Windows packages on GitHub release page.

How five Queen songs went mainstream in totally different ways

Making graphs is easy. Making intuitive, easy-to-understand graphs? It’s harder than most people think. At the Rochester Institute of Technology, the ISTE-260 (Designing the User Experience) course teaches the language of design to IT students. For an introductory exercise in the class, students are tasked to visualize any set of data they desire. Students David Kim, Jathan Anandham, Justin W. Flory, and Scott Tinker used the MusicBrainz database to look at how five different Queen songs went mainstream in different ways. Continue reading “How five Queen songs went mainstream in totally different ways”

Instruments part five: Let’s get serious & GCI

At the end of the last version I was getting into the groove—and feeling determined.
I had managed to vittle down the instrument backlog to half! I though surely I could do even better! Let’s start digging into the meat of things and, get serious.

Now we were going to do things seriously, so therefore this was a pretty big version!
It’s called:

Let’s get serious!

I started by looking into a few issues during autumn:

However right in the middle of this version came GCI!
I was part of the contest as a mentor this year (for the first time) so naturally I had some instrument tasks ready for our participants. They were pretty popular, with a lot of tickets being added or improved by the participants. So, this is how serious we got for GCI:

After GCI we still had quite a bit of seriousness left:

The majority of these where done during autumn ’17 and the first half of ’18. The whole thing would have been finished in the summer, hadn’t May, June and July ’18 been the hottest summer ever! I just couldn’t think, so I took a break until August and then I finished dealing with the last few stragglers.

This version ended up including 58 tickets: the largest to date!
What happens now? Well, at the end of the “Let’s get serious” version I noticed some issues with families and the like, but that’s a topic for the next blog post!


It’d been almost 2 years since I started, and I’ve managed to get quite a lot done! Here is a graph that illustrates the progress (notice the the jump in added tickets during GCI period, when the participants actually added them faster than I could close them!):
progress graph

And with this we have finally caught up! So hopefully all future blogs from now on will be posted soon after the relevant versions are released.

Instruments, part four: After Summer Special and loose ends

After 2-ish months of summer vacation I decided to do an “After Summer Special” (name as a reference to After School Specials)

By the end of summer I had been working hard… on Debussy instead of instruments! Oops!

Once September arrived I realised that I needed to get things back in order, so I set about finishing this version:

Bug

  • [INST-545] – Reverse parentage of classical/acoustic guitars

New Feature

Improvement

  • [INST-430] – akete is missing proper description (along with some improvements)
  • [INST-477] – table steel guitar alias
  • [INST-501] – Please add a couple of Dutch aliases to bullroarer
  • [INST-518] – rebec relations
  • [INST-554] – Improvements to hardingfele aliases
  • [INST-583] – add aliases to handclaps

——–

I also decided to close the tambouras (strings) version, as after much delay there wasn’t really much progress on it. I had started work on these way back in January, adding the Tamburica instruments (see Instruments part two).
However, by the time ASP came to an end it had became clear to me that I had to move on from dwelling on this, to feel like there was progress and avoid burning out.

Now, after over half the INST tickets have been closed, I had a bit more experience and I could finally finish work on this + some random stragglers left over from the “next” version.

Anyway, after all that, I decided that the thing we needed to do, was to, Get Serious

Picard 2.0.4 released

This is a minor release that fixes a lot of issues, most notably few annoying crashes and a bunch of audio file formats-specific bugs.

I’d like to thank Philip Wolfer (outsidecontext/phw) for the fantastic job he did on this release.

As usual, you can find the latest downloads on Picard’s Website.

Here is the complete changelog for this release:

Bug

  • [PICARD-803] – tagging “8½ Minutes” with “replace with non-ascii characters” results in a directory being created
  • [PICARD-1216] – Does not display version information
  • [PICARD-1267] – 2.0.0dev6 crash in debug mode on Windows April Update (1803)
  • [PICARD-1281] – Picard has wrong version string
  • [PICARD-1294] – Crashes every time Picard connects to MB server.
  • [PICARD-1310] – Picard crashes on clearing log
  • [PICARD-1318] – RuntimeError: dictionary changed size during iteration
  • [PICARD-1321] – CD drive selection not working on Linux
  • [PICARD-1322] – Crash in options on “Restore defaults”
  • [PICARD-1323] – Restore defaults does not restore CAA types
  • [PICARD-1324] – Default locale not working reliable
  • [PICARD-1326] – Picard Save Changes 5.1 Mix Type
  • [PICARD-1327] – Loading TAK files fails
  • [PICARD-1328] – Loading OptimFROG files fails
  • [PICARD-1329] – Picard fails saving ID3 tags with iTunNORM tag
  • [PICARD-1331] – Picard crashes on error during plugin install

 

Instruments part three: The “next” branch and Even Moar Taonga pūoro

It’s time for Instruments again!
Now that I was allowed to create fix versions I set about creating such fix versions! (And also, retroactively (re)creating previous batches where these seemed logical.) This also meant creating JIRA Tickets for instruments I had already added without tickets, like the Taonga pūoro instruments.

By now, I was also starting to see the limits of the relationships between instruments we already had, so I was already thinking about what relationships could be added to improve the way we link things. As such, I created a topic to discuss some ideas I had (Reader beware! This is an early and now outdated idea-thread! (More on this in a later post!))

However, reosarevok added two more helpful link types: Artist created and Label (company) invented instrument.

next: 2017 March to May

Bug

  • [INST-442] – Alias of three-hole pipe has erroneous end date
  • [INST-465] – Typos in names, descriptions and aliases of concertinas

New Feature

Task

  • [INST-451] – Confusion in n'goni/ngɔni instruments
    • [INST-452] – Fix ngɔni relationship to banjo and picture
    • [INST-409] – Doussn'Gouni
    • [INST-453] – Fix donso ngɔni description and its relationship to kamalen ngɔni (and add relationships as improvement)
    • [INST-133] – Kamale n'goni
    • [INST-454] – Fix kamalen ngɔni description, check invention relationship (and add relationships as improvement)
    • [INST-450] – jeli ngɔni
  • [INST-476] – Conclusion of the n'goni/ngɔni instruments

Improvement

  • [INST-125] – add alias to zither (was: Harpeleik)
  • [INST-379] – Add aliases to the Melodica instrument
  • [INST-398] – add aliases to three hole pipe (was Flauta de 3 agujeros)
  • [INST-438] – Missing search hint aliases for sax instruments
  • [INST-441] – Typos in descriptions of pipe and tabor
  • [INST-443] – Add aliases to three-hole pipe and tabor

Quite a lot of tickets!

Eventually I came to recreating the Taonga pūoro tickets (previously I just added the ones in the Wikipedia page). It became clear to me that this was huge task and deserved it’s own version:

Taonga puortwo: 2017 May 9th to 25th

Updates

After this I was a bit tired and summer was finally here, so I decided to Go On Summer Vacation… so hold on for the fourth part!

Picard 2.0.3 released: Crash-fixes and scripting improvements

This is a minor release that fixes a lot of crashes and unicode errors on certain platforms. It also reverts a scripting improvement (PICARD-259) which had caused a couple of scripting bugs (PICARD-1207). Scripting now works exactly like Picard 1.4.

As usual, you can find the latest downloads on Picard’s Website.

The change-log is as follows –

Release Notes – Picard – Version 2.0.3

Bug

  • [PICARD-1122] – Preferred release type settings are exclusive and should be inclusive
  • [PICARD-1207] – Move additional files feature fails when source directory contains non-ascii characters
  • [PICARD-1247] – Not all “preserved” tags are preserved
  • [PICARD-1305] – Search dialog crashes picard when record doesn’t have an album
  • [PICARD-1306] – picard crashes when opening the options dialog if the cwd doesn’t exist

New Feature

  • [PICARD-1289] – Allow manually running any tagger script

Improvement

  • [PICARD-1292] – MusicBrainz Picard 2.01 64-bit for windows installs to “C:\Program Files (x86)” by default
  • [PICARD-1302] – Dropping an image from Google image crashes picard
  • [PICARD-1303] – picard crashes when matching a cluster with a release with no tracks
  • [PICARD-1304] – Info dialog for album crashes because track doesn’t have a tracknumber

Regression

  • [PICARD-259] – Make file-specific variables available to tagger script

 

samj1912 out o/