Michael Chus 9fd02fb5bf Add per-disk profiles with video transcoding support
Each disk stores .jukebox/profile.json with copy parameters (dest
folder, overwrite mode, file select, reserve space, auto-copy) and
optional transcoding limits for the target player (codec, resolution,
bitrate, FPS, audio channels, output format).

On copy, video files are probed with ffprobe; if they exceed the
profile limits they are transcoded via ffmpeg (-threads 0 for full
CPU usage), otherwise copied as-is. Scale filter never upscales.

New: internal/disk/profile.go, internal/transcoder/{detect,transcoder}.go
API: GET/PUT /api/disks/profile?mount_path=
UI: disk profile panel in dashboard for known disks
Dockerfile: adds ffmpeg to the runtime image

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21 20:52:46 +03:00
2026-04-23 21:33:43 +03:00
2026-04-24 11:54:33 +03:00
2026-04-24 11:54:33 +03:00
2026-04-23 21:33:43 +03:00
2026-04-23 21:33:43 +03:00
2026-04-23 21:33:43 +03:00
2026-04-24 11:54:33 +03:00
2026-04-23 20:02:43 +03:00

jukebox_maker

Приложение которое заполняет накопитель медиа-файлами

Description
Приложение которое заполняет накопитель медиа-файлами
Readme 298 KiB
Languages
Go 60.1%
HTML 26.5%
CSS 8.9%
Shell 2.9%
Makefile 1%
Other 0.6%