Žaidėjų pokalbių programa – Windows ir Android
Naujausia versijaVersija 0.4.69
Puslapį generuoja serveris – visada rodo abu parsisiuntimus. Jei mygtukas pilkas, trūksta failo aplanke updates/releases/.
v0.4.69 **DM LiveKit (svarbu abiem pusėms):** po ragelio / kai kitas baigia skambutį – teisingas `call-reject`, juodos „rejoin“ zonos valymas, laikmačio stabdymas, „šmėžo“ connected būsenos aptikimas; antras padėjęs ragelį siunčia signalą, jei kitas jau išėjo iš SFU (`_dmLkRemoteHasLeft`). **Visi skambinantys per LiveKit DM turėtų atsinaujinti** – kitaip viena pusė gali rodyti vykstantį skambutį be tikro ryšio. v0.4.68 **DM LiveKit:** Tauri `invoke` argumentai – `peerId` / `isCaller` / `connectedAtMs` (camelCase); sutaisyta klaida „missing required key peerId“ ties `livekit_dm_call_session_set`. Atnaujink visus, kurie skambina per SFU. v0.4.67 **DM skambučiai per LiveKit SFU:** balso pokalbiai draugams (be vaizdo) eina per tą patį SFU kaip serverio balso kanalas – `GET /api/livekit-token-dm`, `dm-livekit-call.js`, Rust `livekit_dm_call` / media būsena. Signaling lieka kvietimui (call-invite / accept); SDP/ICE tarp peer’ų nebereikia šiam keliui. **Serveryje (116):** `pm2 restart gamespeak-auth` po auth-server deploy. Vaizdo DM skambučiai kol kas lieka senu WebRTC keliu. v0.4.66 **LiveKit voice (Tauri):** sutvarkyta `gamespeakLivekitConnect is not a function` – Vite surinktas `voice-livekit.js` neturi named `export`, todėl `import()` grąžindavo tuščią modulį; API dabar dar ir `window.__GAMESPEAK_VOICE_LIVEKIT__`. Atnaujink visus, kurie naudoja serverio balso kanalą. v0.4.65 **Balsas:** jei kliente nustatytas LiveKit URL, prisijungimas prie SFU dabar privalomas – klaida nebetyliai perjungia į seną mesh (tai keldavo „vienas kambaryje, kitas ne“ ir negirdėjimą). Mesh lieka tik kai LiveKit serveryje neįjungtas (503) arba build be `livekitUrl`. v0.4.64 **Balso kanalas per LiveKit (SFU):** `voice-rust.js` + `voice-livekit.js` (Vite), tokenas iš auth **`GET /api/livekit-token`**; jei LiveKit nepasiekiamas – mesh fallback. Rust: `livekit_voice_session_set` / media būsena. **116:** `LIVEKIT_*` `config.env` + `livekit-server-sdk`. Atnaujink klientą; serverio balso kanalas dabar gali eiti per **138** SFU. v0.4.63 Runtime: **LiveKit SFU URL** iš `update-config.json` (`LIVEKIT_URL`) → `config.js` (`livekitUrl`) ir Rust (`runtime_config_set` / `get_livekit_url`). Numatytai Cloud medija **138** `ws://138.199.214.80:7880` (vėliau `wss://` su domenu). Kol kas tiltas konfigūracijai – pilnas LiveKit klientas voice – sekančiu etapu. v0.4.62 DM skambuciai: **trickle ICE išeinantis** – Rust siunčia `webrtc-ice-candidate` tiesiai per centr. WebSocket (`signaling_send_webrtc_ice_to_peer`), be Tauri emit į JS; fallback į `call-ice-candidate` tik jei WS dar neprisijungęs. **Atsakymas (answer)** – `webrtc-answer` pirmiausia pritaikomas Rust (`call_handle_answer` iš signalų ciklo), `dm-webrtc-answer` į JS tik jei nepavyko. Mažiau tilto delsių ir dubliavimo. Atnaujink abu. v0.4.61 DM skambuciai: `webrtc-ice-candidate` is Rust WS dabar **tiesiai** i `call_add_ice` (be JS `invoke`), jei aktyvus skambutis – isvengiama dev HMR / „Couldn't find callback id“ ir ICE eilės. Jei skambucio dar nera – kaip anksciau emit i JS. Atnaujink abu. v0.4.60 DM skambuciai: Rust signaling (`p2p.rs`) nebededa `webrtc-ice-candidate` i P2P failu PC kai `P2P_FILE_TRANSFER_DISABLED` ? senas `target_id` match budavo suvalgydavo ICE, DM `call_add_ice` niekada negaudavo ? no candidate pairs / Jungiamasi. Atnaujink abu. v0.4.59 DM skambuciai (gavejas): CALL_PEERS write lock atleidziamas iskart po answer/SLD ? call_add_ice gali priimti trickle ICE kol paleidziamas mikrofonas (sutaiso be ICE poru / amzina Jungiamasi kai skambina is VPN ir pan.). call-rust.js: addIce be privalomo __mediaSession.peerId. Signaling WS: fromId skaicius arba eilute (p2p.rs). Atnaujink abu. v0.4.58 DM / TURN: numatytai tik **1** lygiagretus ne-stun TURN URL (buvo 4) ? vienas Allocate i coturn, maziau nonce/attribute not found. Daugiau bandymu: GAMESPEAK_ICE_MAX_TURN_URLS=4. Atnaujink abu. v0.4.57 DM / TURN: ribojamas lygiagretus turn:/turns: URL skaicius (numatytai max 4 ne-stun), kad coturn nebemestu 438 Wrong/Stale nonce ir kliente nebekiltu attribute not found / be ICE poru per VPN ar griezta FW. Visi URL kaip anksciau: GAMESPEAK_ICE_MAX_TURN_URLS=0. Atnaujink abu skambincius. v0.4.56 DM garso kelias: dinaminis grojimo buferis (trumpas iki ICE relay arba relay_only, ilgesnis po relay). Diagnostika: invoke call_audio_diagnostic_snapshot -> dmPlayback (eil?, backpressure, relayExpand). GAMESPEAK_AUDIO_PROFILE + etapai 1-3. Testuok su kitu PC per atnaujinim?. Atnaujink abu. v0.4.55 Pilnas release ir deploy: Windows installer + latest.json serveryje. Apima 0.4.54 WSS TLS signalizacija (rustls), ilgesni ICE laikai TURN TCP/TLS. Atnaujink visus. v0.4.54 DM / isorinis tinklas: Rust signaling_connect (wss://) naudoja tokio-tungstenite su TLS (rustls); be to budavo TLS support not compiled in ir skambuciai lauze mobilu/isore. ICE laikas siek tiek ilgesnis TURN TCP/TLS per letu tinklu. LAN palikta kaip 0.4.53 (P2P_RELAY_ONLY false). Jei mobilus vis dar stringa: abiejose pusese localStorage gamespeak_dm_force_relay = 1 (tik TURN) arba patikrink TURN :443 (scripts/verify-turn-api.ps1). Atnaujink visus. v0.4.53 Avarinis: P2P_RELAY_ONLY vel false (LAN + ICE kopeticios). handleAnswer retry i Rust be griezto JS peerId (sutaiso amzina Jungiamasi). ICE _rustCallIcePeerId is 0.4.52 palikta. Atnaujink visus. v0.4.52 DM skambuciai: pataisytas ICE race kai priimama skambuti (mobile / letas sync) ? `_rustCallIcePeerId`, laukimas kol `RustCall.peerId` sutampa prie siun?iant answer, ilgesnis `call_add_ice` retry, `handleAnswer` laukia peerId. Numatytai TURN relay (`P2P_RELAY_ONLY`) patikimumui per mobilu. Atnaujink abu skambincius. v0.4.51 Klientas: numatyti API ir signalizacija per HTTPS ir WSS (api.gamespeak.pro, signal.gamespeak.pro, Let's Encrypt). Atnaujink visus vartotojus. v0.4.50 ? Skambuciai: ICE kopeticios STUN ? TURN UDP ? TCP ? TURNS (TLS) paskutinis; `iceTransportPolicy::All` ? LAN/P2P kai iseina, TURN kai reikia. TURN TCP numatytai ijungta (`ICE_TURN_TCP` / iceTurnTcp). DM: `gamespeak_dm_force_relay` tik kai reikia; vaizdas be klaidingo stun:auth:3478. Serverio TURN: plain 443 + TLS 5349 (config). Atnaujink visus skambuciams. v0.4.49 ? Desktop: TURNS (TLS) ICE URL (`turns:`) nebeismetami ? pilnas kelias su serverio TURNS ant 443 (grieztesne uzkarda, TCP 443). v0.4.48 ? DM vaizdas: ?einantis skambutis ? ?Tik garsas? / ?Su kamera?; kameros mygtukas veikia ir paprastame balso skambutyje; pataisytas ?Su kamera? pri?mimo mygtukas (HTML hidden). v0.4.47 ? Pilnas release: nauja kliento versija, atnaujintas latest.json serveryje, PM2 perkrauta (auth, signaling, update). v0.4.46 ? **ICE protingesnis eili?kumas:** po filtro URL surikiuojami: STUN (443, 3478) ? TURN UDP 443 ? TURN UDP 3478 ? TURN TCP (tik jei ijungta). Geriau mobile data / LAN P2P (greitesnis srflx), TURN TCP neapkrauna visiems ? tik `ICE_TURN_TCP` / `iceTurnTcp` build arba `GAMESPEAK_ICE_TURN_TCP=1`. ? ~0.4.42 mobilus elgesys + campus opt-in. v0.4.45 ? **TURN per TCP (campus / firewall):** vendor `webrtc-ice` ? STUN/TURN ant paprasto TCP su RFC 5389 2-baitu ilgio kadrais; `turn:?transport=tcp` vel naudojamas (TLS `turns:` dar ne). Universitetu tinklai, kur UDP iki TURN uzkerta, turetu gauti relay kandidatus ir rysi su pasauliu. Atnaujink klienta; serverio TURN (coturn) TCP 443/3478 kaip ir buvo. v0.4.44 ? **ICE (Tauri):** signalizuojant per Rust nebemesti nuotoliniu host/srflx kandidatu (`p2p.rs` webrtc-ice-candidate, `p2p_add_ice_candidate`). Be ju TURN relay negalejo suporuotis su kito zmogaus vie?u adresu ? ?Jungiamasi?? / max requests reached. **Balso kanalas:** ta pati klaida su `relay_only` ? nuotoliniai ne-relay vel priimami. **Garsas:** RNNoise (nnnoiseless) pries Opus; nustatymuose `noiseSuppression` (numatytai ijungta). Visi tolimi skambuciai ? atnaujink abu klijentus. v0.4.42 ? DM/voice: **libopus** (kratas `opus` 0.3) vietoj `opus-rs`; `vendor/opus-rs` pa?alinta. Build: CMake + MSVC. ?r. `.cursor/rules/gamespeak-handoff.mdc` ? Opus skyrius. v0.4.41 ? opus-rs vendor patch (`bands.rs` fill mask): panic index 4095 / triuk?mas; be cmake (libopus ne?diegtas ? palikta atei?iai). v0.4.40 ? Leidimas visiems: DM Opus 96 kb/s, FEC 2, atk?rimo triuk?mo slopinimas (kaip 0.4.39); build + deploy ant atnaujinim? serverio. v0.4.39 ? DM balsas: Opus 96 kb/s (buvo 64), FEC packet_loss 2 (buvo 5); atk?rime ?velnus ?emo lygio triuk?mo slopinimas po dekodo. v0.4.38 ? DM ICE: build'e v?l `P2P_RELAY_ONLY=false` (host/srflx + TURN), nes relay-only paliko tik relay?relay kelius ir loguose `max requests reached` / ICE timeout. Auth API: visada `turn:?:443?transport=tcp` ir `turn:?:3478?transport=tcp` (fallback). UI: `call-ended` (ICE timeout) dabar kvie?ia `finalizeRustCallHangup()` ? i?valoma signalizacija, galima i?kart skambinti v?l. Rust: ilgesni ICE agent timeouts; 60 s ?connected? deadline. Po deploy: **pm2 restart gamespeak-auth** (naujas server.js). Cloud 138: firewall turi leisti **UDP 49152?65535** (coturn relay) + 3478/443. v0.4.37 ? DM skambu?iai: build'e ?jungtas priverstinis TURN relay-only (`P2P_RELAY_ONLY=true`) visiems klientams; sutvarkytas cloud TURN (138) 3478+443 ir quota ribos, kad nebekrist? `486 Allocation Bandwidth Quota Reached`. Po deploy: pm2 restart auth/signaling/update. v0.4.36 ? DM skambutis: nuotolinio garso **perjungimas tarp dviej? `on_track`**, jei pirmas takelis ~800 ms negauna RTP ? i?vengiama tylos kai tikras srautas ant antro takelio; `session_stop` + decode `abort`; serverio balso kanalas atnaujintas (`spawn_remote_playback` API). Po deploy: pm2 restart (auth / update / signaling). v0.4.35 ? Skambu?iai / medija: auth TURN ? numatytai **138 Cloud** (`DEFAULT_MEDIA_RELAY_HOST`); `TURN_3478_RELAY_HOSTS` automati?kai sujungiama su relay s?ra?u ? visada si?lomas `turn:138:3478` net jei `TURN_RELAY_443_HOSTS` buvo tik DB serveris (116). Mikrofono kodavimas: ma?iau dirbtinio 20 ms delsimo kai eil?je dar yra r?meli? (ma?esnis ?queue? jitter). Opus: hybrid + complexity 8 + FEC; ?vesties `inputVolume` i? prefs; grojimo fade sutrumpintas; i?vesties perjungimas skambutyje + pypt; garso ?rengini? atitikmuo (score). Diagnostika: `call_audio_diagnostic_snapshot` / `GAMESPEAK_CALL_AUDIO_DIAG=1`. Po deploy: **pm2 restart gamespeak-auth** (?keltas auth-server.js). v0.4.34 ? DM grojimas: nebetrumpinamas Opus r?melis, kai grojimo eil? trumpam pilna (ma?iau trak??jimo / ?triuk?mo?). Auth numatytai TURN UDP 3478 ir 443 pirmenyb? **Hetzner Cloud medijai (138.199.214.80)** ? ne apkrauti 116; `config.env`: `TURN_3478_RELAY_HOSTS` + `TURN_RELAY_PREFER_HOST`. Po deploy: ant **138** coturn + tas pats `TURN_AUTH_SECRET`, Cloud firewall UDP 3478 ir 49152?65535; `pm2 restart` auth serveryje (116). v0.4.33 ? DM skambutis (garsas): C920 / USB mik ? bandymai mono+stereo 48 kHz ir `supported_input_configs` (pataisytas ?build_input_stream ? not supported? ? ispanas ir kiti v?l girdi tave); mikrofono eil? ? burst kodavimas, backlog kirpimas >~600 ms, didesnis kanalas (ma?iau ?perpildyta? ir ~2 s queue); grojimas ? U8/I8 i?vestis, DC+fade; DM UI poll 1 s. Visi ant senesni? versij? ? ?diekite ?? atnaujinim?. v0.4.32 ? DM UI poll: pa?alintas dvigubas `syncDmCallMicUi` (updateCallBar + laikmatis); `call_poll_dm_mic_ui` vietoj atskir? mute + mic_meter ? ma?iau `invoke` triuk?mo (garsas ? atskira RTP grandin?) v0.4.31 ? DM skambutis: mikrofono b?sena i? `call_get_mute` kai UI faz? calling/connecting/connected (ne `voice_get_mute` mai?ymas); vienas 500ms UI laikmatis; skambu?io pabaiga ? `call-reject` ir gav?jo `connected` (kartu su ankstesniu JS) v0.4.30 ? DM skambutis: abiejose pus?se `receiver.receive()` prie? RTP/RTCP (skambintojas + atsakantis) ? pilnas RTP pri?m?jo startas (webrtc-rs) v0.4.29 ? DM skambutis: garsas po ICE ? RTP pri?m?jo RTCP skaitymas (webrtc-rs); Opus mono (channels 1) suderinta su kodu v0.4.28 ? DM skambutis: ICE relayOnly numatytai i?jungtas (pataisytas JS/Rust default ? nebe ?undefined? ? tik TURN); platesnis ICE kelias (host/srflx + TURN) v0.4.27 ? Atnaujinim? pasira?ymas: naujas Tauri signing raktas ir pubkey (b?tina versija visiems po rakto keitimo; ?diek ?? build, kad automatiniai atnaujinimai v?l veikt?) v0.4.26 ? Atnaujinimai: serverUrl sinchronizuojamas su Rust (runtime_config_set / get_update_server_url); patikimesnis latest.json pasiekiamumas; visi ant 0.4.24?0.4.25 tur?t? matyti ?? leidim? po deploy v0.4.25 ? DM skambutis: call-rust.js perduoda relayOnly/stunOnly i? get_webrtc_credentials (runtime p2pRelayOnly); ICE politika Relay tarptinkliniams skambu?iams (nebe ?All? pagal nutyl?jim?) v0.4.23 ? Garsas: pilnas WASAPI ?rengini? s?ra?as nustatymuose ir user-bar (WebView rod? tik 1 ?rengin? ? mergeNativeWithWebDevices); mikrofono testas su gs-native:*; atnaujinimui ? build + deploy v0.4.22 ? DM skambutis: atskiras call_get_mute nuo voice; hard reset prie? nauj? skambut?; CPAL [CPAL] diagnostika CMD; ICE timeout 10s (CONNECTING); SettingEngine ICE laiko ribos; nustatym? modalas z-index + resize ? Po build ir deploy: npm run release arba scripts/build-with-update.ps1 ? atnaujink latest.json serveryje v0.4.19 ? Tauri build: vertimai (`locales/*.json` teisingame kelyje); user-bar ikonos per Material Icons (ne tr?kstami PNG) v0.4.18 ? DM skambutis: mikrofono ?renginio logas; DM lemputei ?emesnis RMS slenkstis (ne painiojama su nutildymu); GAMESPEAK_MIC_DEBUG=1 diagnostikai v0.4.17 ? TURN 3478 per auth: numatytasis TURN_HOST=OVH (57.128.171.193); serverio config.env + auth TURN_HOST sutvarkyti skambu?iams; atnaujink klient? ? Jei anks?iau ICE band? 116.x:3478 ? dabar API gr??ina teising? TURN host? (reikia ?ios versijos + serverio) v0.4.15 ? DM skambu?iai: call.rs naudoja relay_only/stun_only i? JS; OVH ICE be grie?to relay filtro; rtc_configuration_for_dm_call; deploy-ovh-turn.ps1 (ubuntu+sudo) ? webrtc_util: rtc_configuration_for_dm_call (Relay vs All) ? Visiems rekomenduojama atsinaujinti ? suderinamumas su Hetzner + OVH TURN v0.4.14 ? Hetzner: atnaujinimai + signalizacija + auth (116.202.237.32); OVH tik STUN/TURN 3478 (coturn); repo: OVH-TURN-ONLY.md + turnserver.ovh-3478.conf.example ? Klientas: config ? Hetzner; ICE/TURN ? OVH (webrtc_util / call-rust ? nepakit?) ? OVH serveryje: tik coturn pagal coturn/turnserver.ovh-3478.conf.example (UFW 3478 + relay UDP) v0.4.13 ? OVH: auth/signaling/update per 57.128.171.193; TURN kietai OVH (webrtc_util); latest.json tik Windows (INCLUDE_ANDROID_IN_UPDATES=false) ? update-config: SERVER_URL / SIGNALING_URL / AUTH_URL / DEPLOY_HOST ? OVH VPS ? Atnaujinim? pakete tik .exe ? be naujo Android APK v0.4.12 ? Tauri fail? tempimas (drag-and-drop): teisinga enter/over/leave logika; viena registracija per React (onDragDropEvent); pa?alinti dublikatai; overlay ir siuntimas kaip per ?+? ? React: initTauriDragDrop ? getCurrentWebview().onDragDropEvent; tiltai i? main.js ? main.js: be perteklini? tauri:// drag listeneri?; tiltai window.__gamespeak* v0.4.11 ? DM skambutis: ICE kandidat? sinchronizacijos race (retry); TURN URL po vien? RTCIceServer; 443 prie? 3478 (auth + Rust) ? JS: addIceCandidate laukia iki ~750 ms kol session = peer; onIceCandidate ? ir outgoing/callee laukimo b?senos ? Rust: keli TURN ICE blokai (webrtc-rs relay rinkimas) ? Jei ICE vis tiek Failed ? coturn / UDP relay portai serveryje v0.4.10 ? STRICT RELAY ONLY: visas media per TURN (Relay policy); ICE tik relay; bendras rtc_configuration_strict_relay_only; get_webrtc_credentials relayOnly=true ? Rust: webrtc_util ? TURN fetch + Relay; call / voice_channel / p2p failai ? ta pati politika; ICE filtras lokaliai ir remote ? Atnaujink klient? v0.4.9 ? Signal? serveris (signaling_*), DM WebRTC ?inut?s (webrtc-*), TURN numatytai 116.202.237.32; relay numatytai ?jungtas skambu?iams ? Tauri: signaling_connect, call_signaling_send_json; ?vykiai dm-call-*, dm-webrtc-* ? Auth: /api/turn-credentials numatytasis TURN_HOST = VPS; relay_only numatytai true (Rust skambu?iai / voice) ? Atnaujink klient? ? senesn? versija negaus ?it? pakeitim? be naujo build v0.4.8 ? Skambu?i? signalas per auth WebSocket (dm_signaling), jei 8766 nepasiekia gav?jo ? Tas pats kanalas kaip DM ?inut?s ? draugas gauna kvietim? net kai signaling 8766 u?blokuotas ? Dubliuotas kvietimas i? abiej? keli? ? vienkartinis (dedupe) v0.4.7 ? Skambu?i? UI priskyrimas pokalbiui; TURN relay (UDP); auth /turn-credentials tvarka ? Skambu?io modalas ir vir?utin? juosta tik tame DM, kuriam skambini; nar?ant kitur ? ?oninis indikatorius ? Ankstyvas call-invite; TURN relay_only: pirmiausia UDP 3478 (webrtc-rs); Rust filtruoja TCP TURN URL ? Auth serveris: perkraunamas deploy metu (pm2 restart gamespeak-auth) v0.4.6 ? DM skambu?iai: signaling ?jungtas; skambinimo modalas + tonai; P2P failai atskirai ? Signaling WebSocket v?l jungiasi skambu?iams (ne tik P2P failams); `p2pEnabled` ? tik failams ? Skambinantysis: matomas modalas ?Skambinama??, ringback tonas; gaunantis ? garsesnis ragelis ? Rust: `P2P_SIGNALING_DISABLED = false`, fail? siuntimas vis dar gali b?ti i?jungtas atskirai v0.4.5 ? API sluoksnis Rust?e (reqwest), viena sesija JS/Rust; multipart ir TURN i? Rust b?senos ? auth API: `api_request` (public/auth) ? `syncApi` / `authApi` Tauri re?ime; ?inu?i? redagavimas / report / trynimas per t? pat? keli? ? `post_dm_with_file` / `post_message_with_file` ? URL ir token tik i? Rust (`RUNTIME_CONFIG` + `AUTH_SESSION`), ne i? JS ? P2P TURN: `api_request` GET `/api/turn-credentials` (fallback fetch) ? `api_request` POST/PATCH/PUT/DELETE be tu??io Content-Type kur nereikia v0.4.4 ? Gaunamas skambutis: pataisytas race (modalas visada); vienas bendras signaling URL (116) ? p2p-call-invite: UI i?kart, nepriklausomai nuo handleri? eili?kumo ? SIGNALING_URL v?l 116 ? visi klientai tame pa?iame serveryje (b?tina skambu?iams tarp ?ali?) v0.4.3 ? Signaling per Hetzner edge; skambu?i? UI (skamb?jimas); TURN relay parinktys ? P2P signalas: ws://138.199.214.80:8766 (Hetzner); auth/?inut?s lieka 116 ? Skamb?jimas tik gaunamam skambu?iui; po ?accept? ? jungiamasi be perteklinio tono ? DM skambu?iams tie patys relay/stun flagai kaip P2P failams (config) ? Versija pakelta ? atnaujinimui per ?ali? rodykl? v0.4.2 ? JS/Rust skambu?i? tiltas, RMS lemput?, force reset, PC b?sena ? call_end visada kvie?iamas ? ma?iau ?zombie? ir ?jau vyksta skambutis? ? Rust RMS ? DM mic indikatorius (?alia kalbant, pilkai tyloje, raudona mute) ? PeerConnection Failed/Closed ? valymas; nustatymuose ?Atstatyti skambu?i? b?sen?? ? Automatinis atstatymas, jei serveris gr??ina ?Skambutis jau vyksta? v0.4.1 ? DM skambu?i? pataisymai (garsas, UI, u?strig?s skambutis) ? DM skambu?iuose VAD i?jungtas ? pilnas mikrofono srautas (ne ?tyla? be garso) ? ICE nutr?kus ? teisingas valymas; nebelieka ?Skambutis jau vyksta? po nutr?kimo ? Mikrofono indikatoriai call bar / mini bar; DM mute sinchronizuotas su Rust ? Prie? nauj? skambut? ? b?senos i?valymas (call_end + clearState) v0.4.0 ? VAD (tylos aptikimas): ma?iau RTP srauto, kai nekalbi ? Voice Activity Detection (noise gate): RMS ?emiau ribos ? RTP paketai nesiun?iami; hangover ~120 ms, kad nekirpt? ?od?io galo ? Aplinkos kintamieji: GAMESPEAK_VAD_DISABLE=1, GAMESPEAK_VAD_RMS=450 (numatytas slenkstis) ? Changelog (?ios serijos laim?jimai): MMCSS ?Pro Audio? ?vestis/i?vestis, THREAD_PRIORITY_HIGHEST, lock-free resampler grojimui, [Latency] Mic to Network logai, pilnas kelias nuo mic capture, dabar VAD ? ma?iau apkrovos AX41 / TURN / vartotoj? uplink v0.3.2 ? MMCSS ?Pro Audio? (?vestis + i?vestis), ai?k?s [Latency] Mic to Network logai, gij? prioritetai v0.3.1 ? Skambu?i? ?RTPSender created with no codecs? pataisymas ? WebRTC MediaEngine su register_default_codecs() ? DM skambu?iai ir voice kanalai ? call.rs, voice_channel.rs ? naudoja build_api_for_audio() su Opus kodeku v0.3.0 ? Vieningas Rust garso variklis (v0.3.0 release) ? voice.js pa?alintas ? visas garsas per Rust (call_audio, call_playback, voice_channel) ? Serverio balso kanalai ? Mesh P2P per Rust, signaling per WebSocket ? Global?s hotkeys ? Ctrl+Shift+M mute (i? config.json: %APPDATA%\com.gamespeak.app\config.json) ? Connection Watchdog ? ry?io nutr?kimas ? auto-retry per TURN ? Audio buffer ? jitter buffer ~40ms (<20ms latencija) ? Log sistema ? log::warn! vietoj eprintln v0.2.67 ? Skambu?i? mikrofonas + dubliavim? fix ? Mikrofonas ? raw stream (be AudioContext), track.enabled, caller send tracks prie? offer ? onCallAccepted dubliavimai ? _callAcceptFor, room connect skip jei jau prijungta, 10s dedupe v0.2.66 ? Nauja skambu?i? i?vaizda + Gemini pataisymai ? Skambu?i? UI (3 ekranai) ? gaunamas modalas centre, call bar chate, sidebar panel? ? Gemini fix: handleOffer ? takeliai pridedami prie? createAnswer, neb?ra asimetrinio garso ? Gemini fix: ICE restart ir kai iceConnectionState === 'failed' ? Mic indikatorius ? ?alias/raudas ant call bar ir sidebar v0.2.65 ? Skambu?iai stabiliai (Discord lygis) ? ICE kandidat? eiliuojimas ? nebeignorojami, loguojami klaidos ? Mic active indikatorius ? ?alias/raudas ta?kelis rodo mikrofon? ? ICE restart ? jei 12s ?stringa ?checking?, automatinis persijungimas ? Sen? nustatym? valymas ? atnaujinant pa?alinamas call_use_relay v0.2.59 ? Skambu?i? ?Jungiamasi? pataisymas (Win11/atsakantis) ? 400ms delay + offer retry ? kai vienas (pvz. Win11) priima skambut?, skambintojas palauki? prie? siun?iant offer ? Pataisyta: atsakantis ?stringa ?Jungiamasi? ? dubliavimo ignoravimas, 1 retry v0.2.57 ? Crash pataisymai (BOM, p2p-signaling) ? Pataisyta: programos crash paleidus ? latest.json BOM klaida (UTF-8), p2p-signaling sintaks? ? Visiems rekomenduojama atnaujinti ? sustabdo crash kilpas v0.2.56 ? Callee fix (gr??inta ankstesn? b?sena) ? Skambu?iai ? pa?alinta crash k?lusi Callee fix, gr??inta stabili versija v0.2.55 ? Skambu?iai: offer retry, callee timing fix ? Callee ?Jungiamasi? fix ? 400ms delay + offer retry (3x), jei callee v?liau ?sijungia ? room ? GIPHY ? palikta veikianti v0.2.54 ? GIPHY GIF paie?ka ? GIPHY ? GIF pasirinkimas pokalbiuose, paie?ka ir kategorijos ? DM skambu?iai ? palikti veikiantys (TURN, signalizacija) v0.2.53 ? DM skambu?iai veikia ? DM skambu?iai ? pilnai veikia: offer/answer/ICE, TURN sukonfig?ruotas serveryje ? Susiskambinimas tarp draug? ? priimami skambu?iai, balso ry?ys jungiasi v0.2.52 ? DM skambu?i? pataisymai ? DM skambu?iai ? handleOffer callee bug fix, call-accept deduplikacija, isConnecting apsaugos ? Dubliuojantis onCallAccepted ir Room connect i?spr?stas ? ry?ys tur?t? susijungti abiem pus?ms v0.2.40 ? Pokalbi? i?valymas, badge pataisymai, add friend ikona ? Pokalbi? X ? i?valyti pokalb? i? s?ra?o (draugas lieka), X matomas tik hover ? Badge ? Pokalbiai: tik neperskaitytos ?inut?s; Draugai: tik pra?ymai priimti ? Add friend ? person_add_alt ikona vietoj + v0.2.38 ? Vartotojo kortel?s b?sena, P2P/TURN pataisymai ? Vartotojo kortel? ? ?simena ar buvo atidaryta/u?daryta (po perkrovimo i?lieka) ? P2P/TURN ? kelias Cloud serverius (Vokietija/UK), apkrautum paskirstomas ? ICE tvarka ? STUN pirmiausia, TURN atsarginis v0.2.33 ? Pa?alinti draug? ir modal? patobulinimai ? Pa?alinti draug? ? 3 ?ingsni? srautas: popover ? patvirtinimo modalas ? i?trinimas ? Modal? stilius ? ?alios antra?t?s centre, vienas X u?darymui ? Pa?alinti draug? modalas ? vienodo dyd?io mygtukai, padidintas ?riftas
Senesnės versijos (Windows)
Senesnės versijos (Android)