package system import ( "github.com/gin-gonic/gin" "server/api/v1/system" ) // StreamRouter 流媒体路由结构体 type StreamRouter struct{} // 全局API实例 var streamApi = &system.StreamApi{} // InitStreamRouter 初始化流媒体路由 func (s *StreamRouter) InitStreamRouter(Router *gin.RouterGroup, RouterPub *gin.RouterGroup) { // 私有路由(需JWT鉴权):流控制接口 streamRouter := Router.Group("stream") // 公开路由(无需鉴权):播放HLS流 streamPublicRouter := RouterPub.Group("stream") { // 公开路由:播放HLS流,支持.m3u8索引文件和.ts视频切片 streamPublicRouter.GET("/hls/:streamId/*any", streamApi.PlayHLS) } { // 私有路由:流控制接口 streamRouter.POST("/start", streamApi.StartStream) // 启动RTSP转HLS流 streamRouter.POST("/stop", streamApi.StopStream) // 停止流转换 streamRouter.GET("/list", streamApi.GetStreamList) // 获取活跃流列表 } }