mirror of
https://github.com/openlibrecommunity/olcrtc.git
synced 2026-05-26 15:13:40 +00:00
35e6c16333fee366a8ea149a5f44cfe5f2af34d9
session.Config used to spread 16 per-transport tuning fields across its top level (VideoWidth/Height/.../VP8FPS/.../SEIAckTimeoutMS). The flat layout meant every caller had to know which fields belong to which transport, and the YAML→session bridge in internal/config repeated the same name 32 times across Apply/ApplyProfile. Group them under VideoConfig/VP8Config/SEIConfig structs hung off session.Config. internal/config now does e.g. dst.Video.Width = pickInt(dst.Video.Width, f.Video.Width) instead of touching dst.VideoWidth. session.ApplyTransportDefaults, validateVideoChannel/VP8Channel/SEIChannel and buildTransportOptions read through cfg.Video.*/cfg.VP8.*/cfg.SEI.* in the same way. The YAML schema itself was already grouped (Video / VP8 / SEI sections); this commit lines session.Config up with it so the Apply functions can mirror the YAML structure 1:1 instead of unpacking it into 32 flat assignments. All session/config/e2e/cmd/main tests that referenced cfg.VideoX directly are updated to cfg.Video.X. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
About
olcRTC - across the sea
Project that allows users to bypass blocking by parasitizing and tunneling on unblocked and whitelisted services in Russia, use legal webRTC services
Status
Beta
See all info in issues
Issues? contact us at @openlibrecommunity
Or wait for the release or at least a release
Community ui client: alananisimov/olcbox
Read docs for start
Build
# install mage first
go install github.com/magefile/mage@latest
# build cli + ui
mage build
# build cli only
mage buildCLI
# build cli with b codec, clones b repo, builds libb.so, compiles with -tags b
mage buildCLIB
# cross-compile for linux / windows / darwin
mage cross
# android aar via gomobile
mage mobile
# container image
mage podman
mage docker
# lint / test / clean
mage lint
mage test
mage clean
Telegram: zarazaex
Email: zarazaex@tuta.io
Site: zarazaex.xyz
Made for: olcNG
Languages
Go
90.5%
Python
5.6%
Shell
3.7%
Dockerfile
0.2%
