26 Commits

Author SHA1 Message Date
Théo Monnom 7010934c6d v0.1.2 (#104) 2023-06-30 22:10:55 +02:00
Théo Monnom 8387ad8ff3 fix: publish track request on the ffi 2023-06-30 21:24:05 +02:00
Théo Monnom c7c82cc693 use callbacks on internal events (#100) 2023-06-29 22:52:43 +02:00
Théo Monnom 983546767a fix: use native tls roots on ffi (#91) 2023-06-19 01:40:51 +02:00
Théo Monnom 25f4c9a075 feat: add ffi datachannel & mute events (#88) 2023-06-18 22:45:05 +02:00
Théo Monnom 9c2ba04f71 feat: tls features (#86)
* feat: tls features

* Update builds.yml
2023-06-09 23:03:35 +02:00
Théo Monnom 55bda13069 cleanup: webrtc-sys & fix RtcRuntime disposing crashes (#81) 2023-06-04 01:02:00 +02:00
Théo Monnom 05ad1c95af cleanup: room & dependencies (#76) 2023-05-25 20:13:34 +02:00
Théo Monnom 40f08b16fc fix deadlock while resampling on the ffi (#69) 2023-05-13 02:42:53 +02:00
Théo Monnom 2cad45cb39 use audio resampler on the write_to_disk example (#68) 2023-05-13 01:48:06 +02:00
Théo Monnom 76210c9f67 fix: incorrect resample response (#67) 2023-05-13 01:02:12 +02:00
Théo Monnom 7c8878502e feat: AudioResampler (#66) 2023-05-13 00:25:26 +02:00
Aaron Spiegel f2b4373ba4 Add proto3 optional to prost build (#65)
* add proto3 optional to prost build

* also add optional proto flag to livekit_ffi

---------

Co-authored-by: Théo Monnom <theo.monnom@outlook.com>
2023-05-12 12:48:56 +02:00
Théo Monnom f6954e3faa fix bad audio quality & save_to_disk example (#64)
- save_to_disk example: write raw pcm frames into a wav file
2023-05-12 00:27:07 +02:00
Théo Monnom eb43e02bd1 add env_logger (#60) 2023-05-09 13:01:01 +02:00
Théo Monnom 134466641b fix: cbindgen extern fnc (#58) 2023-05-09 03:46:28 +02:00
Théo Monnom 8dd7979d04 feat: add cbindgen to livekit-ffi (#57) 2023-05-08 23:33:02 +02:00
Théo Monnom 1c12e749f2 feat: add publishing & audio to ffi (#46)
- Divide FFI protocol into multiple files
- Audio support
- AV Streams/Sources
- Create tracks
- Use Dashmap to store handles
- Add a capture test
     - Ignored by GHA atm
2023-05-08 23:12:37 +02:00
Théo Monnom 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 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 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 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 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 b96858bdba add gh repo to Cargo.toml (#33) 2023-01-12 15:16:04 +01:00
Théo Monnom 8841af6ee6 v0.1.1 (#32) 2023-01-12 14:48:03 +01:00
Théo Monnom 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