Home

sk8logic > Music Player

Version History

prev   up
Version Date Notes
1.0.0 11/29/19

Initial release

1.0.1 12/16/19

When the app is first launched, if no music file(s) have been opened, it will display the dialog for selecting files, exactly as if you had chosen the Open... command in the File menu.

The same applies when the app becomes active again later: If no music file(s) are currently open, it will display the Open dialog.

This behavior is in keeping with Apple’s Human Interface Guidelines. Apps should not open with a blank screen, just sitting there waiting for you to figure out what to do.

1.0.2 2/13/20

Version 1.0.1 introduced a complication that escaped my notice until now. An Open dialog was being displayed in some circumstances when it was unnecessary and inappropriate — a definite annoyance.

1.1.1 8/29/20

Fixes a problem computing the waveform for AIFF files with 8 or 24 bits per sample, rather than the typical 16.

Also includes preparation for the upcoming Big Sur release and for Macs with Apple Silicon:

  1. Compatibility with the current Big Sur developer beta is excellent. The app should be fully ready for the public release this Fall.
  2. I have started building the app as a "universal binary" — that is, including native code for both Intel and Apple Silicon. However, compatibility can not be confirmed until those new machines start shipping near the end of 2020.
1.1.2 8/31/20

The app now checks periodically in the background for new releases. If a new version is available, it will display an alert window to inform you. Click the “Visit App Website” button in this window to open your web browser and go directly to the page where you can learn more about the new release and download it when you’re ready. If you prefer to wait, click the “Remind Me...” button instead.

You can also perform the check manually by choosing the “Check for App Update” command in the application menu. When you do this, the app will tell you explicitly whether the version you’re running is up to date, a new version is available, or perhaps that you’re running a pre-release copy.

1.1.3 9/4/20

The user interaction with regard to update checking has been revised a bit. As I worked on adding this capability to all my apps, I discovered a number of improvements I could make. All of the apps have the same behavior.

Also in the application menu is a “Visit App Website” command. Choose this to visit the app website at any time.

1.1.4 9/12/20

Implements a new scheme for managing waveform computations — now using code shared by all of my apps that deal with music. This includes the capability to perform multiple computations at once. It also prioritizes the computation for the music in the frontmost window, moving it to the head of the queue so it will be processed as soon as possible.

1.1.5

11/19/20

The app has been rebuilt with the final release of Apple’s developer tools for Big Sur.

The transition to Apple Silicon has gone incredibly smoothly. All of my apps are “Universal” — built to run natively on both Intel and Apple Silicon Macs.

1.1.6

11/20/20

A small improvement to the Visit App Website command to better handle any changes to the URL for the target page.

1.1.7 12/26/20

Fixed an bug in the check for app updates. In the case where this check failed because there was no internet connection, a re-try was being attempted a few seconds later rather than waiting 10 minutes as intended. This error had no visible effect, but caused the computer to perform unnecessary work in the background.

2.0.0 1/1/21

Significant upgrade. In addition to the ability to open audio files in individual windows, the app now supports playlist windows for playing multiple tracks in sequence.

Visit the Basics page for instructions on using this new capability.

2.1.0 1/8/21

Playlists are now saved as documents. Visit the Basics page for instructions on using this new capability.

2.2.0 1/12/21

Adds another capability borrowed from my competition app. The tracks in a playlist can now be “trimmed” by placing markers at the points where you want the playback to start and end. This is totally non-destructive, telling the app how you want the track played, but without altering the audio file in any way. Use this capability, for example, to remove any silence at the beginning or end of the track.

You can now also drag and drop from one playlist to another to copy a track. This makes a copy of the file in the target playlist.

This version also fixes a few minor bugs and improves the behavior of the app small ways such as remembering window positions of your playlists and individual audio files.

2.2.1 1/13/21

Fixes a serious bug which prevented importing files in some circumstances, particularly from a different volume.

2.2.2 2/6/21

Improves the behavior of the split view in the main window. This includes both when dragging the column divider and when resizing the window.

2.2.3 11/27/21

Proactively applies changes to avoid a potential crash on Quit problem that has been seen in various apps from time to time. The problem is that quitting an app causes closing of all windows and teardown of all data structures, but this process requires multiple steps and can result in consequences such as notifications that are executed in an undefined (i.e. unpredictable) order. That has the potential to trigger updates to views in the middle of the process — using data that has already been partially torn down. The solution is to mark every view with a boolean value "isClosing" before starting the Quit operation, and then to suppress any updates if the view is so marked. Many views already had this protective logic, but I have made the effort now to make sure it is implemented in all views in all windows.

2.2.34 2/4/22

Fixes a bug which prevented opening music files with extensions which used upper case characters, such as "MP3", rather than the more common "mp3".

3.0.0 7/28/22

A significant upgrade.

The main window now has two tabs (Documents and Recent Audio Files), rather than displaying the. two in side by side columns.

The Recent Audio Files tab gives you the choice of manually ordering the files or listing them in order of most recently opened first. And you can now set a maximum for the number of recent files the app will remember. The choices are in multiples of 10.

The Documents tab now lists documents (with the extension .mpdoc for Music Player Document). The big change is that each document can contain multiple playlists — as many playlists as you want.

If you have any existing .playlist files, open them one at a time. They will each be converted to an .mpdoc document with a single default playlist.

When you open a document, it will be shown its own window. Use the controls at the bottom of the window to add or remove playlists as needed. Rearrange their order by drag and dorp within the list. With a playlist selected, add, remove, and reorder the audio files in the playlist. You can also add music files by dragging them from Finder to the playlist, including multiple files at one time.

Another way to quickly add a playlist is to drag a folder to the left hand column (the list of playlists). This will add a playlist with the same name as the folder, filled with all of audio files from within that folder. This is non-recursive, meaning it only looks for audio files within the folder itself, not within any subfolders.

Once you've got the hang of this, try dragging several folders at once. The same process is repeated for each folder, creating multiple playlists in a single action.

3.0.2 8/4/22

Fixes a bug which caused unwanted changes to the manual order of links to documents and recent files when those links were reopened.

A few other minor behavioral improvements such as verifying that a playlist name is not empty in the editing sheet.

Visual improvements such as more consistency in the display of file extensions when that option is chosen. In a playlist, the extension is now displayed in a column of its own, separate from the title of the track.

3.0.3 8/5/22

Fixes a regression which broke copying an audio file from one document to another using drag and drop. The problem was that I was adding the file to the document but not to any playlist. This now works as intended.

Adds the capability to move an audio file from one playlist to another within the same document. Drag the file from its current playlist to a destination playlist in the left column.

Adds the capability to export an audio file in a playlist. Right-click a file and then choose a destination.

Adds an "Are you sure?" warning dialog if you try to delete a playlist that is not empty.

3.0.4 9/9/22

Not distributed.

3.0.5 10/21/22

Fixes a problem with drag and drop that was common to all of my apps. The fix was simple, but required many changes scattered throughout the apps.

3.0.6 4/5/23

Apple recently released a new version of Xcode with two changes that impact nearly all of my apps. The changes I'm making in response are not immediately essential, but I prefer to keep up with the latest from Apple. It pays off in the long run.

1. The original method for creating keyed archive files has been replaced with an approach that is more secure. The old method is now deprecated. I have in recent years replaced most of my keyed archive files with binary files of my own design. All of my document storage is now binary, but there are still a few keyed archive files remaining — mostly for things like saving user preferences and settings. I am systematically going through all of the apps and converting these keyed archives to property lists. This is an alternative way to store data structured as "dictionaries". Making this switch avoids the issues with keyed archives, but is also simpler and more compact, so it's a worthwhile improvement.

2. When running under the debugger, Apple now generates warning messages to the console regarding windows that are opened while the application is not active. I typically open one or more windows when the system tells my application that it has completed launching, but this occurs just before the app is first activated. So I am now moving my code to open the initial window(s) to this later point in the sequence.

3.0.7 7/30/23

This version was built with Xcode 15.0 (beta) and the SDK for macOS 14.0 Sonoma. Building for and testing with Sonoma betas will help flush out any compatibility issues before that release goes out in the fall. I've already encountered and fixed some issues.

3.0.8 9/14/23

Fixes a minor issue in the window for playing an individual audio file. The waveform now scales vertically when the window height is adjusted.

The app runs with no known issues in the Sonoma Release Candidate.

3.0.9 9/28/23

The previous version scaled the waveform view vertically in the window for an individual audio file, but I missed adjusting the position of the time labels below it. Increasing the height of the window caused the waveform view to cover them.