Skip to content

[✨ FEATURE] Please provide ability to transcribe multiple voice memos all at once (voice memos.app) #219

@fad1

Description

@fad1

Recording with apple watch, which syncs voice memos to mac, it's possible to drag and drop memos as audio files one by one into finder, then into fluidvoice. It'd be great to be able to process them all at once. I used AI to describe the issue after it explored the FluidVoice codebase:


Feature Request: Easier Voice Memos → FluidVoice transcription workflow

Problem

Currently, transcribing Voice Memos recordings in FluidVoice requires a two-step workaround:

  1. Drag a recording from Voice Memos onto Finder (to materialize the file) one by one
  2. Drag the file from Finder into FluidVoice's File Transcription window

Dragging directly from Voice Memos to FluidVoice does nothing — the drop is silently ignored. The Voice Memos right-click Services menu also has no FluidVoice option.

This matters because Voice Memos' built-in transcription doesn't handle non-English languages well, while FluidVoice (via Parakeet/Whisper) handles multilingual audio much better.

Root cause

Voice Memos uses file promises (NSFilePromiseProvider) for drag operations rather than putting a real file URL on the pasteboard. FluidVoice's drop handler only accepts UTType.fileURL, so it never sees the promised file. Finder resolves the promise into an actual .m4a file, which is why the two-step workaround works.

Relevant code: MeetingTranscriptionView.swift line 217:

.onDrop(of: [.fileURL], isTargeted: self.$isDropTargeted) { providers in

Proposed solutions

1. Support file promises in drag & drop

Add NSFilePromiseReceiver handling to the existing drop target. This resolves the promise into a temporary file, then feeds it to the transcription pipeline — fixing direct drag from Voice Memos (and any other app that uses file promises, like Photos, Mail attachments, etc.).

This is the minimal fix for the direct drag & drop issue.

2. Enable batch file selection

The file picker currently sets allowsMultipleSelection: false. Changing this to true and handling the array of URLs would allow navigating to Voice Memos' storage directory and selecting multiple recordings at once for sequential transcription.

Voice Memos stores recordings at:

~/Library/Group Containers/group.com.apple.VoiceMemos.shared/Recordings/

3. "Import from Voice Memos" button (stretch goal)

Since FluidVoice is not sandboxed, it could directly read the Voice Memos storage directory, display a list of recordings with metadata (date, duration), and allow batch selection for transcription — no drag & drop or file picker navigation needed. This would be the ideal UX for bulk transcription.

Why not macOS Services?

Registering an NSServices entry would add "Transcribe with FluidVoice" to right-click → Services menus. However, Voice Memos appears to only expose text-based pasteboard types in its Services context, not file references, so this likely wouldn't help for this specific use case.

Impact

These changes would benefit anyone who records voice memos in non-English languages (or mixed languages) and needs accurate transcription — a common use case that Apple's built-in transcription handles poorly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions