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)。

相关推荐
红米饭配南瓜汤9 天前
WebRTC 发送端 SSRC 生成流程总结
网络·网络协议·音视频·webrtc·媒体
小柯博客10 天前
从零开始WebRTC(一)
stm32·单片机·嵌入式硬件·青少年编程·嵌入式·webrtc
Paraverse平行云13 天前
实时云渲染云推流突破UE像素流传输数据单个消息64KB限制
云计算·webrtc·unreal engine
RTC老炮1 个月前
webrtc弱网-AlrDetector类源码分析与算法原理
服务器·网络·算法·php·webrtc
不会吃萝卜的兔子1 个月前
go webrtc - 2 webrtc重要概念
webrtc
ayaya_mana1 个月前
BilldDesk:基于Vue3+WebRTC+Nodejs+Electron的开源远程桌面控制
electron·开源·webrtc
她超甜i1 个月前
前端通过后端给的webrtc的链接,在前端展示,并更新实时状态
前端·javascript·webrtc
计算机小手1 个月前
高效 P2P 文件传输工具:FileSync 利用 WebRTC 技术实现极速安全传输
经验分享·docker·webrtc·开源软件
AI码上来1 个月前
当小智 AI 遇上数字人,我用 WebRTC 打造实时音视频应用
人工智能·webrtc·实时音视频