+function updateWebserverConfig () {
+ CONSTRAINTS_FIELDS.VIDEOS.EXTNAME = buildVideosExtname()
+
+ MIMETYPES.VIDEO.MIMETYPE_EXT = buildVideoMimetypeExt()
+ MIMETYPES.VIDEO.EXT_MIMETYPE = invert(MIMETYPES.VIDEO.MIMETYPE_EXT)
+}
+
+function buildVideosExtname () {
+ return CONFIG.TRANSCODING.ENABLED && CONFIG.TRANSCODING.ALLOW_ADDITIONAL_EXTENSIONS
+ ? [ '.mp4', '.ogv', '.webm', '.mkv', '.mov', '.avi', '.flv' ]
+ : [ '.mp4', '.ogv', '.webm' ]
+}
+
+function buildVideosRedundancy (objs: any[]): VideosRedundancy[] {
+ if (!objs) return []
+
+ if (!Array.isArray(objs)) return objs
+
+ return objs.map(obj => {
+ return Object.assign({}, obj, {
+ minLifetime: parseDuration(obj.min_lifetime),
+ size: bytes.parse(obj.size),
+ minViews: obj.min_views
+ })
+ })
+}
+