{"repo":"rroller/media-roller","free":true,"listed":false,"github":"https://github.com/rroller/media-roller","clone":"git clone https://github.com/rroller/media-roller.git","description":"A self hosted server to download videos from social media with an iOS shortcut for on-click saving to camera roll","language":"Go","stars":129,"topics":["golang","youtube-dl","ffmpeg","media","social-media"],"license":null,"category":"media-processing","readme_excerpt":"Media Roller A mobile friendly tool for downloading videos from social media. The backend is a Golang server that will take a URL (YouTube, Reddit, Twitter, etc), download the video file, and return a URL to directly download the video. The video will be transcoded to produce a single mp4 file. This is built on yt-dlp. yt-dlp will auto update every 12 hours to make sure it's running the latest nightly build. Note: This was written to run on a home network and should not be exposed to public traffic. There's no auth. Running Make sure you have yt-dlp and FFmpeg installed then pull the repo and run: Or for docker locally: With Docker, published to both dockerhub and github. ghcr: docker pull ghcr.io/rroller/media-roller:master dockerhub: docker pull ronnieroller/media-roller See: https://github.com/rroller/media-roller/pkgs/container/media-roller https://hub.docker.com/repository/docker/ronnieroller/media-roller The files are saved to the /download directory which you can mount as needed. Docker Environemnt Variables MR DOWNLOAD DIR where videos are saved. Defaults to /download MR PROXY will pass the value to yt-dlp witht he --proxy argument. Defaults to empty API To download a video directly, use the API endpoint: Create a bookmarklet, allowing one click downloads (From a PC): Integrating with mobile After you have your server up, install this shortcut. Update the endpoint to your server address by editing the shortcut before running it. https://www.icloud.com/shortcuts/d3b05b","default_branch":null,"files":null,"tree":[],"storefront":"/r/rroller","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/rroller/media-roller/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}