2022-11-10 12:27:29 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
type Config struct {
|
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 20:39:43 +00:00
|
|
|
VAAPI bool `json:"vaapi"`
|
|
|
|
VAAPILowPower bool `json:"vaapiLowPower"`
|
|
|
|
|
2023-03-09 19:57:15 +00:00
|
|
|
NVENC bool `json:"nvenc"`
|
2022-11-10 12:27:29 +00:00
|
|
|
}
|