Hi! The problem here is that the built-in audio, video and image loaders will convert the file data to base64 to send it to the web app. So basically, the entire file is encoded as a string. That works fine for smaller files and is convenient, because you can easily work with local files and the source data is stored with the annotation, so you never lose the reference.
However, if your files are large, this is less convenient, sending the data takes much longer (because you're essentially sending the whole file over REST), and you're also likely to exceed browser limits. So in cases like this, you probably don't want to encode your files as base64.
One solution is to use the video-server
loader: https://prodi.gy/docs/api-loaders#loaders-file This will serve your video files via a local web server, so they can be accessed by your browser (because browsers would block local file paths). An alternative solution would be to store your files in a cloud bucket or similar, and load your videos from URLs instead. For example, you can prepare a JSONL file like this and load it with --loader jsonl
:
{"video": "https://path/to/your/video.mp4"}