parent
1977e017dc
commit
de04cac28e
@ -20,6 +20,7 @@ func init() {
|
||||
neko.Service.Server,
|
||||
neko.Service.WebRTC,
|
||||
neko.Service.Remote,
|
||||
neko.Service.Broadcast,
|
||||
neko.Service.WebSocket,
|
||||
}
|
||||
|
||||
|
@ -12,14 +12,16 @@ type BroadcastManager struct {
|
||||
logger zerolog.Logger
|
||||
pipeline *gst.Pipeline
|
||||
remote *config.Remote
|
||||
config *config.Broadcast
|
||||
enabled bool
|
||||
url string
|
||||
}
|
||||
|
||||
func New(remote *config.Remote) *BroadcastManager {
|
||||
func New(remote *config.Remote, config *config.Broadcast) *BroadcastManager {
|
||||
return &BroadcastManager{
|
||||
logger: log.With().Str("module", "remote").Logger(),
|
||||
remote: remote,
|
||||
config: config,
|
||||
enabled: false,
|
||||
url: "",
|
||||
}
|
||||
|
37
server/internal/types/config/broadcast.go
Normal file
37
server/internal/types/config/broadcast.go
Normal file
@ -0,0 +1,37 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/spf13/viper"
|
||||
)
|
||||
|
||||
type Broadcast struct {
|
||||
// Enabled bool
|
||||
// AudioParams string
|
||||
// VideoParams string
|
||||
}
|
||||
|
||||
func (Broadcast) Init(cmd *cobra.Command) error {
|
||||
// cmd.PersistentFlags().Bool("broadcast", false, "enable boradcasting")
|
||||
// if err := viper.BindPFlag("broadcast", cmd.PersistentFlags().Lookup("broadcast")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
|
||||
// cmd.PersistentFlags().String("cast_audio", "", "audio codec parameters to use for broadcasting")
|
||||
// if err := viper.BindPFlag("cast_audio", cmd.PersistentFlags().Lookup("cast_audio")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
|
||||
// cmd.PersistentFlags().String("cast_video", "", "video codec parameters to use for broadcasting")
|
||||
// if err := viper.BindPFlag("cast_video", cmd.PersistentFlags().Lookup("cast_video")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *Broadcast) Set() {
|
||||
// s.Enabled = viper.GetBool("broadcast")
|
||||
// s.AudioParams = viper.GetString("cast_audio")
|
||||
// s.VideoParams = viper.GetString("cast_video")
|
||||
}
|
@ -62,6 +62,7 @@ func init() {
|
||||
Root: &config.Root{},
|
||||
Server: &config.Server{},
|
||||
Remote: &config.Remote{},
|
||||
Broadcast: &config.Broadcast{},
|
||||
WebRTC: &config.WebRTC{},
|
||||
WebSocket: &config.WebSocket{},
|
||||
}
|
||||
@ -100,6 +101,7 @@ type Neko struct {
|
||||
Version *Version
|
||||
Root *config.Root
|
||||
Remote *config.Remote
|
||||
Broadcast *config.Broadcast
|
||||
Server *config.Server
|
||||
WebRTC *config.WebRTC
|
||||
WebSocket *config.WebSocket
|
||||
@ -118,7 +120,7 @@ func (neko *Neko) Preflight() {
|
||||
}
|
||||
|
||||
func (neko *Neko) Start() {
|
||||
broadcastManager := broadcast.New(neko.Remote)
|
||||
broadcastManager := broadcast.New(neko.Remote, neko.Broadcast)
|
||||
|
||||
remoteManager := remote.New(neko.Remote, broadcastManager)
|
||||
remoteManager.Start()
|
||||
|
Reference in New Issue
Block a user