return false
}
- ctx, cancel := context.WithCancel(mainCtx)
- fc.FlashWithCallback(cancel)
-
// 当cut时,取消上次录制
- ctx1, done := pctx.WithWait(ctx, 3, time.Second*30)
+ ctx1, done := pctx.WithWait(mainCtx, 3, time.Second*30)
+ fc.FlashWithCallback(func() { _ = done() })
// 分段时长min
if l, ok := ms.common.K_v.LoadV("分段时长min").(float64); ok && l > 0 {
duration := time.Since(startT)
// wait all goroutine exit
- if e := done(); e != nil {
+ if e := done(); e != nil && !errors.Is(e, pctx.ErrDoneCalled) {
l.L(`E: `, e)
}
require (
github.com/gotk3/gotk3 v0.6.4
github.com/mdp/qrterminal/v3 v3.2.0
- github.com/qydysky/part v0.28.20250225073648
+ github.com/qydysky/part v0.28.20250225161111
github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e
github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966
golang.org/x/text v0.22.0 // indirect
github.com/qydysky/biliApi v0.0.0-20240725184407-15076dddb6fb/go.mod h1:om024vfxALQ5vxsbaGoMm8IS0esLYBnEOpJI8FsGoDg=
github.com/qydysky/brotli v0.0.0-20240828134800-e9913a6e7ed9 h1:k451T+bpsLr+Dq9Ujo+Qtx0iomRA1XXS5ttlEojvfuQ=
github.com/qydysky/brotli v0.0.0-20240828134800-e9913a6e7ed9/go.mod h1:cI8/gy/wjy2Eb+p2IUj2ZuDnC8R5Vrx3O0VMPvMvphA=
-github.com/qydysky/part v0.28.20250225073648 h1:ENQ88oKNklW2nxreONQDjyO70zCeVy3wuuDMW9GCjBs=
-github.com/qydysky/part v0.28.20250225073648/go.mod h1:MsSAiZMiWQ5pGP5BCEB3OBsoAPaGykNB7vbeY3mKF2w=
+github.com/qydysky/part v0.28.20250225161111 h1:34x3k9NeHpP2rfMaq6d5sm3Lru9QdxI3zcXT5JbgUOg=
+github.com/qydysky/part v0.28.20250225161111/go.mod h1:MsSAiZMiWQ5pGP5BCEB3OBsoAPaGykNB7vbeY3mKF2w=
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE=
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
github.com/shirou/gopsutil v3.21.11+incompatible h1:+1+c1VGhc88SSonWP6foOcLhvnKlUeu/erjjvaPEYiI=