mirror of
https://github.com/livekit/livekit.git
synced 2026-11-12 22:58:01 +00:00
* sfu: ignore a nil publisher sender report in the forwarder A stream restart replaces the receiver stats between the sender report callback and its read, so the report can be nil. SetRefSenderReport now keeps the previous report instead of reading the nil one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * dynacast: skip a codec regression when the target codec has no quality HandleCodecRegression looked up the target codec after it released the lock. If the manager closed in between, or the target mime type was unknown, the lookup returned nil and RegressTo called Restart or Replace on it. The target is now looked up with the source, and a missing one stops the regression. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * service: create the internal record for a stored room that has none RedisStore.LoadRoom returns a nil RoomInternal without an error when the room exists but its internal field does not, for example after a delete races a store. CreateRoom then wrote egress, agent, playout delay or sync settings into the nil record. It now starts from an empty record, which the store call writes back. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * sfu: drop a dependency descriptor whose chains do not match the structure The parser takes a new structure from any packet, but DDForwarder keeps the structure of the last packet it forwarded. When the publisher attached a structure with fewer chains to a packet this downtrack dropped, the next descriptor had fewer chain diffs than the forwarder's structure, and the writer indexed past them. The forwarder now drops such a packet, and the writer returns an error instead of indexing past the chain diffs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * deps: bump mediatransportutil for the empty VP9 payload fix A VP9 packet without a dependency descriptor and with a 1-byte payload such as 0x08 parses to an empty VP9 payload, and IsVP9KeyFrame read its first byte. mediatransportutil#106 returns false for an empty payload. This pins the transport-v4 commit that carries it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * sfu: keep the template test comment with its test Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * dynacast: create the target quality only for a valid regression A target quality starts a timer that notifies the publisher. Look it up only after the source codec is found, so a rejected regression creates nothing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * service: restore the internal defaults for a room that lost them A stored room without an internal record now gets the configured playout delay and sync streams defaults. Its own settings, such as the empty timeout and codecs, stay as stored. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
175 lines
7.2 KiB
AMPL
175 lines
7.2 KiB
AMPL
module github.com/livekit/livekit-server
|
|
|
|
go 1.26.0
|
|
|
|
require (
|
|
github.com/bep/debounce v1.2.1
|
|
github.com/d5/tengo/v2 v2.17.0
|
|
github.com/dennwc/iters v1.2.2
|
|
github.com/dustin/go-humanize v1.1.0
|
|
github.com/elliotchance/orderedmap/v3 v3.1.1
|
|
github.com/florianl/go-tc v0.4.8
|
|
github.com/frostbyte73/core v0.1.1
|
|
github.com/gammazero/deque v1.2.1
|
|
github.com/gammazero/workerpool v1.2.1
|
|
github.com/google/uuid v1.6.0
|
|
github.com/google/wire v0.7.0
|
|
github.com/gorilla/websocket v1.5.3
|
|
github.com/hashicorp/go-version v1.9.0
|
|
github.com/hashicorp/golang-lru/v2 v2.0.7
|
|
github.com/jellydator/ttlcache/v3 v3.4.1
|
|
github.com/jxskiss/base62 v1.1.0
|
|
github.com/livekit/mageutil v0.0.0-20250511045019-0f1ff63f7731
|
|
github.com/livekit/mediatransportutil v0.0.0-20261031131214-dec4ac0eba7c
|
|
github.com/livekit/protocol v1.53.2-0.20261029173217-b8c797a0e8f3
|
|
github.com/livekit/psrpc v0.8.2
|
|
github.com/mackerelio/go-osstat v0.2.8
|
|
github.com/magefile/mage v1.17.2
|
|
github.com/mitchellh/go-homedir v1.1.0
|
|
github.com/moby/moby/client v0.6.1
|
|
github.com/olekukonko/tablewriter v1.1.4
|
|
github.com/ory/dockertest/v4 v4.0.0
|
|
github.com/pion/datachannel v1.6.3
|
|
github.com/pion/dtls/v3 v3.1.9
|
|
github.com/pion/ice/v4 v4.4.0
|
|
github.com/pion/interceptor v0.1.49
|
|
github.com/pion/rtcp v1.2.19
|
|
github.com/pion/rtp v1.10.5
|
|
github.com/pion/sctp v1.12.0
|
|
github.com/pion/sdp/v3 v3.0.20
|
|
github.com/pion/transport/v4 v4.1.3
|
|
github.com/pion/turn/v5 v5.0.13
|
|
github.com/pion/webrtc/v4 v4.2.18
|
|
github.com/pires/go-proxyproto v0.15.0
|
|
github.com/pkg/errors v0.9.1
|
|
github.com/prometheus/client_golang v1.24.1
|
|
github.com/quic-go/quic-go v0.63.0
|
|
github.com/quic-go/webtransport-go v0.12.0
|
|
github.com/redis/go-redis/v9 v9.22.0
|
|
github.com/rs/cors v1.11.1
|
|
github.com/stretchr/testify v1.12.1
|
|
github.com/thoas/go-funk v0.9.3
|
|
github.com/tomnomnom/linkheader v0.0.0-20250811210735-e5fe3b51442e
|
|
github.com/twitchtv/twirp v8.1.3+incompatible
|
|
github.com/ua-parser/uap-go v0.0.0-20260529044130-17c35e68e58c
|
|
github.com/urfave/negroni/v3 v3.1.1
|
|
go.uber.org/atomic v1.12.0
|
|
go.uber.org/multierr v1.11.0
|
|
go.uber.org/zap v1.28.0
|
|
golang.org/x/mod v0.41.0
|
|
golang.org/x/sync v0.23.0
|
|
google.golang.org/protobuf v1.36.12
|
|
gopkg.in/yaml.v3 v3.0.1
|
|
)
|
|
|
|
require (
|
|
cel.dev/cel-go v0.32.0 // indirect
|
|
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
|
|
github.com/cilium/ebpf v0.22.0 // indirect
|
|
github.com/clipperhouse/displaywidth v0.11.0 // indirect
|
|
github.com/clipperhouse/uax29/v2 v2.7.0 // indirect
|
|
github.com/containerd/errdefs v1.0.0 // indirect
|
|
github.com/containerd/errdefs/pkg v0.3.0 // indirect
|
|
github.com/distribution/reference v0.6.0 // indirect
|
|
github.com/dunglas/httpsfv v1.1.0 // indirect
|
|
github.com/fatih/color v1.19.0 // indirect
|
|
github.com/felixge/httpsnoop v1.1.0 // indirect
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
|
github.com/goccy/go-json v0.10.6 // indirect
|
|
github.com/golang-jwt/jwt/v5 v5.3.1 // indirect
|
|
github.com/gotesttools/gotestfmt/v2 v2.5.0 // indirect
|
|
github.com/grpc-ecosystem/grpc-gateway/v2 v2.30.0 // indirect
|
|
github.com/mattn/go-colorable v0.1.15 // indirect
|
|
github.com/mattn/go-isatty v0.0.22 // indirect
|
|
github.com/maxbrunsfeld/counterfeiter/v6 v6.14.0 // indirect
|
|
github.com/moby/moby/api v1.56.1 // indirect
|
|
github.com/nyaruka/phonenumbers v1.8.1 // indirect
|
|
github.com/olekukonko/cat v0.0.0-20250911104152-50322a0618f6 // indirect
|
|
github.com/olekukonko/errors v1.3.0 // indirect
|
|
github.com/olekukonko/ll v0.1.8 // indirect
|
|
github.com/petermattis/goid v0.0.0-20260918085751-abfca077860b // indirect
|
|
github.com/pion/transport/v5 v5.1.1 // indirect
|
|
github.com/puzpuzpuz/xsync/v4 v4.5.0 // indirect
|
|
github.com/quic-go/qpack v0.6.0 // indirect
|
|
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
|
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.70.0 // indirect
|
|
go.opentelemetry.io/otel v1.47.0 // indirect
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.46.0 // indirect
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.46.0 // indirect
|
|
go.opentelemetry.io/otel/log v1.47.0 // indirect
|
|
go.opentelemetry.io/otel/metric v1.47.0 // indirect
|
|
go.opentelemetry.io/otel/sdk v1.46.0 // indirect
|
|
go.opentelemetry.io/otel/trace v1.47.0 // indirect
|
|
go.opentelemetry.io/proto/otlp v1.11.0 // indirect
|
|
go.yaml.in/yaml/v3 v3.0.5 // indirect
|
|
golang.org/x/exp v0.0.0-20261005173118-76772065c9b0 // indirect
|
|
golang.org/x/telemetry v0.0.0-20260924152758-ed294f943157 // indirect
|
|
golang.org/x/time v0.16.0 // indirect
|
|
)
|
|
|
|
require (
|
|
buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.12-20260825204119-511051f7f437.2 // indirect
|
|
buf.build/go/protovalidate v1.4.0 // indirect
|
|
buf.build/go/protoyaml v0.7.0 // indirect
|
|
cel.dev/expr v0.25.3 // indirect
|
|
github.com/Microsoft/go-winio v0.6.2 // indirect
|
|
github.com/antlr4-go/antlr/v4 v4.13.1 // indirect
|
|
github.com/benbjohnson/clock v1.3.5 // indirect
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
|
github.com/docker/go-connections v0.8.1 // indirect
|
|
github.com/docker/go-units v0.5.0 // indirect
|
|
github.com/fsnotify/fsnotify v1.10.1 // indirect
|
|
github.com/go-logr/logr v1.4.4 // indirect
|
|
github.com/google/go-cmp v0.7.0 // indirect
|
|
github.com/google/subcommands v1.2.0 // indirect
|
|
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
|
github.com/hashicorp/go-retryablehttp v0.7.8 // indirect
|
|
github.com/hashicorp/golang-lru v1.0.2 // indirect
|
|
github.com/josharian/native v1.1.0 // indirect
|
|
github.com/klauspost/compress v1.20.1 // indirect
|
|
github.com/klauspost/cpuid/v2 v2.4.0 // indirect
|
|
github.com/lithammer/shortuuid/v4 v4.3.0 // indirect
|
|
github.com/mattn/go-runewidth v0.0.24 // indirect
|
|
github.com/mdlayher/netlink v1.11.2 // indirect
|
|
github.com/mdlayher/socket v0.6.1 // indirect
|
|
github.com/moby/docker-image-spec v1.3.1 // indirect
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
|
github.com/opencontainers/go-digest v1.0.0 // indirect
|
|
github.com/opencontainers/image-spec v1.1.1 // indirect
|
|
github.com/pion/logging v0.2.4
|
|
github.com/pion/mdns/v2 v2.2.2 // indirect
|
|
github.com/pion/randutil v0.1.0 // indirect
|
|
github.com/pion/srtp/v3 v3.0.13 // indirect
|
|
github.com/pion/stun/v3 v3.1.7
|
|
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
|
github.com/prometheus/client_model v0.6.3
|
|
github.com/prometheus/common v0.72.0 // indirect
|
|
github.com/prometheus/procfs v0.22.0 // indirect
|
|
github.com/urfave/cli/v3 v3.11.0
|
|
github.com/wlynxg/anet v0.0.5 // indirect
|
|
github.com/zeebo/xxh3 v1.1.0 // indirect
|
|
go.uber.org/zap/exp v0.3.0 // indirect
|
|
golang.org/x/crypto v0.57.0 // indirect
|
|
golang.org/x/net v0.59.0
|
|
golang.org/x/sys v0.48.0 // indirect
|
|
golang.org/x/text v0.42.0 // indirect
|
|
golang.org/x/tools v0.51.0 // indirect
|
|
google.golang.org/genproto/googleapis/api v0.0.0-20261005182115-fad411399dd8 // indirect
|
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20261005182115-fad411399dd8 // indirect
|
|
google.golang.org/grpc v1.84.0 // indirect
|
|
)
|
|
|
|
tool (
|
|
github.com/google/wire/cmd/wire
|
|
github.com/gotesttools/gotestfmt/v2/cmd/gotestfmt
|
|
github.com/maxbrunsfeld/counterfeiter/v6
|
|
golang.org/x/tools/cmd/goimports
|
|
)
|
|
|
|
replace github.com/pion/webrtc/v4 => github.com/livekit/webrtc-pion/v4 v4.2.18-warp.7
|
|
|
|
replace github.com/pion/dtls/v3 => github.com/livekit/dtls/v3 v3.1.5-warp.3
|
|
|
|
replace github.com/pion/ice/v4 => github.com/livekit/ice/v4 v4.4.0-warp.3
|