Add support for loading the owncast URL in mpv (#1356)
* redirect players to hls link * add VLC to players list
This commit is contained in:
parent
7278ce8f26
commit
e8e21ca45b
@ -44,6 +44,11 @@ func IndexHandler(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
if utils.IsUserAgentAPlayer(r.UserAgent()) && isIndexRequest {
|
||||
http.Redirect(w, r, "/hls/stream.m3u8", http.StatusTemporaryRedirect)
|
||||
return
|
||||
}
|
||||
|
||||
// If the ETags match then return a StatusNotModified
|
||||
if responseCode := middleware.ProcessEtags(w, r); responseCode != 0 {
|
||||
w.WriteHeader(responseCode)
|
||||
|
@ -86,6 +86,27 @@ func IsUserAgentABot(userAgent string) bool {
|
||||
return ua.Bot()
|
||||
}
|
||||
|
||||
// IsUserAgentAPlayer returns if a web client user-agent is seen as a media player.
|
||||
func IsUserAgentAPlayer(userAgent string) bool {
|
||||
if userAgent == "" {
|
||||
return false
|
||||
}
|
||||
|
||||
playerStrings := []string{
|
||||
"mpv",
|
||||
"player",
|
||||
"vlc",
|
||||
}
|
||||
|
||||
for _, playerString := range playerStrings {
|
||||
if strings.Contains(strings.ToLower(userAgent), playerString) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
func RenderSimpleMarkdown(raw string) string {
|
||||
markdown := goldmark.New(
|
||||
goldmark.WithRendererOptions(
|
||||
|
Loading…
Reference in New Issue
Block a user