This project is deprecated. It has been rewritten from scratch with another stack (React + FastAPI) and is now maintained as AVM Neo. The new version includes all original features plus bookmarks with video screenshots, tag-based filtering, dark mode, OAuth2 support, and more. Please use AVM Neo for all new deployments.
Welcome to Action Video Manager (AVM) — tool for managing drone and action cam footage, especially when it's stored on a Network Attached Storage (NAS) with docker support.
This project is all about making your (my, actually) life easier and solving some of those issues with storing and merging your videos.
- Tired of Split Files?: DJI Air Units, drones and action cams split videos into 3.5GB files, which means lots of files for longer flights. AVM makes it simple to combine them, so you get a neat "one flight, one file" situation.
- Smooth Stabilization: If you’re using Gyroflow for stabilizing your video, it works best if files are merged first. No more weird jumps or jolts between 2 stabilized files!
- Pre-merging: Waiting for files to download and merge on your PC can be a painful. AVM helps you start gyroflow process faster by merging those files in advance.
- No More Typing Command Hassles: Using Gyroflow’s merge tool via SSH can be a pain. AVM brings a user-friendly interface so you can just point, click, and get on with it.
- Video/Audio/Images playback
- Files download (useful to quickly get files to your machine where you will use for editing)
- Merging video files using Gyroflow's mp4_merge
- Renaming and deleting of files
- Optional redis support (for login sessions)
- Single-admin to keep it simple
Pick Your Files and Merge Away

- Utilize Synology DiskStation with the USB Copy package for automated file downloading from SD cards, organized into date-specific folders.
- Assign each drone a dedicated SD card, directing its contents to the respective drone folder.
- Leverage the Container Manager package on Synology DS to facilitate Docker container operations.
- Use Portainer for enhanced container management.
- NFS Option: Store files on a NAS accessible via NFS and mount them on a Linux PC/Server.
- Local Option: Keep everything on a PC/Server that can run Docker and access media files locally.
docker run -v /media:/media paidem/avm:latestservices:
app:
image: paidem/avm:latest
ports:
- "5000:5000"
volumes:
- /media:/media
- /media/avm/thumbnails:/app/static/thumbnails
restart: unless-stopped
environment:
- PYTHONUNBUFFERED=1
- TZ=Europe/Vilnius
- ADMIN_PASSWORD=actionUse the portainer-stack-example.yaml file to get things rolling.
| Variable | What It Does | Default |
|---|---|---|
| ADMIN_PASSWORD | Password to access admin features | admin |
| FILTERED_FILES | Files and folders to skip | .DS_Store,.Thumbs.db,Thumbs.db,._.Trashes,.Spotlight-V100,.fseventsd,.Trashes,@eaDir,desktop.ini,thumbs.db,#snapshot,#recycle,thumbnails |
| HIDDEN_EXTENSIONS | Don't want to see these file extensions | source,srt,db |
| PRIVATE_FOLDERS | Folders only visible in admin mode | Personal |
| REDIS_HOST | Optional redis host. If specified - will be used for sessions | n/a |
| Path | What It’s For |
|---|---|
| /media | Where all your media goes |
| /app/static/thumbnails | Thumbnails directory—mount this to keep them even after recreating the container |
Hope this helps you get started with AVM! If you've got any questions or run into issues, dive into the community or reach out. Enjoy merging and managing your action vids!
You should be careful when exposing this app to internet as lets access all your footage and in case of vulnerabilities - delete your footage.
I recommend using only with IP whitelist or CloudFlare proxy/zero-trust tunnel with google authentication and whitelisted IP (as I do)
You need mp4_merge and ffmpeg installed in path

