This is an update to my previous post on automating iTunes on macOS to support chorus repetition practice. You can read the original post for the theory behind the idea; but in short, one way of developing prosody and quality pronunciation in a foreign language is to do mass repetitions in chorus with a recording of a native speaker.
Because in macOS 10.15, iTunes is no more, I’ve updated the script to work with the new Music app. It turns out that it’s a lot simpler. No need to dive into the application classes.
-- -- Created by: Alan Duncan -- Created on: 2020-07-04 -- -- Copyright (c) 2020 OjisanSeiuchu -- All Rights Reserved -- use AppleScript version "2.4" -- Yosemite (10.10) or later use scripting additions property trackDuration : 1 property minimumVolume : 10 -- initial volume, set by user global volume0, trackRepeatMode0 on run tell application "Music" -- save original settings set trackRepeatMode0 to song repeat set song repeat to one set volume0 to sound volume play -- calculate the delay between fades set fadeDelay to (trackDuration * 60) / (volume0 - minimumVolume) repeat with i from minimumVolume to volume0 delay fadeDelay set sound volume to sound volume - 1 end repeat pause -- restore original settings set song repeat to trackRepeatMode0 set sound volume to volume0 end tell end run