30 lines
795 B
Go
30 lines
795 B
Go
package main
|
|
|
|
import "github.com/gin-gonic/gin"
|
|
|
|
func serverMain() {
|
|
router := gin.Default()
|
|
router.StaticFile("/", "index.html")
|
|
router.StaticFile("/player.html", "player.html")
|
|
|
|
config := router.Group("config")
|
|
config.POST("/preset", setPresetHandler)
|
|
config.GET("/preset", getPresetHandler)
|
|
|
|
router.GET("/media", mediaListingHandler)
|
|
|
|
media := router.Group("/media/:id")
|
|
media.Use(mediaMustExists)
|
|
|
|
media.GET("/", metadataHandler)
|
|
media.GET("/master.m3u8", masterPlaylistHandler)
|
|
media.GET("/video/:profile/playlist.m3u8", videoPlaylistHandler)
|
|
media.GET("/video/:profile/:segment", videoSegmentHandler)
|
|
media.GET("/audio/:idx/playlist.m3u8", audioPlaylistHandler)
|
|
media.GET("/audio/:idx/:segment", audioSegmentHandler)
|
|
|
|
err := router.Run()
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
}
|