hls: apply readTimeout to HLS sources (#2627)

This commit is contained in:
Alessandro Ros
2023-11-02 12:45:46 +01:00
committed by GitHub
parent 68b862c7f6
commit 15f1c73314
3 changed files with 7 additions and 4 deletions

View File

@@ -83,6 +83,7 @@ func newStaticSourceHandler(
case strings.HasPrefix(cnf.Source, "http://") ||
strings.HasPrefix(cnf.Source, "https://"):
s.instance = &hlssource.Source{
ReadTimeout: readTimeout,
Parent: s,
}

View File

@@ -10,6 +10,7 @@ import (
"github.com/bluenviron/gortsplib/v4/pkg/description"
"github.com/bluenviron/gortsplib/v4/pkg/format"
"github.com/bluenviron/mediamtx/internal/conf"
"github.com/bluenviron/mediamtx/internal/defs"
"github.com/bluenviron/mediamtx/internal/logger"
"github.com/bluenviron/mediamtx/internal/protocols/tls"
@@ -19,6 +20,7 @@ import (
// Source is a HLS static source.
type Source struct {
ReadTimeout conf.StringDuration
Parent defs.StaticSourceParent
}
@@ -43,6 +45,7 @@ func (s *Source) Run(params defs.StaticSourceRunParams) error {
c = &gohlslib.Client{
URI: params.Conf.Source,
HTTPClient: &http.Client{
Timeout: time.Duration(s.ReadTimeout),
Transport: &http.Transport{
TLSClientConfig: tls.ConfigForFingerprint(params.Conf.SourceFingerprint),
},

View File

@@ -20,7 +20,6 @@ import (
// Source is a WebRTC static source.
type Source struct {
ReadTimeout conf.StringDuration
Parent defs.StaticSourceParent
}