-
Notifications
You must be signed in to change notification settings - Fork 1
/
config_example.ini
99 lines (80 loc) · 3.53 KB
/
config_example.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
[application]
debug = False
[cache]
# TTL of segment files in minutes
segment_file_age = 4320
#size of segment file cache in Mb
segment_file_cache_size = 16384
#cache size percentage to maintain.
#Deletion of old segment files will occur at this threshold regardless of ttl
segment_file_cache_limit = 85
# TTL of input video files in minutes
input_file_age = 8640
#size of segment file cache in Mb
input_file_cache_size = 8192
# cache size percentage to maintain.
# Deletion of old input files will occur at this threshold regardless of ttl
input_file_cache_limit = 85
[input]
#there are many ways to fetch input video files. The simplest is a local filesystem
# valid input_types are:
# 'filesystem' (default)
# 'ftp' (unsupported)
# 'sftp' (unsupported)
# 'scp' (unsupported)
# 'rsync' (unsupported)
# 'http'
#there should be a configuration section below is named the same as the input_type set here.
#for example, if input_type is 'filesystem' then configure it in [filesystem] section below
input_type = filesystem
#When input files are copied or fetched remotely, they are stored here as an input file cache
videoCachePath = /tmp/video_input
[output]
#Path where output segments will be stored after generation.
segmentParentPath = /tmp/segments
#hls segment duration, in seconds
segmentDuration = 6
#child manifest name (segment manifest name)
#This is the file that describes the actual video segments.
childManifestFilename = index_0_av.m3u8
#servername used in generating absolute paths to segment files:
#Leaving this unconfigured will generate relative paths to segment files in the child manifest
# For local development, I recommend 'localhost:5000' or whatever port you configure later.
# serverName = example.com
[bento4]
#Path to the bento4 binaries.
binaryPath = /bin
## You only need to configure one of the sections below (filesystem, ftp, sftp, scp, rsync, http)
# depending on how you set your input_type in the [input] section above.
[filesystem]
#Section for configuring input_type = filesystem
# Path to where the input files live.
# Everything after this path is considered part of the url.
# For example, a video file exists on the filesystem at /mnt/media/files/videos/video.mp4
# and we configure 'videoParentPath' to '/mnt/media/files/'
# this results in an hls http endpoint of 'http://example.com/i/videos/video.mp4/index.m3u8'
videoParentPath = /path/to/input/directory
# Setting cache_input to True will copy video source files locally before processing
# also configure 'videoCachePath' in the 'input' section.
# this is useful if requesting source files is expensive - for example, over a network mount or other slow media
# video files will be copied to a configured 'videoCachePath' before processing into hls streams.
# Setting this to False will turn off all input file caching and read video input files directly from the filesystem.
cache_input = False
[ftp]
# (unsupported in this version)
[sftp]
# (unsupported in this version)
[scp]
# (unsupported in this version)
host = example.com
user = username
keyfile = /home/username/.ssh/id_rsa
[rsync]
# (unsupported in this version)
[http]
# the full url including protocol (http or https) to where the input files live.
# Everything after this path is considered part of the url of the specific video.
# For example, a video file exists at http://files.example.com/videos/flowers/video.mp4
# and we configure url' to 'http://files.example.com/videos'
# this results in casterpak creating an hls http endpoint of 'http://example.com/i/flowers/video.mp4/index.m3u8'
url = http://files.example.com/