Recently I was testing a service I was working on as a keyboard only user with my screen turned off and fell into a dreaded keyboard trap.
The need arose to demo the problem to my team. I am not a huge fan of live demos so I wanted to do a screen recording of the problem as not being the most proficient VoiceOver on Safari user I felt it to be a safer, more productive way to show the problem.
Initially I thought that QuickTime would be able to do what I needed to so I fired it up and began recording with VoiceOver on. In QuickTime, go to "File" then "New Screen Recording" then enable VoiceOver with cmd + F5.
Upon testing my first recording I realised I couldn't hear VoiceOver, there was no audio recording. After a brief hunt around for an answer I realised that QuickTime didn't exactly work as I was expecting. There is no in built audio recording capability in QuickTime.
The solution: Soundflower
Luckily I found a solution in the form of Soundflower. This little gem of software enables you to direct the audio internally on your Mac. Before installing you need to make sure that you read the instructions first as you have to allow the application to be installed via "System Preferences" and "Security & Privacy".
Once Soundflower is installed you will need to make sure that the output speaker is set to the same source as the "Microphone" in the screen recording settings.
Firstly set the output device
Set the output device to "Soundflower (2ch)"
Next set the microphone in QuickTime
Back over in QuickTime, set the microphone to "Soundflower (2ch)" to match the output device of the system. This forces the Mac to use an internal source for the audio in the screen recording. Unfortunately this means you can't hear the audio when recording your screen.
Although not perfect Soundflower did the job and I was able to record VoiceOver. Turns out I didn't need to demo the issue after all but I didn't want to lose the effort put into getting it working so I hope this helps you.
Flower power 🌸
The solution in this article was tested on macOS High Sierra 10.13.6.