Théo Monnom and GitHub
72bbc8cd90
Disable livekit-api on win-aarch64 & WebRTC Builds CI ( #51 )
...
* update CI
* fix path
* fix attempt
* fix attempt 2
* fix attempt 3
* fix attempt 3
2023-04-19 15:34:04 +02:00
Théo Monnom
9000d82757
update examples deps
2023-04-19 12:35:15 +02:00
Théo Monnom and GitHub
180864e953
feat: server sdk ( #47 )
...
* New webrtc build scripts (Still not integrated within the SDK)
* New livekit-api crate (Integrate the server sdk protocol of livekit)
* Moved livekit-utils to livekit-protocol
2023-04-19 12:33:39 +02:00
Théo Monnom and GitHub
8a5c16c6ef
Update README.md
2023-03-19 21:59:58 +01:00
Théo Monnom and GitHub
64c0705916
feat: audio support ( #45 )
...
- Receive/Send audio frames
- LocalAudioTrack
2023-03-19 21:58:20 +01:00
Théo Monnom and GitHub
cad6d36201
feat: video publishing ( #42 )
...
- Prepare webrtc abstraction ( for future wasm support )
- Added track publish support for videos
- Added LogoTrack example to simple_room demo
- Lot of cleanup
- There are compiler warnings I'll solve on our v1 release
2023-03-18 03:25:16 +01:00
Théo Monnom and GitHub
4443eae434
Use reqwest instead of curl to download libwebrtc ( #44 )
...
* use reqwest instead of curl to download libwebrtc
curl crate fails 2/3 computers I use when not configured. Make everything simpler for users
* Update Cargo.lock
2023-03-16 02:30:12 +01:00
Théo Monnom and GitHub
609427159b
license headers ( #40 )
2023-02-12 20:19:01 +01:00
Théo Monnom and GitHub
16ea02075f
RtpTransceiver bindings & requirements for publishing tracks ( #39 )
...
- RtpSender
- RtpReceiver
- RtpTransceiver
- RtpParameters
- VideoFrameBuilder
- Interior mutability on c++ side
- Cleanup bindings ( Use #pragma once instead of include guards )
- webrtc-sys/src/* headers are now used in only one place
- Avoid confusion between generated headers and our headers
- AdaptedVideoTrackSource
- Cleanup the workaround with unsupported Vec<Shared<T>>
- Put everything inside one file
2023-02-12 19:44:04 +01:00
Théo Monnom and GitHub
4411f88b68
added useful note about webrtc-sys ( #38 )
...
* Create README.md
* Update README.md
* Update README.md
* Update README.md
2023-02-07 00:05:07 +01:00
Théo Monnom and GitHub
e023b34fd1
finish proto of livekit-ffi ( #36 )
...
* ffi req
* handle req_id
* remaining room events
* fix
* Update ffi.proto
* use sid instead of info
* state -> stream_state
* "s"
* participant is optional on data received
* add ReleaseHandleRequest
* Update ffi.proto
* add DataPacketKind
* VideoSinkInfo
* append info
It looks nicer on the FFI languages
* wip
* keep it simple
* Update ffi.proto
* update server to latest proto
* to_i420
* i420_to_abgr
* to_argb
* add publications to ParticipantInfo
It'll be used when we join a Room
* cleanup + DisposeRequest
* fix compilation
* send the whole buffer info with to_i420
2023-02-06 00:57:43 +01:00
Théo Monnom and GitHub
1610f86316
feat: basic ffi server to support other languages ( #34 )
...
* wip
* wip
* wip
* wip
not a fan of the way I do handles ..
* errors and async semantic
* fix example
2023-01-25 00:09:19 +01:00
Théo Monnom and GitHub
84d2f234f5
Update README.md
2023-01-18 21:30:57 +01:00
Théo Monnom
88e6848456
Update tests.yml
2023-01-13 00:56:22 +01:00
Théo Monnom
08b0756fee
add datachannels to readme
2023-01-13 00:39:04 +01:00
Théo Monnom
22c6f67226
ci: only run tests on supported platforms by gh
2023-01-13 00:37:30 +01:00
Théo Monnom
c267c82a58
fix aarch64-pc-windows-msvc
2023-01-12 23:54:21 +01:00
Théo Monnom
71d29bd64e
ci: add aarch64 targets
2023-01-12 23:44:48 +01:00
Théo Monnom and GitHub
986b97a413
Update build.rs ( #31 )
2023-01-12 22:38:46 +01:00
Théo Monnom and GitHub
b96858bdba
add gh repo to Cargo.toml ( #33 )
2023-01-12 15:16:04 +01:00
Théo Monnom
35454335ec
--allow-dirty for README
2023-01-12 15:12:20 +01:00
Théo Monnom
452f74f7fb
fix publish
...
wrong character..
2023-01-12 14:59:00 +01:00
Théo Monnom
0c90089b56
fix publish workflow
2023-01-12 14:52:26 +01:00
Théo Monnom and GitHub
8841af6ee6
v0.1.1 ( #32 )
2023-01-12 14:48:03 +01:00
Théo Monnom and GitHub
608681d0e2
use dispatcher for room events ( #30 )
2023-01-11 01:08:26 +01:00
Théo Monnom and GitHub
4c5828b9c0
added prelude & cleaned imports ( #27 )
...
* wip
* wip
* wip
* wip
* wip
* wip
2023-01-10 22:57:27 +01:00
Théo Monnom and GitHub
1168e5ae89
correctly cleanup RTCRuntime ( #26 )
2023-01-08 03:39:52 +01:00
Théo Monnom
35816180d9
Merge branch 'main' of https://github.com/livekit/client-sdk-native
2023-01-07 18:51:32 +01:00
Théo Monnom
8ae8110293
update readme for hw acceleration
2023-01-07 18:51:21 +01:00
Théo Monnom and GitHub
d4233867eb
VideoToolBox decoder/encoder for MacOS & iOS ( #19 )
...
* VideoDecoderFactory wrapper
* wip
* fix compilation
* add notes
* upgrade webrtc version
2023-01-07 18:30:11 +01:00
Théo Monnom and GitHub
579782a813
improve the demo ( #24 )
...
- Add participant names
- Listen to TrackUnsubscribed
- Show info about the room
- Disconnect btn
- Correctly close the task
2023-01-05 01:08:23 +01:00
Théo Monnom and GitHub
5309c622cb
fix deadlock when closing ( #25 )
2023-01-05 01:05:29 +01:00
Théo Monnom
98273d1b0d
add blue background when no frame has been received
2023-01-04 22:17:59 +01:00
Théo Monnom and GitHub
27475af410
fix participant updates ( #23 )
2023-01-04 20:14:09 +01:00
Théo Monnom and GitHub
9656c73027
allow custom webrtc builds ( #21 )
2023-01-03 22:26:00 +01:00
Théo Monnom and GitHub
bcbce41c0f
add macos sysroot ( #20 )
...
* macos sysroot
* resolve conflicts
2023-01-03 02:45:03 +01:00
Théo Monnom and GitHub
dbc7932b97
windows: gdi32 dependency ( #17 )
...
* windows requires +crt-static
* add gdi32 to windows dependencies
2023-01-02 23:45:13 +01:00
Théo Monnom and GitHub
624ed37ff7
windows requires +crt-static ( #16 )
2023-01-02 23:27:24 +01:00
Théo Monnom and GitHub
cdd3a560f8
correctly link the badge
2023-01-02 22:19:29 +01:00
Théo Monnom and GitHub
e7d72165b4
Update README.md ( #15 )
...
* Update README.md
* videoframes example
* fix indents
* fix indents x2
2023-01-02 22:16:03 +01:00
Théo Monnom and GitHub
11d5359464
fi ci & windows compilation ( #14 )
...
* attempt to fix mac compilation on x86_64
* decompress zip insead of tarball on windows
* attempt to fix 1
* still cache on failure
* attempt 2
2023-01-02 21:47:50 +01:00
a07b3451a3
publish client-sdk-native ( #12 )
...
* Create README.md
* add example
* crates & examples
* fix syntax
* add LICENSE
* thirdparty LICENSE
* rearrange repo
* fix build
* egui versions
* prepare publish
* fix demo compilation
* add test ci
* Update rust.yml
* forgot runs-on
* install protoc before building
* avoid rate limit
* include submodules
* updates to readme
* cache rust builds
Co-authored-by: David Zhao <[email protected] >
Co-authored-by: David Zhao <[email protected] >
2023-01-02 20:13:48 +01:00
Théo Monnom and GitHub
a927baac94
download prebuilt webrtc binaries before building libwebrtc-sys ( #11 )
2023-01-02 14:41:53 +01:00
Théo Monnom
6e1edcb63c
remove test comments
2023-01-02 00:42:45 +01:00
Théo Monnom and GitHub
0fecba1655
fix: use the new event system on the demo ( #10 )
...
* compilable demo
* correctly close room_task
* wip
* fix demo
2023-01-02 00:40:56 +01:00
Théo Monnom and GitHub
36aa00343b
Merge pull request #9 from livekit/theo/events
...
finish LiveKit implementation & added Rust demo
2023-01-01 22:38:54 +01:00
Théo Monnom
87dc42b09e
events, observers & happy new year 🎆
2023-01-01 22:38:27 +01:00
Théo Monnom
b36d721a5d
format
2022-12-28 19:35:55 +01:00
Théo Monnom
8ac91cd506
connection_quality
2022-12-28 19:33:22 +01:00
Théo Monnom
7b82900080
audio_level & active_speakers
2022-12-28 17:13:50 +01:00
Théo Monnom
4135ef30cc
DataReceived event
2022-12-28 02:19:40 +01:00
Théo Monnom
ac725bb29a
connection states and related events
2022-12-27 23:06:55 +01:00
Théo Monnom
9d05259c5a
Internal SessionEvents to avoid confusion with the RoomEvents
2022-12-27 20:57:35 +01:00
Théo Monnom
5f290de593
Use channel instead of callbacks & removed participant events
2022-12-27 01:42:30 +01:00
Théo Monnom
f7a746f0f6
finally using RoomSession & Merry Christmas 🎄
2022-12-26 00:15:29 +01:00
Théo Monnom
ba770f7c87
wip
2022-12-24 14:27:59 +01:00
Théo Monnom
d1e0f39d59
room_session wip
2022-12-24 00:23:05 +01:00
Théo Monnom
0c9c186b33
Fix wrong reconnect timing
2022-12-23 00:35:59 +01:00
Théo Monnom
921f314f00
todo comment
2022-12-23 00:04:57 +01:00
Théo Monnom
b30737e251
demo: fix incorrect pixels per point on mac
2022-12-23 00:03:24 +01:00
Théo Monnom
167418ca24
finish reconnection logic + fix mac compilation
2022-12-23 00:00:50 +01:00
Théo Monnom
9c489d51f4
reconnection wip + simulate scenario + fixed cyclic types
2022-12-22 23:07:29 +01:00
Théo Monnom
c1cba8dcbd
wip
...
I still need to solve type checking cycle to be able to compile
2022-12-22 00:44:40 +01:00
Théo Monnom
2a83ec8376
remove unnecessary config
2022-12-20 23:45:40 +01:00
Théo Monnom
a3408910d1
fix wrong link
2022-12-20 23:42:27 +01:00
Théo Monnom
59558739f0
remove unused imports
2022-12-20 23:25:35 +01:00
Théo Monnom
e3905d56b5
deadlock comment
2022-12-20 23:16:49 +01:00
Théo Monnom
1ed925dd38
refactored RTCEngine
2022-12-20 23:05:31 +01:00
Théo Monnom
2e3c87f232
rtc_session WIP
2022-12-19 17:44:10 +01:00
Théo Monnom
7467364cd6
switch comp
2022-12-19 08:09:27 +01:00
Théo Monnom
8aa5e63624
reworked
2022-12-18 22:50:14 +01:00
Théo Monnom
86bec130bb
wip x2
2022-12-16 00:04:53 +01:00
Théo Monnom
4606c0a9ec
wip
2022-12-15 23:27:43 +01:00
Théo Monnom
4465afad0c
reconnect WIP
2022-12-14 23:38:20 +01:00
Théo Monnom
da91efd3a5
Rework the demo
...
Doing this quick commit to test that in my Mac
2022-12-07 01:52:36 +01:00
Théo Monnom and GitHub
57adc07363
Merge pull request #7 from livekit/theo/tracks
...
Initial downstream tracks + VideoRenderer example
2022-12-02 16:48:56 +01:00
Théo Monnom
686f5db969
livekit-utils crate + VideoRenderer proto
2022-12-02 16:39:42 +01:00
Théo Monnom
59e7ccbffe
Successfully received video frames
2022-11-28 17:30:21 +01:00
Théo Monnom
39fa798c7f
trying to receive VideoFrame, progress...
2022-11-28 15:52:37 +01:00
Théo Monnom
a415748f06
Delete .media_stream.rs.rustfmt
2022-11-22 18:02:07 +01:00
Théo Monnom
ae776f04d0
Initial downstream tracks
2022-11-22 17:59:55 +01:00
Théo Monnom
82ec808dee
changing computer ( started tracks )
...
I used my Mac on the company trip
2022-11-08 10:31:09 +01:00
Théo Monnom
6497930912
implement Debug on WebRTC structs
2022-10-29 15:00:38 +02:00
Théo Monnom
3630e93054
Initial Room
...
Switching computer
2022-10-29 00:11:10 +02:00
Théo Monnom
2ecae706a9
refactored RTCEngine
...
Added comments & separated code into multiple parts.
Maybe the next step is to put PeerConnections into another file 🤔
2022-10-08 23:04:50 +02:00
Théo Monnom
c1326dab93
independant SignalClient, SignalStream & events
...
SignalStream holds the connection to the websocket. It can be replaced at each connection
2022-10-08 23:00:56 +02:00
Théo Monnom
410bbbb5ed
use FnOnce if possible on libwebrtc callbacks
2022-10-08 20:58:40 +02:00
Théo Monnom
754bc80f31
fix negotiation crash with CallFactoryInterface for media & moved RTCEngine code to EngineInternal
2022-10-03 21:59:25 +02:00
Théo Monnom
d64c7e5e08
rustfmt & signal_client improvememts
...
- handle ping message
- recv now only returns on SignalResponse
2022-10-03 15:59:43 +02:00
Théo Monnom
2213a70142
cancellable SignalClient & tracing
2022-10-02 21:22:12 +02:00
Théo Monnom and GitHub
9361b7e256
Tiny Room prototype
...
Minimalist room poc
2022-09-29 21:37:21 +02:00
Théo Monnom
0d34e5a48e
Started Room, publisher negotiation, add RTCRuntime dependencies across webrtc instances
2022-09-29 21:34:30 +02:00
Théo Monnom
32ac92b171
refactored rtc_engine
2022-09-27 15:21:38 +02:00
Théo Monnom and GitHub
bafa65dc9b
Merge pull request #3 from livekit/theo/prototype
...
Initial client-sdk-native
2022-09-26 20:06:13 +02:00
Théo Monnom and GitHub
2de92c0e23
Merge pull request #5 from livekit/theo/rtc_prototype
...
RTC Prototype
2022-09-26 12:35:21 +02:00
Théo Monnom
04273f24da
Handle subscriber data channels
2022-09-25 23:57:24 +02:00
Théo Monnom
6ad2563348
subscriber prototype
2022-09-25 22:32:21 +02:00
Théo Monnom
4067a9add6
rtc_config
2022-09-25 13:54:56 +02:00
Théo Monnom
e74aac70bb
Added .clang-format + reformatted code
2022-09-20 22:47:47 +02:00
Théo Monnom
baf1db9a04
Fix MacOS build
2022-09-20 22:19:47 +02:00