Live video on the AT Protocol

fix thumbnail in test

+25 -23
+24 -22
pkg/api/playback.go
··· 273 273 errors.WriteHTTPNotFound(w, "user not found", err) 274 274 return 275 275 } 276 - ls, err := a.Model.GetLatestLivestreamForRepo(user) 277 - if err != nil { 278 - errors.WriteHTTPInternalServerError(w, "could not get livestream", err) 279 - return 280 - } 281 - if ls == nil { 282 - errors.WriteHTTPNotFound(w, "livestream not found", err) 283 - return 284 - } 285 - lsrv, err := ls.ToLivestreamView() 286 - if err != nil { 287 - errors.WriteHTTPInternalServerError(w, "could not marshal livestream", err) 288 - return 289 - } 290 - lsr, ok := lsrv.Record.Val.(*streamplace.Livestream) 291 - if !ok { 292 - errors.WriteHTTPInternalServerError(w, "livestream is not a streamplace livestream", nil) 293 - return 294 - } 295 - if lsr.EndedAt != nil { 296 - errors.WriteHTTPNotFound(w, "livestream has ended", nil) 297 - return 276 + if !a.CLI.WideOpen { 277 + ls, err := a.Model.GetLatestLivestreamForRepo(user) 278 + if err != nil { 279 + errors.WriteHTTPInternalServerError(w, "could not get livestream", err) 280 + return 281 + } 282 + if ls == nil { 283 + errors.WriteHTTPNotFound(w, "livestream not found", err) 284 + return 285 + } 286 + lsrv, err := ls.ToLivestreamView() 287 + if err != nil { 288 + errors.WriteHTTPInternalServerError(w, "could not marshal livestream", err) 289 + return 290 + } 291 + lsr, ok := lsrv.Record.Val.(*streamplace.Livestream) 292 + if !ok { 293 + errors.WriteHTTPInternalServerError(w, "livestream is not a streamplace livestream", nil) 294 + return 295 + } 296 + if lsr.EndedAt != nil { 297 + errors.WriteHTTPNotFound(w, "livestream has ended", nil) 298 + return 299 + } 298 300 } 299 301 thumb, err := a.LocalDB.LatestThumbnailForUser(user) 300 302 if err != nil {
+1 -1
pkg/media/webrtc_playback2.go
··· 93 93 return 94 94 case file := <-segChan.C: 95 95 log.Debug(ctx, "got segment", "file", file.Filepath) 96 - if !file.Published && viewer != user { 96 + if !file.Published && viewer != user && !mm.cli.WideOpen { 97 97 log.Warn(ctx, "segment is not published and viewer is not the user", "viewer", viewer, "user", user) 98 98 continue 99 99 }