- RevueSDK
- LocalVideoTrack
- createBufferTrack(name:source:)
Type Method
createBufferTrack(name:source:)
建立外部影像輸入 Track(BufferCapturer)
static func createBufferTrack(name: String = "buffer", source: Track.Source = .unknown) -> LocalVideoTrackParameters
- name
Track 名稱(標籤,可重複)。
sid另行自動產生為"{name}-{短UUID}", ⚠️name會過線給對端(buffer track 的 declare 帶 name,對端以 source + name 認軌道、並當作遠端軌道的name;sid不過線),故「同名 track 同時 publish 給同一個人」對端分不出來 —— 該情境請給不同 name。 caller 根據用途宣告:.camera:合成輸出 / 處理過的相機畫面(對端 UI 把它當主鏡頭看).screenShareVideo:螢幕分享 / ReplayKit.unknown(預設):真的不確定來源(向後相容;對端 firstCameraVideoTrack / firstScreenShareVideoTrack 都找不到、UI 要自己撈)
Return Value
本地視訊 Track(可透過 capturer.capture(pixelBuffer) 注入畫面)
Discussion
// 一般 bufferTrack(沒指定用途)
let track = LocalVideoTrack.createBufferTrack(name: "compositor")
// MCU host 合成輸出(對 guest 而言是主鏡頭)
let track = LocalVideoTrack.createBufferTrack(name: "compositor", source: .camera)
// ReplayKit 螢幕分享
let track = LocalVideoTrack.createBufferTrack(name: "screen", source: .screenShareVideo)
// 同名可並存 —— 各自拿到獨立 sid
let a = LocalVideoTrack.createBufferTrack(name: "bgm") // sid = "bgm-A3F9C2D1"
let b = LocalVideoTrack.createBufferTrack(name: "bgm") // sid = "bgm-7B2E1D4F"