Antonio Scandurra
2b9fe0a2e6
WIP
2022-09-13 14:10:13 +02:00
Antonio Scandurra
4e0380c9fb
Debounce frame assignment using a watch
2022-09-13 14:10:13 +02:00
Antonio Scandurra
d407f521db
WIP: render screen-sharing frames
2022-09-13 14:10:13 +02:00
Antonio Scandurra
645338cff8
Register to publishing of remote tracks
2022-09-13 14:10:13 +02:00
Antonio Scandurra
37ca5651ee
Parameterize LiveKit URL
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra
b154c3c9ee
Expose Swift errors as anyhow::Result
in live_kit
2022-09-13 14:10:13 +02:00
Antonio Scandurra
df3ab13441
Publish screen-sharing video track on the newly-created Room
2022-09-13 14:10:13 +02:00
Nathan Sobo
7bf64ec23e
Add ability to get a screen share track for a window
...
And also list windows
2022-09-13 14:10:13 +02:00
Nathan Sobo
5347c7d678
Connect to LiveKit room in capture example
2022-09-13 14:10:13 +02:00
Nathan Sobo
3c2566fc11
Copy WebRTC.framework when building livekit crate
...
We determine the location of the target executable directory in a somewhat hacky way, but it seems reasonably stable.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-09-13 14:10:13 +02:00
Nathan Sobo
4bcc008cbf
WIP: Start on live_kit crate that uses a C-based bridge
2022-09-13 14:10:13 +02:00
Antonio Scandurra
52f32b50b2
WIP: Talk to Swift via C without involving Objective-C
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra
5fec784580
Link Swift stdlib
2022-09-13 14:10:13 +02:00
Antonio Scandurra
46abb1cbf6
WIP
2022-09-13 14:10:13 +02:00
Antonio Scandurra
6c28b21728
WIP: Start binding LiveKit
2022-09-13 14:10:13 +02:00
Nathan Sobo
b51abc5a63
Read the frame data out of the CMSampleBuffer
...
Still not sending it anywhere, but think I'm reading it correctly.
2022-09-13 14:10:13 +02:00
Antonio Scandurra
047b5114f1
Start on a new, more abstract CompressionSession
primitive
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra
7054fa61f2
Start compressing captured frames as H264
2022-09-13 14:10:13 +02:00
Antonio Scandurra
f621d290fe
Move core_media
into media
crate
2022-09-13 14:10:13 +02:00
Antonio Scandurra
a02e388ea2
Honor scale factor when rendering
2022-09-13 14:10:13 +02:00
Antonio Scandurra
79a7a0e0e7
Capture screen in BGRA8 and render it in capture
example app
2022-09-13 14:10:13 +02:00
Nathan Sobo
531ffc01c9
Pass CVImageBuffers into GPUI instead of IOSurfaces
2022-09-13 14:10:13 +02:00
Nathan Sobo
db88ee2f4c
Handle captured frames in the background
2022-09-13 14:10:13 +02:00
Antonio Scandurra
71d9a880d6
WIP: Start pushing native surface to Scene
...
This is segfaulting for some reason, so that's the next step to figure out.
2022-09-13 14:10:13 +02:00
Antonio Scandurra
d30e360664
Retrieve IOSurface in Rust callback as opposed to doing so in delegate
2022-09-13 14:10:13 +02:00
Antonio Scandurra
c4110edb78
Extract io_surface
crate and invoke custom callback on frame sample
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra
d473b52f5a
Remove src/dummy.m
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-13 14:10:13 +02:00
Antonio Scandurra
1611635e5f
Capture display frames and access underlying IOSurface
2022-09-13 14:10:13 +02:00
Antonio Scandurra
014246f569
Provide all running applications to SCContentFilter
to capture display
2022-09-13 14:10:13 +02:00
Antonio Scandurra
ef8a0dc175
Fix bindgen warnings
2022-09-13 14:10:13 +02:00
Nathan Sobo
82ec2dc7ca
Try to use the dummy capture handler, still not working
2022-09-13 14:10:13 +02:00
Nathan Sobo
99cb66dfb0
Programmatically locate the system SDK path for bindgen
2022-09-13 14:10:13 +02:00
Nathan Sobo
4440c9b18e
Bind to capture's macOS C frameworks with bindgen
2022-09-13 14:10:13 +02:00
Antonio Scandurra
30a3c0fb46
WIP
2022-09-13 14:10:13 +02:00
Nathan Sobo
0df97dce02
WIP
2022-09-13 14:10:13 +02:00
Nathan Sobo
497232ee59
Get capture starting without error
2022-09-13 14:10:13 +02:00
Nathan Sobo
d91f26d016
Make SCStreamOutput protocol accessible in Rust
2022-09-13 14:10:13 +02:00
Antonio Scandurra
45519cdd27
WIP
2022-09-13 14:10:13 +02:00
Nathan Sobo
7918bf39f5
Make capture example its own crate
2022-09-13 14:10:13 +02:00