semsevens34 downloadsPlay video/audio with synchronized, clickable transcripts. Click any line to seek; playing line auto-highlights.
Play video/audio inside Obsidian with a synchronized, clickable transcript read from a same-named subtitle file next to the media. Click any line to seek; the playing line auto-highlights and scrolls into view.
This is a transcript player, not a transcriber — it does not do speech-to-text. Transcripts are produced by external tools; drop a
.json/.srt/.vttnext to your media and it just works.
.mp4 / .m4a / .mp3 / … and automatically loads a same-named subtitle in the
same folder (.json / .srt / .vtt). If none exists, it shows a hint and does nothing else.0.75×–2× (video and audio).S0 / S1 …) when a JSON transcript has 2+ speakers.BRAT: Add a beta plugin for testing.semsevens/obsidian-media-transcript.Download main.js, manifest.json, and styles.css from the
latest release into
<vault>/.obsidian/plugins/media-transcript/, then enable the plugin.
npm install
npm run build
cp main.js manifest.json styles.css <vault>/.obsidian/plugins/media-transcript/
Place <media-name>.<marker>.{json,srt,vtt} next to the media, e.g. lecture.mp4 →
lecture.whisper.json. JSON follows the Whisper verbose_json shape:
{ "segments": [ { "start": 0.0, "end": 4.2, "text": "…", "speaker": 0 } ] }
[marker] tags when several subtitles exist.If a media extension is already handled by Obsidian core or another plugin, use the Open in Media Transcript file-menu item or the Open current media file in transcript view command to open it in this view.
MIT