Closed jacobtylerwalls closed 2 years ago
Agree about QTP7. I can attest that when I was on that team at Apple, we caused QuickTime Player 7 to no longer work at all (after a long period of “deprecation”).
And the modern QuickTime Player (not 7) doesn’t play MIDI at all.
I don’t have an educated opinion about which player to use instead for MIDI. Garage Band seems reasonable.
Greg
On Dec 3, 2021, at 2:55 PM, Jacob Walls @.***> wrote:
We should consider changing the default MIDI player on Macs from Quicktime Player 7 to Garage Band.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/cuthbertLab/music21/issues/1180, or unsubscribe https://github.com/notifications/unsubscribe-auth/AR6X47EDGA36OGG4JPZ3CIDUPFDGXANCNFSM5JKZFB7A.
Ah -- that's something Mac people are likely to have. For myself, I use the third-party APPlayMIDI.
Would love to know about the decision to not have MIDI in the latest QTPlayers. I just know that Apple had the worst support for professional composers at the same time they had Esa-Pekka Salonen as a spokesperson for Apple.
Ready for some history?
This is actually not directly about the apps themselves, but about the underlying frameworks: QuickTime.framework (the old framework that no longer exists) vs AVFoundation.framework (the new frameworks that replaced it).
30-ish years ago, QuickTime.framework added support for MIDI in a round-about way, by converting MIDI files on the fly into a track in a .mov file whose media type was called QuickTime Music (this predates me, I don’t know why they did this…). If you opened a MIDI-containing karaoke file, QuickTime.framework would create a movie containing a QuickTime Music track and a Subtitle track. And you could then paste in a Video track or two if you like, too, and maybe an Audio track or three. QuickTime Music (converted from MIDI) was just another thing you could put in a .mov file.
Fun fact: one of the things I did early in my career at Apple was to port this MIDI-to-QuickTimeMusic conversion code from the Mac (which had always been big-endian at that time: 68K and PPC) to Windows (little-endian: Intel). Endianness issues were everywhere, because MIDI files are full of non-integer-sized (and variable sized) bit-fields.
15-ish years ago, when we started writing the AVFoundation framework (originally for the first iPhone), it was decided that many things that QuickTime did (Sprite tracks! QuickTime Music tracks! Nested movie tracks! QuickTime VR tracks!) were not going to be supported. We even bailed on support for a bunch of video codecs (anyone remember Cinepak? Road Pizza?). We cared a LOT about not abandoning people’s media files so we wrote a “modernizer” that would read those files using QuickTime, and would write new modern files using AVFoundation, to get your video media up-to-date, and QuickTimePlayer would offer to do this if you opened a no-longer-supported file. The “modernization” period (where QuickTime and AVFoundation both existed in macOS, and were both used by QuickTimePlayer) was several years.
But MIDI files weren’t being abandoned at all, just no longer supported by our A/V frameworks (CoreMIDI/CoreAudio frameworks were, and still are, your friend for this), so it didn’t really make sense to offer to “modernize” people’s MIDI files! No-one would want that.
To complete the story of the apps (as of a few years ago), QuickTimePlayer no longer uses QuickTime.framework because it isn’t there (which means any video modernization now has to happen on old versions of macOS). And QuickTimePlayer7 (which shipped separately for a while, because people really liked it as a simple movie editing tool) doesn’t work anymore because it requires QuickTime.framework.
There you have it. MIDI support in QuickTimePlayer (such as it was, as a side-effect of QuickTime.framework’s “I can convert MIDI to my own weird format that no-one uses” feature) is gone, for strange and twisty historical reasons.
Greg
On Dec 17, 2021, at 12:03 AM, Michael Scott Cuthbert @.***> wrote:
Ah -- that's something Mac people are likely to have. For myself, I use the third-party APPlayMIDI.
Would love to know about the decision to not have MIDI in the latest QTPlayers.
— Reply to this email directly, view it on GitHub https://github.com/cuthbertLab/music21/issues/1180#issuecomment-996514485, or unsubscribe https://github.com/notifications/unsubscribe-auth/AR6X47HCPMJFWCMPXYTTBU3URLVFTANCNFSM5JKZFB7A. You are receiving this because you commented.
Fascinating story @gregchapman-dev ! Wow!
We should consider changing the default MIDI player on Macs from Quicktime Player 7 to Garage Band.