Media Layout
pendingby Hanblade
Drag, resize, and arrange media elements with floating notes and presets.
Media Layout
A plugin that allows you to freely arrange and resize media elements (videos, images, audio) and note boxes directly on the page. Create visual compositions while maintaining the simplicity and portability of your notes.
π― Key Features
Working with Media
- Editing β freely edit videos, images, and audio in Live Preview mode
- In-flow Files β edit the size and shape of media directly in the text flow
- Clones β create visual copies of media with their own size and position
π₯ Clones
Files in the flow can be detached for free movement throughout the note, but instead it's recommended to clone the desired file and position it where needed. Clones are loaded directly from your disk, so after cloning you can delete the original element from the noteβthe clone will be independent of it, but the file itself must exist on disk in your vault.
CLONE CAPABILITIES:
-
π Sizing β change the size of photos, videos, and audio by dragging special handles or set the desired size using the menu
-
β¨ Transformation β unlike audio and video, image files can be transformed by holding ctrl and dragging the handles
-
πΊοΈ Movement β unlike files in the flow, clones can be freely placed anywhere in the note
-
π Presets β by pressing a special button, you can save all clones and note boxes currently in the note to a preset
-
β Page Save β after saving a page, you can insert it into any other (all clone and note box data is saved, including current position and all presets)
-
π Rotation β clones and note boxes can not only be freely moved but also rotated (grid-snapped if holding shift)
- π Link β insert a link into an image clone and it will open when clicked (just like a YouTube thumbnail)
- π¨ Customization β customize clones and note boxes as you like, you can edit background color, text color, transparency, and more
CLONE STYLING:
Backgrounds
- Global Background β set background and opacity for all media
- Local Background ("Only for this file") β customize background for individual elements
- Transparency β make the background transparent, leaving only the content
Element Management
Multi-Select and Selection
- Select Elements β
Ctrl + Clickto select clones and tables - Area Selection β
Ctrl + Dragto select multiple elements with a box - Group Movement β drag any selected element to move the entire group
- Bulk Delete β delete all selected elements with one action
Locking
- Protection from Accidental Changes β lock elements after configuration
Note Boxes
Create a note box to add text anywhere in the note (background can be removed leaving only text)
- Font Size on the Fly:
Ctrl + Mouse Wheelβ 10 px stepShift + Mouse Wheelβ precise 1 px adjustment
- Color Settings:
- Table background
- Header color
- Text color
- Border color (uses the currently selected color)
Presets
- Save Layouts β save clones and note boxes together with all their data (positions, sizes, backgrounds, locks, etc.)
- Apply Presets β quickly restore saved compositions
- Reliability β originals remain in the text flow, avoiding conflicts and not interacting with presets at all
βοΈ Settings
Open via Command Palette: Media Layout: Settings
List
- Detach Originals (off by default) β allows moving original media outside the flow
- Handle Visibility β make resize handles invisible but active
- Panel Hide Duration
- Clone Restore Delay
- Table Restore Delay
- Modal Animation β smooth open/close
π Localization
Built-in language support: de, pl, es, fr, it, be, uk, uz, vi, zh-CN, zh-TW
πΎ Data Storage
Location: .obsidian/plugins/media-layout/
What's Stored: Absolutely all data, including sizes of original files in the flow, clones, settings, backgrounds, note boxes, text, etc.
Automatic Backups
- Interval: every 10 minutes (when changes are made)
- Retention: up to 4 files with rotation
- Format:
DD_MM_YYYY_HHκMM_data_backup.json - Recovery: replace
data.jsonwith the desired backup (with Obsidian closed)
π How to Use the Plugin
- Enable the plugin in Obsidian settings
- Insert media into a note (video/image/audio) or add a note box
- Create a clone (recommended for free placement) and work with it as you like
- Adjust size and position β drag and resize elements
- Style β set background, opacity, colors (via element menu)
- Lock β protect elements from accidental changes
- Save a preset β save the composition so you don't lose it if you accidentally delete any elements, or to try a different composition variant and have the ability to restore the previous one
β οΈ Important to Know
Originals vs Clones
- Originals β located in the Markdown text flow; can be resized; repositioning requires detachment (not recommended)
- Clones β independent visual copies with their own parameters; don't affect the text flow
Recommendation: use clones for creating layouts. It's safer and more stable, as detaching files from the flow can narrow the content display in the noteβthis happens due to Obsidian's CodeMirror 6 optimization system.
Limitations and Features
- Detaching originals may cause visual bugs due to CM6 specifics
- Reset all settings removes clones and restores originals to the flow
- Large amounts of heavy media (videos, GIFs) may reduce performance
- Aggressive CSS or third-party plugins may affect display
β FAQ
Do clones duplicate files?
No. Clones reference the same file β only display parameters are duplicated.
Will the layout persist after restart?
Yes. Clones and presets are restored automatically.
Can I edit in Reading Mode?
Editing is only available in Live Preview. Reading Mode shows the result with limited interaction.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.