Add ability to get a screen share track for a window
And also list windows
This commit is contained in:
parent
5347c7d678
commit
7bf64ec23e
5 changed files with 93 additions and 23 deletions
|
@ -1,16 +1,16 @@
|
|||
import Foundation
|
||||
import LiveKit
|
||||
|
||||
@_cdecl("LKRelease")
|
||||
public func LKRelease(ptr: UnsafeRawPointer) {
|
||||
let _ = Unmanaged<AnyObject>.fromOpaque(ptr).takeRetainedValue();
|
||||
}
|
||||
|
||||
@_cdecl("LKRoomCreate")
|
||||
public func LKRoomCreate() -> UnsafeMutableRawPointer {
|
||||
Unmanaged.passRetained(Room()).toOpaque()
|
||||
}
|
||||
|
||||
@_cdecl("LKRoomDestroy")
|
||||
public func LKRoomDestroy(ptr: UnsafeRawPointer) {
|
||||
let _ = Unmanaged<Room>.fromOpaque(ptr).takeRetainedValue();
|
||||
}
|
||||
|
||||
@_cdecl("LKRoomConnect")
|
||||
public func LKRoomConnect(room: UnsafeRawPointer, url: CFString, token: CFString, callback: @escaping @convention(c) (UnsafeRawPointer) -> Void, callback_data: UnsafeRawPointer) {
|
||||
let room = Unmanaged<Room>.fromOpaque(room).takeUnretainedValue();
|
||||
|
@ -21,3 +21,9 @@ public func LKRoomConnect(room: UnsafeRawPointer, url: CFString, token: CFString
|
|||
print(error);
|
||||
};
|
||||
}
|
||||
|
||||
@_cdecl("LKCreateScreenShareTrackForWindow")
|
||||
public func LKCreateScreenShareTrackForWindow(windowId: uint32) -> UnsafeMutableRawPointer {
|
||||
let track = LocalVideoTrack.createMacOSScreenShareTrack(source: .window(id: windowId));
|
||||
return Unmanaged.passRetained(track).toOpaque()
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue