memories/config.go

42 lines
1.1 KiB
Go
Raw Normal View History

2022-11-10 12:27:29 +00:00
package main
type Config struct {
2023-04-10 23:44:39 +00:00
// Is this server configured?
Configured bool
2023-03-09 19:57:15 +00:00
// Bind address
Bind string `json:"bind"`
2022-11-11 02:01:33 +00:00
// FFmpeg binary
2023-03-09 19:57:15 +00:00
FFmpeg string `json:"ffmpeg"`
2022-11-11 02:01:33 +00:00
// FFprobe binary
2023-03-09 19:57:15 +00:00
FFprobe string `json:"ffprobe"`
2022-11-11 03:40:53 +00:00
// Temp files directory
2023-03-09 19:57:15 +00:00
TempDir string `json:"tempdir"`
2022-11-11 02:01:33 +00:00
// Size of each chunk in seconds
2023-03-09 19:57:15 +00:00
ChunkSize int `json:"chunkSize"`
2022-11-11 02:01:33 +00:00
// How many *chunks* to look behind before restarting transcoding
2023-03-09 19:57:15 +00:00
LookBehind int `json:"lookBehind"`
2022-11-11 02:20:47 +00:00
// Number of chunks in goal to restart encoding
2023-03-09 19:57:15 +00:00
GoalBufferMin int `json:"goalBufferMin"`
2022-11-11 02:20:47 +00:00
// Number of chunks in goal to stop encoding
2023-03-09 19:57:15 +00:00
GoalBufferMax int `json:"goalBufferMax"`
2022-11-11 05:20:23 +00:00
// Number of seconds to wait before shutting down encoding
2023-03-09 19:57:15 +00:00
StreamIdleTime int `json:"streamIdleTime"`
2022-11-11 05:20:23 +00:00
// Number of seconds to wait before shutting down a client
2023-03-09 19:57:15 +00:00
ManagerIdleTime int `json:"managerIdleTime"`
// Hardware acceleration configuration
2023-03-09 21:02:57 +00:00
// VA-API
2023-03-09 20:39:43 +00:00
VAAPI bool `json:"vaapi"`
VAAPILowPower bool `json:"vaapiLowPower"`
2023-03-09 21:02:57 +00:00
// NVENC
NVENC bool `json:"nvenc"`
NVENCTemporalAQ bool `json:"nvencTemporalAQ"`
NVENCScale string `json:"nvencScale"` // cuda, npp
2022-11-10 12:27:29 +00:00
}