Naglathala Abril 2026

Kung Paano Talagang Gumagana ang Random Video Chat

Ang engineering sa likod ng matching ng mga estranghero at HD video streaming na walang media server

Ano ang Nangyayari Kapag Na-click Mo ang "Start"?

Ang random video chat ay nag-connect ng dalawang estranghero sa loob ng ilang segundo gamit ang limang hakbang na nangyayari halos nang sabay-sabay. Ang iyong browser ay nakakakuha ng camera access, isang matchmaking queue ay nagpapares sa iyo ng isa pang user, isang signaling server ay nag-exchange ng connection metadata, at WebRTC ay nagtatag ng direktang peer-to-peer video stream — walang media server na kinakailangan.

01

Browser ay humihiling ng camera at mic

getUserMedia API
02

Sumali ka sa matchmaking queue

Cloudflare Durable Objects
03

Match found — signaling ay nag-connect sa iyo

WebSocket
04

WebRTC peer connection ay naestablish

SDP exchange + ICE candidate
05

Video stream ay browser-to-browser

Peer-to-peer, walang server

Ano ang WebRTC?

Ang WebRTC (Web Real-Time Communication) ay isang open-source protocol na built-in sa bawat modernong browser na nagpapahintulot ng peer-to-peer audio, video, at data transfer nang walang plugin. Pinamamahalaan ng W3C at IETF, ito ay nag-power ng video chat sa Chrome, Safari, Firefox, at Edge nang walang download, walang Flash, at walang Java applet.

getUserMedia

Humihiling ng access sa camera at microphone. Nagbabalik ng MediaStream object na maaaring i-display o ipadala ng iyong app.

RTCPeerConnection

Pinamamahalaan ang buong peer-to-peer lifecycle ng connection — SDP negotiation, ICE candidate exchange, at media transport.

RTCDataChannel

Nagpapadala ng arbitrary data (text chat, file transfer, game state) direkta sa pagitan ng mga browser sa parehong P2P link.

Key fact: Ang WebRTC ay isang bukas W3C/IETF standard — hindi proprietary API. Anumang browser na nag-implement ng spec ay maaaring makiisa, kaya't gumagana ang random video chat cross-browser nang walang anumang install.

Kung Paano Gumagana ang P2P Video (At Kung Bakit Ito Mas Privacy)

Ang peer-to-peer video ay nangangahulugang ang iyong camera feed ay direktang naglalakbay mula sa iyong browser patungo sa browser ng ibang tao. Walang central server na nag-decode, nag-inspect, o nag-store ng stream. Ang architecture na ito ay enabled ng SDP signaling, ICE candidate gathering, at STUN/TURN server para sa NAT traversal — at ito ay ginagawang fundamentally mas privacy ang P2P video chat kaysa server-relayed na alternative.

SDP (Session Description Protocol)

Bawat peer ay lumilikha ng SDP "offer" o "answer" na naglalarawan ng sinusuportahang codec, resolution, at encryption key. Ang mga ito ay ine-exchange sa pamamagitan ng signaling server (WebSocket relay) ngunit hindi naglalaman ng actual na media data.

ICE (Interactive Connectivity Establishment)

Ang ICE ay nag-gather ng candidate network path — host candidate (local IP), server-reflexive candidate (public IP sa pamamagitan ng STUN), at relay candidate (TURN fallback). Ang ICE agent ay sinusubukan ang bawat path at pumipili ng best direct route.

STUN Servers (NAT Traversal)

Ang STUN (Session Traversal Utility para sa NAT) ay tumutulong sa browser na tuklasin ang public IP at port mapping. Ito ay nagpapahintulot sa mga peer sa likod ng home router na direktang kumonekta nang walang relay.

TURN Servers (Fallback Relay)

Kapag nagfail ang direktang koneksyon (symmetric NAT, mahigpit na corporate firewall), ang TURN ay nag-relay ng encrypted media packet sa pagitan ng mga peer. Humigit-kumulang 15% ng real-world session ay nangangailangan ng TURN — ang media ay nananatiling end-to-end encrypted.

Privacy insight: Dahil ang video data ay direktang dumadaloy sa pagitan ng mga browser, ang platform operator ay hindi kailanman nakikita, nagpoproseso, o nag-store ng iyong video stream. Kahit ang signaling server ay humawak lamang ng lightweight JSON metadata — hindi pixels.

Paano Gumagana ang Matchmaking System?

Ang matchmaking ay nag-pair ng dalawang estranghero mula sa global queue sa loob ng ilang 50 millisecond. Ang Nightcap ay gumagamit ng Cloudflare Durable Objects — isang globally distributed na stateful compute primitive — upang mapanatili ang isang consistent queue na nag-score sa mga user sa shared interest, geographic preference, at gender filter, pagkatapos ay nag-pop ng highest-scoring pair.

Interest-Based na Scoring

Magpasok ng mga interes tulad ng "musika, coding, anime" — ang matchmaker ay nagkakalkula ng Jaccard similarity score laban sa ibang user sa queue at nag-prioritize sa pinakamagandang overlap.

Country at Gender Filter

Ang opsyonal na filter ay nagbibigay-daan sa iyo na marapan ang mga user mula sa isang partikular na bansa o kasarian. Ang queue ay nag-partition ng candidate nang pinapanatili ang match time sa ilalim ng isang segundo.

Durable Object Architecture

Isang solong Cloudflare Durable Object ay nag-hold ng global matchmaking queue sa in-memory na may malakas na consistency. Bawat edge location sa buong mundo ay nag-connect sa parehong state, nag-eliminate ng race condition.

Boost: Priority Queue Placement

Ang bayad na Boost user ay inilalagay sa harapan ng queue. Ito ay nangangahulugang mas mabilis na match at mas mataas na kalidad ng pairing nang hindi binabago ang matching algorithm.

Paano Gumagana ang Real-Time Video Effects sa Browser?

Ang Nightcap ay tumatakbo ng AI-powered video effect nang ganap sa-browser gamit ang GPU-accelerated MediaPipe model. Ang background blur, color filter, at beauty mode ay lahat ay naiapply nang lokal sa iyong MediaStream bago ito ipadala sa iyong peer — ang platform ay hindi kailanman nakakatanggap ng raw o processed video sa anumang server.

Background Blur (AI Segmentation)

Ang MediaPipe selfie segmentation model ay tumatakbo sa iyong GPU, na nag-identify ng tao laban sa background sa 30fps. Lahat sa labas ng person mask ay naka-blur na may adjustable na intensity (1-20). Ang segmented output ay pumalit sa original stream.

6 na Color Filter

Ang mainit, malamig, vintage, black at white, vivid, at soft filter ay naiapply bilang CSS filter transform sa hidden canvas element. Ang filtered na frame ay kinukuha bilang bagong MediaStream at napapasok sa RTCPeerConnection.

Beauty Mode

Isang kontrol na Gaussian blur overlay ay composited sa itaas ng video frame, na nagporoduce ng subtle skin smoothing. Ang effect ay gumagamit ng 3px blur na nag-blend sa 15% opacity upang maiwasan ang uncanny look habang nag-soften pa rin ng texture ng balat.

Paano Gumagana ang Moderation Nang Walang Panonood ng Bawat Chat?

Ang AI moderation system ay nag-analyze ng text message at periodic video frame nang real time nang walang tao na nanonood ng iyong pag-uusap. Ang Nightcap ay nagpapadala ng bawat chat message sa pamamagitan ng libreng Moderation API ng OpenAI at regular na sample ng video frame para sa content analysis sa pamamagitan ng AWS Rekognition — na nagpapahintulot ng automated enforcement nang walang mass surveillance.

Text Moderation

Bawat mensahe ay sinusuri laban sa Moderation API ng OpenAI bago maideliver. Ang API ay flagged na hate speech, harassment, self-harm, sexual content, at violence sa millisecond — at ito ay libre na tawagan.

Video Frame Sampling

Ang periodic na frame capture ay ipinapadala sa AWS Rekognition para sa content analysis. Ang sistema ay nag-flag ng explicit o unsafe na nilalaman at nag-trigger ng automatic enforcement nang hindi nag-record o nag-store ng video stream.

One-Click Reporting

Ang mga gumagamit ay maaaring mag-report ng match kaagad. Ang mga report ay nag-trigger ng immediate review, at ang kinilalang paglabag ay nagreresulta sa pansamantalang o permanenteng ban batay sa severity at repeat offense history.

Private Mode

Kapag ang parehong user ay independenteng mag-opt in, ang NSFW content filter ay dino-disable. Gayunpaman, ang CSAM detection at threat monitoring ay nananatiling aktibo sa lahat ng oras — ang mga ito ay hindi kailanman dino-disable anuman ang mode.

Bakit Ang P2P Ay Nanalo sa Media Server Para sa 1-on-1 Video?

Para sa one-on-one video chat, ang peer-to-peer WebRTC ay hindi nagkakahalaga sa server bandwidth, nagbibigay ng pinakamababang latency (direktang network path), at niyayakad na ang platform ay hindi kailanman humawak ng iyong video. Ang server-based architecture tulad ng SFU at MCU ay nagdadagdag ng gastos, latency, at privacy trade-off na makabuluhan lamang para sa group call.

ArchitectureBandwidth CostPrivacy
P2P (Nightcap)$0 na video bandwidthVideo hindi sa server
SFUMataas — server relay ng lahat ng streamServer ay nakikita lahat ng video
MCUPinakamataas — server decode at re-encodeServer ay ganap na nagpoproseso ng video

Ang Architecture sa Isang Sulyap

Ang architecture ng Nightcap ay nag-split sa apat na plane: signaling (Cloudflare Worker sa pamamagitan ng WebSocket), matchmaking (Durable Objects), media (puro P2P WebRTC), at application logic (Next.js API route para sa payment, moderation, at report). Ang media plane ay nagkakahalaga ng zero sa server bandwidth dahil ang video ay hindi kailanman tumatama sa server.

Browser←→Cloudflare Worker(WebSocket signaling — SDP + ICE relay)
Browser←→Durable Object(matchmaking queue — interest scoring)
Browser←→Browser(P2P WebRTC — zero media server cost)
BrowserNext.js API(Stripe boost, moderation, report)

Mga Madalas Itanong

Tunay ba na peer-to-peer ang WebRTC video chat?

Oo. Kapag ang WebRTC connection ay naestablish, ang video at audio data ay direktang dumadaloy sa pagitan ng dalawang browser. Ang signaling server ay ginagamit lamang upang magpalit ng connection metadata (SDP offer at ICE candidate) — hindi nito hinihipo ang actual na media stream.

Makikita ba ng video chat platform o ma-record ang aking video?

Sa P2P platform tulad ng Nightcap, ang mga video stream ay direktang naglalakbay sa pagitan ng mga browser at hindi kailanman dumadaan sa central server. Ang platform ay hindi makikita, mag-intercept, o mag-record ng iyong video. Ito ay fundamental na architectural advantage ng peer-to-peer WebRTC sa server-relayed architecture.

Ano ang mangyayari kung magfail ang direktang P2P connection?

Kung magfail ang parehong STUN-assisted na direktang koneksyon at host candidate (karaniwang dahil sa mahigpit na enterprise NAT o symmetric firewall), ang WebRTC ay automatically na bumabalik sa TURN relay server. Ang TURN server ay nagpo-forward ng encrypted media packet sa pagitan ng mga peer. Humigit-kumulang 15% ng session ay nangangailangan ng TURN relay.

Gumagamit ba ang Nightcap ng anumang plugin o download?

Hindi. Ang Nightcap ay gumagamit ng WebRTC, na built-in sa Chrome, Safari, Firefox, at Edge. Walang plugin, walang Flash, walang Java applet, at walang app download na kinakailangan. Bubukan mo ang website at ang iyong browser ay humahawak ng lahat.

Paano gumagana ang matchmaking sa random video chat?

Kapag na-click mo ang Start, pumasok ka sa matchmaking queue. Ang Nightcap ay gumagamit ng Cloudflare Durable Objects upang mapanatili ang global queue na may sub-50ms matching. Ang sistema ay isinasaalang-alang ang iyong interes, kagustuhan sa bansa, at gender filter upang mahanap ang pinakamagandang match. Ang bayad na Boost user ay nakakakuha ng priority placement sa queue.

Mas Marami mula Nightcap

Maranasan ang Tech — Subukan ang Nightcap Libre

Walang account. Walang download. Walang media server. Kunin lang ang site at magsimula ng tunay na pag-uusap sa loob ng ilang segundo.

Magsimulang Mag-chat Libre →