1
0
mirror of https://gitlab.crans.org/nounous/ghostream.git synced 2025-06-28 04:32:27 +02:00

Use config file for OME broadcasting

This commit is contained in:
Yohann D'ANELLO
2020-11-09 17:18:37 +01:00
parent cfcde6f530
commit 3d8ba0623d
10 changed files with 55 additions and 11 deletions

View File

@ -61,7 +61,8 @@ func viewerHandler(w http.ResponseWriter, r *http.Request) {
Cfg *Options
Path string
WidgetURL string
}{Path: path, Cfg: cfg, WidgetURL: ""}
OMEApp string
}{Path: path, Cfg: cfg, WidgetURL: "", OMEApp: omeCfg.App}
// Load widget is user does not disable it with ?nowidget
if _, ok := r.URL.Query()["nowidget"]; !ok {

View File

@ -4,10 +4,11 @@ import { ViewerCounter } from "./modules/viewerCounter.js";
* Initialize viewer page
*
* @param {String} stream
* @param {String} omeApp
* @param {Number} viewersCounterRefreshPeriod
* @param {String} posterUrl
*/
export function initViewerPage(stream, viewersCounterRefreshPeriod, posterUrl) {
export function initViewerPage(stream, omeApp, viewersCounterRefreshPeriod, posterUrl) {
// Create viewer counter
const viewerCounter = new ViewerCounter(
document.getElementById("connected-people"),
@ -41,13 +42,13 @@ export function initViewerPage(stream, viewersCounterRefreshPeriod, posterUrl) {
expandFullScreenUI: true,
sources: [
{
"file": "wss://" + window.location.host + "/app/" + stream,
"file": "wss://" + window.location.host + "/" + omeApp + "/" + stream,
"type": "webrtc",
"label": " WebRTC - Source"
},
{
"type": "hls",
"file": "https://" + window.location.host + "/app/" + stream + "_bypass/playlist.m3u8",
"file": "https://" + window.location.host + "/" + omeApp + "/" + stream + "_bypass/playlist.m3u8",
"label": " HLS"
}
]

View File

@ -50,6 +50,6 @@
"{{$value}}",
{{end}}
]
initViewerPage(stream, /*stunServers,*/ viewersCounterRefreshPeriod, {{.Cfg.PlayerPoster}})
initViewerPage(stream, {{.OMEApp}}, /*stunServers,*/ viewersCounterRefreshPeriod, {{.Cfg.PlayerPoster}})
</script>
{{end}}

View File

@ -2,6 +2,7 @@
package web
import (
"gitlab.crans.org/nounous/ghostream/stream/ovenmediaengine"
"html/template"
"io/ioutil"
"log"
@ -32,6 +33,8 @@ type Options struct {
var (
cfg *Options
omeCfg *ovenmediaengine.Options
// Preload templates
templates *template.Template
@ -70,9 +73,10 @@ func loadTemplates() error {
}
// Serve HTTP server
func Serve(s *messaging.Streams, c *Options) {
func Serve(s *messaging.Streams, c *Options, ome *ovenmediaengine.Options) {
streams = s
cfg = c
omeCfg = ome
if !cfg.Enabled {
// Web server is not enabled, ignore