LiveKit 的核心概念

想象一下你在费伦大陆的冒险,你和你的伙伴们结束了一天的战斗,回到了那个熟悉的营地。


1. Room (房间) -> 你的专属营地 (Your Campsite)

Room 就是你们那个私密、与世隔绝的营地

  • 它是核心空间 :所有故事、对话和互动都发生在这个营地里。没有营地,大家就只能在野外风餐露宿,乱作一团。在 LiveKit 里,Room 就是所有参与者进行实时音视频通话的那个最基本的"空间"或"会话"。
  • 它是私密的 :不是谁都能随随便便闯进你的营地,对吧?你需要是队伍的一员才能进入。同样,一个 Room 也需要正确的凭证(Token)才能加入,保证了通话的私密性和安全性。
  • 可以有多个 :你在第一章的翠绿林地旁有一个营地,到了第二章的终焉光芒旅店外又有了一个新的营地。这些就是不同的 Room,用于在不同情境下把大家聚集在一起。

一句话总结:Room 就是那个把所有伙伴聚集起来开篝火晚会的营地。


2. Participant (参与者) -> 营地里的每一个冒险者 (Every Adventurer)

Participant 就是营地里的每一个人,包括你自己(塔夫/邪念)、阿斯代伦、影心、盖尔等等。

  • 独立的个体 :每个人都是一个独立的 Participant。你有你自己的身份,阿斯代伦有他的。在 LiveKit 中,每个连接到 Room 的用户或设备都是一个 Participant

  • 能发布也能订阅:在营地里,你可以选择开口说话,也可以选择静静地听别人说。

    • 开口说话 ,让大家听到你的声音、看到你的动作,这就是 Publishing (发布)
    • 聆听别人的故事 ,看着盖尔施法或者卡菈克擦拭她的斧子,这就是 Subscribing (订阅)

一句话总结:Participant 就是你和你的那些各怀鬼胎、魅力十足的队友们。


3. Track (轨道) -> 冒险者们的"言语"和"动作" (Speech and Actions)

Track 这个概念稍微抽象一点,但它就是每个冒险者在营地里具体分享出来的内容

Track 想象成每个伙伴正在进行的**"言语""动作"**。一个人可以同时进行多个"言语"和"动作"。

  • 🎙️ Audio Track (音频轨道)

    • 类比 : 阿斯代伦在你耳边低语,用他那充满磁性的声音嘲讽你今天的战斗方式。这句嘲讽,就是他发布的一条 Audio Track。营地里离他近的人(订阅者)都能听到。
    • LiveKit: 这就是你的麦克风捕捉到的声音流。
  • 📹 Video Track (视频轨道)

    • 类比 : 你看到影心正在安静地擦拭她的长矛,或者莱埃泽尔在进行她的吉斯洋基武术训练。你眼中看到的她们的"影像",就是她们各自发布的 Video Track。如果你把头转过去(取消订阅),就看不到了。如果你让她隐身(停止发布),那谁也别想看到她。
    • LiveKit: 这就是你的摄像头捕捉到的画面流。
  • 💻 Data Track (数据轨道,例如屏幕共享)

    • 类比 : 这个最有趣!想象一下盖尔为了向你解释一个复杂的魔法原理,他没有说话,也没有做动作,而是在空中投射出一个不断变化的魔法符文阵图让你看。这个**"魔法投影"**,就是一个 Data Track!它不是声音也不是人物影像,而是纯粹的信息。
    • LiveKit: 这通常用来传输屏幕共享的画面、实时字幕、聊天消息或游戏状态等非音视频数据。

总结一下这个场景:

你(一个 Participant )回到了营地Room),开始眉飞色舞地讲述今天是如何一锤子砸扁地精的(发布了一条 Audio Track),同时还把战利品------一把发光的斧头拿出来给大家看(发布了一条 Video Track)。

一旁的影心(另一个 Participant )听着你的讲述(订阅了你的 Audio Track),并看着你手里的斧头(订阅了你的 Video Track),然后她自己也开口发表了评论(她发布了她自己的 Audio Track)。

相关推荐
RTC老炮5 天前
webrtc弱网-AlrDetector类源码分析与算法原理
服务器·网络·算法·php·webrtc
不会吃萝卜的兔子6 天前
go webrtc - 2 webrtc重要概念
webrtc
ayaya_mana6 天前
BilldDesk:基于Vue3+WebRTC+Nodejs+Electron的开源远程桌面控制
electron·开源·webrtc
她超甜i7 天前
前端通过后端给的webrtc的链接,在前端展示,并更新实时状态
前端·javascript·webrtc
计算机小手8 天前
高效 P2P 文件传输工具:FileSync 利用 WebRTC 技术实现极速安全传输
经验分享·docker·webrtc·开源软件
AI码上来9 天前
当小智 AI 遇上数字人,我用 WebRTC 打造实时音视频应用
人工智能·webrtc·实时音视频
Antonio9159 天前
【音视频】WebRTC 音视频延时、同步分析以及超低延时优化
音视频·webrtc
RTC老炮10 天前
webrtc弱网-LossBasedBandwidthEstimation类源码分析与算法原理
网络·算法·webrtc
小噔小咚什么东东10 天前
看到了很多次WebRTC,但是你真的需要它吗?
前端·webrtc