Media Library & Media Note
How media notes link your Obsidian notes to media files, and how the media library organizes them
A media note is an Obsidian note that links to a piece of media: a local video, an audio file, a YouTube video, or a URL. The media library collects these notes into a browsable Obsidian Bases view where you can search, sort, and filter them.
What a media note is
A media note is a regular markdown file with frontmatter pointing at a media source. The plugin creates these when you first interact with a piece of media, like taking a timestamp on a video or importing a URL. You don't need to create them by hand.
Each media note lives in a dedicated folder (media-lib by default, configurable in settings). The frontmatter contains a unique identifier (mx-uid) and a source field:
---
mx-uid: abc123def456
media: "[[lecture.mp4]]"
title: Introduction to Machine Learning
duration: "45:12"
creator: Prof. Smith
cover: "[[lecture-cover.jpg]]"
---For remote media, the source field stores a URL instead of a wiki-link:
---
mx-uid: xyz789ghi012
video: "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
title: Never Gonna Give You Up
---The source field name tells you the media type: media for general files, video for video URLs, audio for audio URLs. Only one source field appears per note. For vault files the value is a wiki-link like "[[lecture.mp4]]". For remote media it's a plain URL.
The frontmatter is what the plugin reads and writes. The body of the note is yours for annotations, timestamps, links to other notes, whatever you want.
Auto-populated metadata
When the plugin creates a media note, it reads metadata from the source and fills in the frontmatter. What you get depends on the source.
For local files, the plugin probes embedded tags. An MP3 with ID3 tags gives you title, artist, album, and duration. A video file gives you duration and dimensions.
For YouTube, you get title, creator, description, duration, cover image (thumbnail), published date, view count, like count, and tags. This works for both YouTube embeds and videos opened in the web viewer.
Other hosted services (Bilibili, Coursera) provide similar fields where available.
Metadata is written once when the note is created. To refresh it later (say, after a video title changes), run Update metadata from the player menu or command palette. This re-fetches from the source and overwrites existing values, including any manual edits. If you want to tweak fields by hand without re-fetching, use Edit media metadata instead, which opens an interactive editor.
The media library
The media library is every note in your vault that has a mx-uid property. It's not a particular view or panel. It's the set of media you've decided to track.
Anything that creates a media note adds to the library. You can add media from several places: the library view's toolbar (web URLs, local files, drag-and-drop), the Add media note to library command on any open player, auto-import that watches your vault for new files, the Obsidian Web Clipper integration for clipping YouTube videos from a browser, or a bulk import of existing media files. They all produce the same thing: a media note in the library folder with metadata filled in.
Media library Bases view
The plugin ships a Bases view for browsing the library. Open it from the ribbon button or the Open media library command.
The view adds a few media-specific behaviors on top of standard Bases:
- It reads the
coverfield from each media note. Wiki-links like[[cover.jpg]]resolve from your vault; URLs load directly. When neither is set, the view falls back to cover art extracted from the media itself (album art, YouTube thumbnails) and cached locally. - Titles come from the note's
titleproperty. When that's missing, the view computes a fallback from the media source (filename, video title, URL). - Standard Bases features (search, sort, filter, column layout, checkbox toggles, property formulas) all work normally. See the Obsidian Bases documentation for details.
The layout persists across sessions. You can configure which property drives the cover image and subtitle columns through the view options.
The media library organizes references to media you want to keep track of. The web viewer is for browsing and watching content live. They serve different purposes and work well together: browse in the web viewer, then add what you want to keep to the library.
Media quick switcher
The media quick switcher is a search dialog for finding and opening media. Open it from the ribbon's play button or the Open media quick switcher command.
It searches across four sources at once:
- Library: all media notes in your library
- Vault files: local media files in your vault, whether or not they have a media note
- Recent: media you played recently, including sites visited through the web viewer
- URLs: type or paste a URL directly
Start typing to filter results. The switcher uses fuzzy matching, so partial words and abbreviations work.
| Shortcut | Action |
|---|---|
Enter | Open media in the current pane |
Ctrl / Cmd+Enter | Open in a new tab |
Ctrl / Cmd+Alt+Enter | Open in a vertical split |
Shift+Enter | Open the media note for editing |
When you open a URL from the switcher and later add it to the library, the history entry merges into the library record. You see one entry per media, not two.
Frontmatter fields for media notes
The plugin manages most frontmatter fields for you, but knowing the schema helps if you want to create media notes by hand, query them with Dataview, or build templates.
Identity
| Field | Type | Description |
|---|---|---|
mx-uid | string | Unique identifier for the media. The library uses this to track the note. |
media | wiki-link or URL | Source for general media files |
video | wiki-link or URL | Source for video content |
audio | wiki-link or URL | Source for audio content |
Only one source field is present per note. For vault files, the value is a wiki-link like "[[lecture.mp4]]". For remote media, it's a plain URL.
Metadata (auto-populated)
| Field | Type | Description |
|---|---|---|
title | string | Media title |
creator | string | Author, artist, or channel name |
description | string | Media description |
album | string | Album name (audio files with ID3 tags) |
duration | string | Playback duration (formatted as MM:SS or H:MM:SS) |
cover | wiki-link or URL | Cover art or thumbnail image |
published_at | date | Publication date |
view_count | number | View count (YouTube) |
like_count | number | Like count (YouTube) |
These fields are written when the media note is created. You can edit them manually via Edit media metadata. Running Update metadata re-fetches and overwrites all fields from the source.
Playback control
Media notes also support playback properties like loop, muted, volume, speed, and others that control how the media plays when opened from the note. See the Frontmatter Properties reference for the full list.