Skip to content

Commit

Permalink
use new screen share API internally
Browse files Browse the repository at this point in the history
  • Loading branch information
hiroshihorie committed Oct 18, 2022
1 parent f68e95e commit f6ca534
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions Sources/LiveKit/Participant/LocalParticipant.swift
Original file line number Diff line number Diff line change
Expand Up @@ -465,10 +465,8 @@ extension LocalParticipant {
let localTrack = LocalAudioTrack.createTrack(options: room._state.options.defaultAudioCaptureOptions)
return publishAudioTrack(track: localTrack).then(on: queue) { $0 }
} else if source == .screenShareVideo {

var localTrack: LocalVideoTrack?

#if os(iOS)
var localTrack: LocalVideoTrack?
let options = room._state.options.defaultScreenShareCaptureOptions
if options.useBroadcastExtension {
let screenShareExtensionId = Bundle.main.infoDictionary?[BroadcastScreenCapturer.kRTCScreenSharingExtension] as? String
Expand All @@ -478,13 +476,17 @@ extension LocalParticipant {
} else {
localTrack = LocalVideoTrack.createInAppScreenShareTrack(options: options)
}
#elseif os(macOS)
localTrack = LocalVideoTrack.createMacOSScreenShareTrack(options: room._state.options.defaultScreenShareCaptureOptions)
#endif

if let localTrack = localTrack {
return publishVideoTrack(track: localTrack).then(on: queue) { publication in return publication }
return publishVideoTrack(track: localTrack).then(on: queue) { $0 }
}
#elseif os(macOS)
return MacOSScreenCapturer.mainDisplaySource().then(on: queue) { mainDisplay in
let track = LocalVideoTrack.createMacOSScreenShareTrack(source: mainDisplay,
options: self.room._state.options.defaultScreenShareCaptureOptions)
return self.publishVideoTrack(track: track)
}.then(on: queue) { $0 }
#endif
}
}

Expand Down

0 comments on commit f6ca534

Please sign in to comment.