Generating interview transcripts locally using Whisper AI

Here is a process that I have used to generate transcripts for research interviews using locally-installed AI tools. This avoids any concerns about uploading potentially sensitive research data to systems that you don’t control.

I’ve found the quality of these transcripts to be pretty good – there are definitely still some small mistakes, but those are quick to correct on a first pass through the data. It’s also worth noting that the Whisper AI has been trained to eliminate hesitations, so something like “I used, um… I used AI” might just become “I used AI” in the transcript. It also does not identify multiple speakers (e.g., interviewer and interviewee) so that needs to be done separately – again, I’ve found that quick to do on a first pass through the data.

Generate transcripts

1. Install Subtitle Edit: https://www.nikse.dk/subtitleedit

2. In the app, use “Audio to text (Whisper)”:

3. Add your file

4. Choose the model – I recommend “medium.en” for a balance of quality and speed (you will need to download it the first time you use it)

5. Click the “Generate” button to start the transcription.

You get a progress bar, but it is not very informative!. In practice, I have found that when using medium.en, the transcription process takes about the same duration as the recording.

The transcript will be saves as an .srt file alongside the recording.

To tidy up the output:

1. Open the .srt file in Subtitle Edit.

2. Remove the line breaks:

(a) click on “Edit > Multiple replace…”

(b) put a space in the “Replace with” field and “\r\n” in the “Find what” field, to find all line breaks and replace them with nothing:

3. Use “Auto-translate > Merge sentences…” to combine any sentences that have been split across multiple lines into a single line:

4. Save the file as a spreadsheet: “File > Save As > csv2” (I’ve not experimented with all of the different output formats, but I’ve found csv2 works quite well).

Leave a Reply

Your email address will not be published. Required fields are marked *