Managing Video Files

Things I have tried

  • storing all videos in my vault and syncing with Obsidian sync to my iPhone, iMac and Windows PC. Then embed them within my notes. Works great and is so easy and straightforward and my preferred solution. BUT my vault is now bigger than 10GBS which I believe is the Obsidian Sync limit per vault.
  • Storing the video files in Dropbox and linking to them in notes (right-click on dropbox file and use that link). A bit more cumbersome to setup and open (opens in dropbox app on iOS and website on computer) so the video doesn’t play within my note. I can’t figure out how to embed the dropbox link. Links don’t get auto-updated if I move a video file so is more fragile.
  • I’ve looked through the Discord Server and this forum but haven’t found what I am missing

What I’m trying to do

Any suggestions on managing video files? I have GBs of video files of various workshops or classes that I would like to include in my notes (my own files not on youtube or vimeo). Ideally I would like to embed them so I can view within my notes. The great thing about Obsidian stored videos is that if I re-organize then the links are automatically updated. And it is super easy to link to them. BUT I’m way over the 10GBs limit for Obsidian Sync.

My setup: iMac, Windows PC, iPhone all synced with Obsidian Sync. I have a Dropbox account but maybe there is another service that works better with embedding video to Obsidian? Would love some best practices, ideas on how to best manage.

Perhaps you could put the Dropbox website link in an iframe (I don’t know much about this but have seen mention in the forum of embedding websites and services this way). An obvious downside is that you’d need an internet connection to play your videos.

1 Like

I add everything to my Google Drive and embed them back into my notes.

This is my Templater template:

<iframe src="<% tp.user.driveLink(tp) %>" style="border:none;height:300px;width:500px"/>

And this is the script it uses:

async function main (tp) {
    const link = await tp.system.prompt('Enter the Google Drive file link')
    if (!link || !link.startsWith('https://drive.google.com/file')) return ''
    return link.replace(/\/view[^/]+$/, '/preview')
}
module.exports = main

It ends up looking like this, with a play button right in the note:

The Google Drive link will stay consistent even if you move/rename the video file inside Drive.

Another thing you could consider is uploading everything you YouTube and setting the links as Private or Unlisted. That way you get them all hosted for free and can easily embed them anywhere. Personally I would still stick with Drive as it works well for my workflow.

3 Likes

Thank you! I’ll try that out.