salmon-cricket-95331
11/08/2022, 8:36 AMsalmon-cricket-95331
11/08/2022, 8:38 AM# main TCP port for RoomService and RTC endpoint
# for production setups, this port should be placed behind a load balancer with TLS
port: 7880
log_level: info
# when redis is set, LiveKit will automatically operate in a fully distributed fashion
# clients could connect to any node and be routed to the same room
redis:
address: 127.0.0.1:6379
# To require TLS transport
# use_tls: true
# db: 0
# username: myuser
# password: mypassword
# To use sentinel remove the address key above and add the following
# sentinel_master_name: livekit
# sentinel_addresses:
# - livekit-redis-node-0.livekit-redis-headless:26379
# - livekit-redis-node-1.livekit-redis-headless:26379
# If you use a different set of credentials for sentinel add
# sentinel_username: user
# sentinel_password: pass
# WebRTC configuration
rtc:
# UDP ports to use for client traffic.
# this port range should be open for inbound traffic on the firewall
# udp_port: 7882
port_range_start: 50006
port_range_end: 60000
# when set, LiveKit enable WebRTC ICE over TCP when UDP isn't available
# this port *cannot* be behind load balancer or TLS, and must be exposed on the node
# WebRTC transports are encrypted and do not require additional encryption
# only 80/443 on public IP are allowed if less than 1024
tcp_port: 7881
# when set to true, attempts to discover the host's public IP via STUN
# this is useful for cloud environments such as AWS & Google where hosts have an internal IP
# that maps to an external one
use_external_ip: true
# # when set, LiveKit will attempt to use a UDP mux so all UDP traffic goes through
# # a single port. This simplifies deployment, but mux will become an overhead for
# # highly trafficked deployments.
# # port_range_start & end must not be set for this config to take effect
# # when set to true, server will use a lite ice agent, that will speed up ice connection, but
# # might cause connect issue if server running behind NAT.
# use_ice_lite: true
# # optional STUN servers for LiveKit clients to use. Clients will be configured to use these STUN servers automatically.
# # by default LiveKit clients use Google's public STUN servers
# stun_servers:
# - server1
# # optional TURN servers for clients. This isn't necessary if using embedded TURN server (see below).
# turn_servers:
# - host: <http://myhost.com|myhost.com>
# port: 443
# # tls, tcp, or udp
# protocol: tls
# username: ""
# credential: ""
# # allows LiveKit to monitor congestion when sending streams and automatically
# # manage bandwidth utilization to avoid congestion/loss. Enabled by default
# congestion_control:
# enabled: true
# # in the unlikely event of highly congested networks, SFU may choose to pause some tracks
# # in order to allow others to stream smoothly. You can disable this behavior here
# allow_pause: true
# # allows automatic connection fallback to TCP and TURN/TLS (if configured) when UDP has been unstable, default true
# allow_tcp_fallback: true
# # number of packets to buffer in the SFU, defaults to 500
# packet_buffer_size: 500
# # minimum amount of time between pli/fir rtcp packets being sent to an individual
# # producer. Increasing these times can lead to longer black screens when new participants join,
# # while reducing them can lead to higher stream bitrate.
# pli_throttle:
# low_quality: 500ms
# mid_quality: 1s
# high_quality: 1s
# # network interface filter. If the machine has more than one network interface and you'd like it to use or skip specific interfaces
# # both inclusion and exclusion filters can be used together. If neither is defined (default), all interfaces on the machine will be used.
# # If both of them are set, then only include takes effect.
# interfaces:
# includes:
# - en0
# excludes:
# - docker0
# # ip address filter. If the machine has more than one ip address and you'd like it to use or skip specific ips,
# # both inclusion and exclusion CIDR filters can be used together. If neither is defined (default), all ip on the machine will be used.
# # If both of them are set, then only include takes effect.
# ips:
# includes:
# - 10.0.0.0/16
# excludes:
# - 192.168.1.0/24
# when enabled, LiveKit will expose prometheus metrics on :6789/metrics
# prometheus_port: 6789
# API key / secret pairs.
# Keys are used for JWT authentication, server APIs would require a keypair in order to generate access tokens
# and make calls to the server
keys:
API8k8Yb21ZRzmKpz: AOt8guwcvpj32YQjIYiPWiiBiw2V8VacxqkXSrb2X6ehX
# key2: AOt8guwcvpjYQjIYiPWiiBiw2V8VacxqkXSrb2X6ehX
# Logging config
# logging:
# # log level, valid values: debug, info, warn, error
# level: info
# # log level for pion, default error
# pion_level: error
# # when set to true, emit json fields
# json: false
# # for production setups, enables sampling algorithm
# # <https://github.com/uber-go/zap/blob/master/FAQ.md#why-sample-application-logs>
# sample: false
# Default room config
# Each room created will inherit these settings. If rooms are created explicitly with CreateRoom, they will take
# precedence over defaults
# room:
# # allow rooms to be automatically created when participants join, defaults to true
# # auto_create: false
# # number of seconds to leave a room open when it's empty
# empty_timeout: 300
# # limit number of participants that can be in a room, 0 for no limit
# max_participants: 0
# # only accept specific codecs for clients publishing to this room
# # this is useful to standardize codecs across clients
# # other supported codecs are video/h264
# enabled_codecs:
# - mime: audio/opus
# - mime: video/vp8
# # allow tracks to be unmuted remotely, defaults to false
# # tracks can always be muted from the Room Service APIs
# enable_remote_unmute: true
# # limit size of room and participant's metadata, 0 for no limit
# max_metadata_size: 0
# Webhooks
# when configured, LiveKit notifies your URL handler with room events
# webhook:
# # the API key to use in order to sign the message
# # this must match one of the keys LiveKit is configured with
# api_key: <api_key>
# # list of URLs to be notified of room events
# urls:
# - <https://your-host.com/handler>
# customize audio level sensitivity
# audio:
# # minimum level to be considered active, 0-127, where 0 is loudest
# # defaults to 30
# active_level: 30
# # percentile to measure, a participant is considered active if it has exceeded the
# # ActiveLevel more than MinPercentile% of the time
# # defaults to 40
# min_percentile: 40
# # frequency in ms to notify changes to clients, defaults to 500
# update_interval: 500
# # to prevent speaker updates from too jumpy, smooth out values over N samples
# smooth_intervals: 4
salmon-cricket-95331
11/08/2022, 8:39 AMsteep-balloon-41261
11/08/2022, 11:58 AMsteep-balloon-41261
11/08/2022, 12:51 PMsteep-balloon-41261
11/08/2022, 1:22 PMsteep-balloon-41261
11/08/2022, 9:51 PMgreat-pencil-7631
11/08/2022, 10:49 PM<video _src_*=*{subscribedTracks[0]*?.*_track_*.*_mediaStream_}></video>;
renders as this:
<video src="[object MediaStream]"></video>
what am I missing?great-pencil-7631
11/08/2022, 11:12 PMuseEffect(() *=>* {
const el *=* ref*.*_current_;
*if* (*!*el) {
*return*;
}
el*.*_muted_
*=* true;
track*?.*attach(el); // call the attach..
*return* () *=>* {
track*?.*detach(el);
};
}, [track, ref]);
*return* <video _ref_*=*{ref} />;
steep-balloon-41261
11/08/2022, 11:12 PMsteep-balloon-41261
11/09/2022, 3:26 AMsteep-balloon-41261
11/09/2022, 7:02 AMsteep-balloon-41261
11/09/2022, 1:57 PMsteep-balloon-41261
11/10/2022, 1:37 AMsteep-balloon-41261
11/10/2022, 6:19 AMfull-arm-49889
11/10/2022, 12:39 PMsteep-balloon-41261
11/10/2022, 12:53 PMfew-flag-99144
11/10/2022, 1:23 PMsteep-balloon-41261
11/11/2022, 3:26 AMsteep-balloon-41261
11/11/2022, 9:55 AMmysterious-area-94622
11/11/2022, 6:43 PMsteep-balloon-41261
11/11/2022, 6:55 PMsteep-balloon-41261
11/12/2022, 6:57 AMsteep-balloon-41261
11/12/2022, 9:18 PMsteep-balloon-41261
11/14/2022, 11:31 PMsteep-balloon-41261
11/15/2022, 2:08 AMsteep-balloon-41261
11/15/2022, 9:34 AMsteep-balloon-41261
11/15/2022, 8:03 PMlemon-animal-25306
11/15/2022, 8:03 PMEntryPointNotFoundException: PushString assembly:<unknown assembly> type:<unknown type> member:(null)
LiveKit.Room.GetLocalDevices (System.Nullable`1[T] kind, System.Nullable`1[T] requestPermissions) (at Library/PackageCache/io.livekit.unity@20a7cdbbc3/Runtime/Scripts/Room/Room.cs:424)
JoinHandler+<StartPreviewCamera>d__29.MoveNext () (at Assets/Scripts/JoinHandler.cs:101)
UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at /Users/bokken/buildslave/unity/build/Runtime/Export/Scripting/Coroutines.cs:17)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
JoinHandler:Start() (at Assets/Scripts/JoinHandler.cs:60)