Use Mac OS X dictation on a file?

Solution 1:

You can install Soundflower. It's a great utility that creates virtual input and output devices. So you could route QuickTime player, for example, as the input for the dictation. http://cycling74.com/soundflower-landing-page/

Solution 2:

On Mavericks, you can use the dictation on an audio file if you use Soundflower plus an audio player which allows you to choose the sound output device, such as Audacity. This way you won't be affected by Mavericks muting the system sound output during dictation, because the output will go into Soundflower before it gets muted, and you set the dictation to receive only from Soundflower. This also has the advantage of other sounds that may occur (such as a reminder notification sound) not causing interference. It will also work better than previous Mac OS X versions because the enhanced dictation in Mavericks (which needs to be enabled first) does not cut off the dictation after 30 seconds.

This webpage provides the details on how to use the Mac OS X 10.9 dictation on an audio file: http://www.leveluplunch.com/blog/2013/12/30/convert-recorded-audio-text-using-osx-dictation-audacity-soundflower/

Solution 3:

In Yosemite, Whenever we try to use the dictation feature in OSX it mutes other sounds and active only the build-in microfone. You need to set some hidden preferences to make this work. Open Terminal and enter the two commands below:

defaults write com.apple.SpeechRecognitionCore AllowAudioDucking -bool NO

defaults write com.apple.speech.recognition.AppleSpeechRecognition.prefs DictationIMAllowAudioDucking -bool NO

After doing this turn off dictation in Systems Preferences, wait a few seconds and then re-enable it. You should now be able to dictate while audio is playing. I’ve only tried this while using a headset/headphones, it’s probably not advisable without. :)

To restore your system to it’s virginal state, run these commands in Terminal and then restart dictation:

defaults delete com.apple.SpeechRecognitionCore AllowAudioDucking

defaults delete com.apple.speech.recognition.AppleSpeechRecognition.prefs DictationIMAllowAudioDucking

Solution 4:

As of Catalina/Big Sur, the built-in Dictation feature will no longer accept audio from any virtual microphone or system outputted audio. Oddly it often seems to ignore the microphone selected in dictation preferences and just using a different one.

But there's a solution! Just use the Voice Control feature instead of the dictation feature. This happens all offline so the quality is somewhat worse and it's not as consistent as the Dictation feature. This post touches on that topic: https://machow2.com/dictate-offline-catalina/

Reading between the lines, it seems like Apple is trying to prevent their fancy cloud-based speech to text service from being use for automated transcription... Similar to how built in macOS text-to-speech functionality (say) refuses won't output using the high quality Siri voices.