Slice is a simple platform to share short clips to a platform like discord (with embeds).
I was inspired to make this after reaching the discord file size limit when trying to share a clip.
The end goal is to integrate simple video editing tools to make it quicker for me to go from a 5 minute video file to an easily sharable clip.
(I might try to rewrite this in a javascript based framework purely because the free hositing situation is so much better for js based apps than for django)
- Upload video files
- Multiple visibility options (public, hidden, private)
- Embeds for discord
- Preview video before upload
- Video playback
- Explore page for public videos
- Video trimming
- Public avaliability
- Storage limits and autodeletion options
- Modernize UI
- User profiles
- Thumbnail support
- Multiple file format support
- Python
- Django
- Oracle Cloud Infrastructure Bucket Storage
- Render for free hosting
- Neon for free database
When you upload a video it is instantly uploaded to an Oracle Cloud Object Storage Bucket. Videos are never saved on the server, they are streamed directly from the form to the bucket. Each video is given a preauthenticated request (par) url that is valid for 30 days. The par url is automatically regenerated when it is close to expiring.
When you add a video to the form, a javascript function saves it to a blob url. The html video source tag is then set to the blob url.
The planned video editing functionallity will use allow setting a start and end time for the video. The video will then be sent to an ffmpeg.js web worker to be trimmed.
This method will allow for future editing features to be added in the future.