Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Audio to Text

geekwanggeekwang63 downloads

Transcribe audio embeds in Obsidian with configurable speech-to-text services.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates6

English | 中文

Audio to Text is an Obsidian plugin that turns referenced audio files into Markdown transcripts. Select an audio reference in a note, choose the transcription command from the editor context menu, and the transcript is inserted below the reference.

Current transcription model

The default model is qwen3-asr-flash-filetrans from Alibaba Cloud Model Studio (DashScope). The plugin submits an asynchronous file-transcription task, polls until it is complete, downloads the timestamped result, and formats it as one-minute sections.

The endpoint, model name, and recognition language are configurable in the plugin settings. The project is designed to support additional hosted providers, local models, and self-hosted gateways in the future, so the plugin name is not tied to one provider.

Features

  • Right-click an audio reference and choose 语音转文本.
  • Optional automatic transcription when an audio reference is typed, pasted, or dropped into a note.
  • Supports Obsidian Wiki embeds and regular Markdown links.
  • Splits the transcript into one-minute sections using returned timestamps.
  • Writes standard Markdown directly below the audio reference.
  • Uploads local audio to Litterbox as a temporary public download URL before submitting the asynchronous task. This also supports recordings larger than 10 MB when the upload service accepts them.
  • Skips a reference when a transcript is already present below it.

Supported references

![[recording.mp3]]
![[folder/meeting.m4a]]
[[recording.wav]]
[Recording](recording.m4a)

Output example

![[meeting.m4a]]

### 语音转文本

**00:00 - 01:00**

Transcript for the first minute.

**01:00 - 02:00**

Transcript for the second minute.
---

ScreenShot_2026-09-01_004218_502.png

The heading and separator follow the plugin's current Markdown output format. Existing transcripts created by older versions remain detectable for compatibility.

Usage

  1. Open Settings → Audio to Text and enter your DashScope API key (or the key required by your configured endpoint).
  2. Confirm the endpoint and model. The defaults are the DashScope transcription endpoint and qwen3-asr-flash-filetrans.
  3. Optionally enter a recognition language such as zh or en; leave it empty for automatic detection.
  4. Set the temporary upload retention period. 24h is recommended for asynchronous jobs.
  5. Enable 自动转文字 if newly inserted audio references should start transcription automatically.
  6. In a Markdown editor, select an audio reference, right-click, and choose 语音转文本. The result is inserted below that reference.

Privacy and security

  • The API key is stored in Obsidian's local plugin data and is not written to source code or console logs. Do not commit plugin data files to a public repository.
  • Before transcription, the local audio is uploaded to Litterbox and passed to the model service as a public download URL. Anyone who obtains that URL may be able to access the file until it expires.
  • Do not upload highly sensitive, regulated, or confidential recordings unless your policies allow this temporary third-party upload.
  • Litterbox retention, file-size limits, availability, and rate limits are controlled by the upload service. The model service has its own audio duration and request limits.

Installation for users

End users do not need Node.js and should not run npm install or npm run build.

After community publication, open Settings → Community plugins in Obsidian, search for Audio to Text, then install and enable it.

Before publication, download the prebuilt main.js and manifest.json from a project Release and place them in:

.obsidian/plugins/audio-to-text/

Reload the plugin from Obsidian's community plugin settings.

For a one-file download, use the Audio-to-Text-<version>.zip asset attached to the same Release. Extract the archive directly into .obsidian/plugins/audio-to-text/ so that main.js and manifest.json are directly inside that folder. Then enable Audio to Text under Settings → Community plugins. The archive is generated automatically whenever a matching version tag is pushed.

Local development

These commands are only for contributors who modify the source or create a development build:

npm install
npm run build

Use watch mode during development:

npm run dev

Copy the generated main.js and manifest.json into the Vault plugin directory to test them in Obsidian.

Project structure

  • main.ts: plugin source.
  • main.js: bundled file loaded by Obsidian.
  • manifest.json: Obsidian plugin manifest.
  • esbuild.config.mjs: production build configuration.

Contributing

Issues and pull requests are welcome. Provider integrations should keep service configuration, upload handling, request adaptation, polling, and result parsing separate. Please include coverage for different audio formats, long recordings, temporary-upload failures, and asynchronous API errors.

Community publication status

The project is being prepared for review as an Obsidian community plugin. Its plugin ID is audio-to-text, which follows the community manifest requirements. Provider coverage, error handling, tests, and release documentation may continue to evolve before publication.

HealthExcellent
ReviewPassed
About
Convert referenced audio files into timestamped Markdown transcripts and insert them directly below the audio reference. Right-click a reference or drop/paste audio to transcribe asynchronously; split output into one-minute sections, support wiki embeds and Markdown links, upload local files to a temporary public URL for large recordings, and skip references that already have transcripts.
AudioAI
Details
Current version
0.4.6
Last updated
3 weeks ago
Created
3 weeks ago
Updates
6 releases
Downloads
63
Compatible with
Obsidian 1.5.0+
Platforms
Desktop, Mobile
License
Apache-2.0
Report bugRequest featureReport plugin
Author
geekwanggeekwangwangminli
GitHubwangminli
  1. Community
  2. Plugins
  3. Audio
  4. Audio to Text

Related plugins

Note Companion

AI-powered note organization and chat. Requires subscription or self-hosting with your own API keys.

Claudian

Embeds Claude Code/Codex and other local Agents as AI collaborators in your vault.

Smart Connections

Find related notes and excerpts while writing. Your AI link building copilot displays relevant content in graph + list view. A local embedding model powers semantic search. Zero setup. No API key.

Fast Note Sync

Real-time sync of your vaults across server, mobile, and web; shareable with anyone; supports REST and MCP integrations to build your personal AI knowledge base.

ChatGPT MD

A seamless integration of ChatGPT, OpenRouter.ai and local LLMs via Ollama into your notes.

Copilot

Run AI agents such as Claude Code, Codex, and OpenCode inside your vault. Turn your second brain into a smart assistant that gets knowledge work done.

Karpathy LLM Wiki

Karpathy's LLM Wiki implementation plugin for Obsidian - turns notes and PDFs into a linked, LLM-powered knowledge base with entity pages, concept pages, graph-powered Q&A, and local-first privacy.

Agent Client

Chat with Claude Code, Codex, Gemini CLI, and more via the Agent Client Protocol — right from your vault.

Text Generator

Generate text content using GPT-3 (OpenAI).

Smart Composer

AI chat with note context, smart writing assistance, and one-click edits for your vault.