数字时代的记忆保管箱Shoebox
简介
什么是 Shoebox ?
Shoebox
是一个数字解决方案,旨在组织和保存视频,模拟过去人们用实体鞋盒保存珍贵记忆的方式。它为用户提供了一个专门的空间,以避免视频在云服务或社交媒体平台中丢失。
主要特点
- 视频组织:能够有效地组织用户的视频,便于未来的回顾和使用。
- 视频导出功能:支持将原始视频导出到指定位置,方便导入到视频编辑器中进行后续处理。
- 记忆保存:以结构化的方式保存视频记忆,使其易于访问并可用于未来的创意项目。
- 用户友好的界面:提供简单易用的界面,方便用户进行视频管理。
- 高效的媒体处理:使用
FFmpeg
进行视频处理,确保操作的高效性和准确性。 - 技术栈:后端使用
Rust
和Axum
,前端基于React
和TypeScript
,支持SQLite/PostgreSQL
数据库,并具备Docker/Kubernetes
部署能力。
应用场景
- 家庭视频管理:适合家庭用户保存和组织孩子成长过程中的视频,方便随时回顾。
- 创意项目:为视频创作者提供一个结构化的存储解决方案,便于未来制作高光集或拼贴。
- 教育记录:教育工作者可以使用
Shoebox
保存教学视频,以便于未来的教学参考。
Shoebox
通过提供安全、方便的视频管理解决方案,帮助用户有效地保存和利用数字记忆。
安装
在群晖上以 Docker 方式安装。
本文写作时,
latest
版本对应为sha-9f05da53931ad6fa4f5b7f1d9b447ca65dec3e8b
;
docker cli 安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 shoebox 和 子目录 |
- 映射路径的说明
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/shoebox/videos |
/mnt/videos |
存放视频文件 |
docker/shoebox/exports |
/app/exports |
存放导出内容 |
docker/shoebox/data |
/app/data |
存放数据库文件 |
docker/shoebox/thumbnails |
/app/thumbnails |
存放缩略图文件 |
- 环境变量的说明
可变 | 值 |
---|---|
SERVER_HOST |
用于绑定服务器的主机,缺省值为 127.0.0.1 |
SERVER_PORT |
用于绑定服务器的端口,缺省值为 3000 |
DATABASE_URL |
数据库连接 URL ,支持 SQLite/PostgreSQL |
MEDIA_SOURCE_PATHS |
扫描视频的路径,可以指定一个或多个路径,以逗号分隔 |
THUMBNAIL_PATH |
存储缩略图的路径 |
EXPORT_BASE_PATH |
导出文件的路径 |
RUST_LOG |
日志级别 |
docker-compose 安装
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3.8' |
然后执行下面的命令
1 | # 新建文件夹 shoebox 和 子目录 |
运行
在浏览器中输入 http://群晖IP:3823
就能看到主界面
在 videos
目录中放入视频文件
点 Scan Directories
扫描视频目录
开始扫描
扫描完成后
进入视频详情
参考文档
slackspace-io/shoebox
地址:https://github.com/slackspace-io/shoeboxIntroduction - Shoebox Docs
地址:https://slackspace-io.github.io/shoebox/Demo of shoebox - YouTube
地址:https://www.youtube.com/watch?v=xfPMCLWnUz8