This repository has been archived on 2021-01-16. You can view files and clone it, but cannot push or open issues/pull-requests.
satyr/src/controller.ts

55 lines
1.4 KiB
TypeScript
Raw Normal View History

import * as mediaserver from "./server";
2019-09-20 13:02:29 -05:00
import * as ircd from "./ircd";
import * as db from "./database";
2019-09-23 14:27:01 -05:00
const config = require('config');
2019-09-23 14:27:01 -05:00
function run(): void{
const dbcfg = config.database;
const bcryptcfg = config.bcrypt;
const satyr: object = {
privateEndpoint: config.media.privateEndpoint,
record: config.media.record,
streamKeys: config.media.streamKeys,
registration: config.satyr.registration,
webFormat: config.satyr.webFormat,
restrictedNames: config.satyr.restrictedNames
};
const nms: object = {
logType: config.server.logs,
rtmp: {
port: config.server.rtmp.port,
chunk_size: config.server.rtmp.chunk_size,
gop_cache: config.server.rtmp.gop_cache,
ping: config.server.rtmp.ping,
ping_timeout: config.server.rtmp.ping_timeout,
},
http: {
port: config.server.http.port,
mediaroot: config.server.http.directory,
allow_origin: config.server.http.allow_origin
},
trans: {
ffmpeg: config.media.ffmpeg,
tasks: [
{
app: config.media.publicEndpoint,
hls: config.transcode.hls,
hlsFlags: config.transcode.hlsFlags,
dash: config.transcode.dash,
dashFlags: config.transcode.dashFlags
}
]
},
auth: {
api: config.server.api,
api_user: config.server.api_user,
api_pass: config.server.api_pass
}
};
db.run(dbcfg, bcryptcfg);
mediaserver.boot(nms, satyr);
2019-09-20 13:02:29 -05:00
ircd.boot();
}
2019-09-23 14:27:01 -05:00
run();
export { run };