cleanup: room & dependencies (#76)

This commit is contained in:
Théo Monnom
2023-05-25 20:13:34 +02:00
committed by GitHub
parent a9e6865137
commit 05ad1c95af
46 changed files with 1094 additions and 1031 deletions
+10 -10
View File
@@ -18,7 +18,7 @@ message AllocAudioBufferResponse { AudioFrameBufferInfo buffer = 1; }
// Create a new AudioStream
// AudioStream is used to receive audio frames from a track
message NewAudioStreamRequest {
FFIHandleId room_handle = 1;
FfiHandleId room_handle = 1;
string participant_sid = 2;
string track_sid = 3;
AudioStreamType type = 4;
@@ -31,21 +31,21 @@ message NewAudioSourceResponse { AudioSourceInfo source = 1; }
// Push a frame to an AudioSource
message CaptureAudioFrameRequest {
FFIHandleId source_handle = 1;
FFIHandleId buffer_handle = 2;
FfiHandleId source_handle = 1;
FfiHandleId buffer_handle = 2;
}
message CaptureAudioFrameResponse {}
// Create a new AudioResampler
message NewAudioResamplerRequest {}
message NewAudioResamplerResponse {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
}
// Remix and resample an audio frame
message RemixAndResampleRequest {
FFIHandleId resampler_handle = 1;
FFIHandleId buffer_handle = 2;
FfiHandleId resampler_handle = 1;
FfiHandleId buffer_handle = 2;
uint32 num_channels = 3;
uint32 sample_rate = 4;
}
@@ -59,7 +59,7 @@ message RemixAndResampleResponse {
///
message AudioFrameBufferInfo {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
uint64 data_ptr = 2; // *const i16
uint32 num_channels = 3;
uint32 sample_rate = 4;
@@ -76,13 +76,13 @@ enum AudioStreamType {
}
message AudioStreamInfo {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
AudioStreamType type = 2;
string track_sid = 3;
}
message AudioStreamEvent {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
oneof message { AudioFrameReceived frame_received = 2; }
}
@@ -99,6 +99,6 @@ enum AudioSourceType {
}
message AudioSourceInfo {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
AudioSourceType type = 2;
}
+7 -7
View File
@@ -12,7 +12,7 @@ import "audio_frame.proto";
/// This is the input of livekit_ffi_request function
/// We always expect a response (FFIResponse)
message FFIRequest {
message FfiRequest {
oneof message {
InitializeRequest initialize = 1;
DisposeRequest dispose = 2;
@@ -33,7 +33,7 @@ message FFIRequest {
NewVideoSourceRequest new_video_source = 11;
CaptureVideoFrameRequest capture_video_frame = 12;
ToI420Request to_i420 = 13;
ToARGBRequest to_argb = 14;
ToArgbRequest to_argb = 14;
// Audio
AllocAudioBufferRequest alloc_audio_buffer = 15;
@@ -46,7 +46,7 @@ message FFIRequest {
}
/// This is the output of livekit_ffi_request function.
message FFIResponse {
message FfiResponse {
oneof message {
InitializeResponse initialize = 1;
DisposeResponse dispose = 2;
@@ -67,7 +67,7 @@ message FFIResponse {
NewVideoSourceResponse new_video_source = 11;
CaptureVideoFrameResponse capture_video_frame = 12;
ToI420Response to_i420 = 13;
ToARGBResponse to_argb = 14;
ToArgbResponse to_argb = 14;
// Audio
AllocAudioBufferResponse alloc_audio_buffer = 15;
@@ -79,7 +79,7 @@ message FFIResponse {
}
}
message FFIEvent {
message FfiEvent {
oneof message {
RoomEvent room_event = 1;
TrackEvent track_event = 2;
@@ -104,11 +104,11 @@ message DisposeRequest {
}
message DisposeResponse {
optional FFIAsyncId async_id = 1; // None if sync
optional FfiAsyncId async_id = 1; // None if sync
}
message DisposeCallback {
FFIAsyncId async_id = 1;
FfiAsyncId async_id = 1;
}
// TODO(theomonnom): Debug messages (Print handles, forward logs).
+2 -2
View File
@@ -7,11 +7,11 @@ option csharp_namespace = "LiveKit.Proto";
/// The foreign language is responsable for disposing handles
/// Forgetting to dispose the handle may lead to memory leaks
/// Messages in this file can contain an FFIHandle
message FFIHandleId {
message FfiHandleId {
uint64 id = 1;
}
/// Link the request/response of an asynchronous call
message FFIAsyncId {
message FfiAsyncId {
uint64 id = 1;
}
+13 -13
View File
@@ -15,42 +15,42 @@ message ConnectRequest {
RoomOptions options = 3;
}
message ConnectResponse {
FFIAsyncId async_id = 1;
FfiAsyncId async_id = 1;
}
message ConnectCallback {
FFIAsyncId async_id = 1;
FfiAsyncId async_id = 1;
optional string error = 2;
RoomInfo room = 3;
}
// Disconnect from the a room
message DisconnectRequest { FFIHandleId room_handle = 1; }
message DisconnectResponse { FFIAsyncId async_id = 1; }
message DisconnectRequest { FfiHandleId room_handle = 1; }
message DisconnectResponse { FfiAsyncId async_id = 1; }
message DisconnectCallback { }
// Publish a track to the room
message PublishTrackRequest {
FFIHandleId room_handle = 1;
FFIHandleId track_handle = 2;
FfiHandleId room_handle = 1;
FfiHandleId track_handle = 2;
TrackPublishOptions options = 3;
}
message PublishTrackResponse {
FFIAsyncId async_id = 1;
FfiAsyncId async_id = 1;
}
message PublishTrackCallback {
FFIAsyncId async_id = 1;
FfiAsyncId async_id = 1;
optional string error = 2;
TrackPublicationInfo publication = 3;
}
// Unpublish a track from the room
message UnpublishTrackRequest {
FFIHandleId room_handle = 1;
FfiHandleId room_handle = 1;
string track_sid = 2;
bool stop_on_unpublish = 3;
}
message UnpublishTrackResponse {
FFIAsyncId async_id = 1;
FfiAsyncId async_id = 1;
}
message UnpublishTrackCallback {
optional string error = 1;
@@ -109,7 +109,7 @@ enum DataPacketKind {
}
message RoomEvent {
FFIHandleId room_handle = 1;
FfiHandleId room_handle = 1;
oneof message {
ParticipantConnected participant_connected = 2;
ParticipantDisconnected participant_disconnected = 3;
@@ -131,7 +131,7 @@ message RoomEvent {
}
message RoomInfo {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
string sid = 2;
string name = 3;
string metadata = 4;
@@ -140,7 +140,7 @@ message RoomInfo {
}
message DataReceived {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
optional string participant_sid = 2;
uint64 data_ptr = 3;
uint64 data_size = 4;
+3 -3
View File
@@ -21,7 +21,7 @@ message AudioCaptureOptions {
message CreateVideoTrackRequest {
string name = 1;
VideoCaptureOptions options = 2;
FFIHandleId source_handle = 3;
FfiHandleId source_handle = 3;
}
message CreateVideoTrackResponse {
TrackInfo track = 1;
@@ -31,7 +31,7 @@ message CreateVideoTrackResponse {
message CreateAudioTrackRequest {
string name = 1;
AudioCaptureOptions options = 2;
FFIHandleId source_handle = 3;
FfiHandleId source_handle = 3;
}
message CreateAudioTrackResponse {
TrackInfo track = 1;
@@ -80,7 +80,7 @@ message TrackPublicationInfo {
message TrackInfo {
// Tracks created/owned by the client will have a handle
FFIHandleId opt_handle = 1;
FfiHandleId opt_handle = 1;
string sid = 2;
string name = 3;
TrackKind kind = 4;
+11 -11
View File
@@ -16,7 +16,7 @@ message AllocVideoBufferResponse { VideoFrameBufferInfo buffer = 1; }
// Create a new VideoStream
// VideoStream is used to receive video frames from a track
message NewVideoStreamRequest {
FFIHandleId room_handle = 1;
FfiHandleId room_handle = 1;
string participant_sid = 2;
string track_sid = 3;
VideoStreamType type = 4;
@@ -30,9 +30,9 @@ message NewVideoSourceResponse { VideoSourceInfo source = 1; }
// Push a frame to a VideoSource
message CaptureVideoFrameRequest {
FFIHandleId source_handle = 1;
FfiHandleId source_handle = 1;
VideoFrameInfo frame = 2;
FFIHandleId buffer_handle = 3;
FfiHandleId buffer_handle = 3;
}
message CaptureVideoFrameResponse {}
@@ -42,15 +42,15 @@ message ToI420Request {
bool flip_y = 1;
oneof from {
ARGBBufferInfo argb = 2;
FFIHandleId buffer = 3;
FfiHandleId buffer = 3;
}
}
message ToI420Response { VideoFrameBufferInfo buffer = 1; }
// Convert a YUV frame to a RGBA frame
// Only I420 is supported atm
message ToARGBRequest {
FFIHandleId buffer = 1;
message ToArgbRequest {
FfiHandleId buffer = 1;
uint64 dst_ptr = 2;
VideoFormatType dst_format = 3;
uint32 dst_stride = 4;
@@ -58,7 +58,7 @@ message ToARGBRequest {
uint32 dst_height = 6;
bool flip_y = 7;
}
message ToARGBResponse {}
message ToArgbResponse {}
///
/// VideoFrame buffers ///
@@ -115,7 +115,7 @@ message VideoFrameInfo {
}
message VideoFrameBufferInfo {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
VideoFrameBufferType buffer_type = 2;
uint32 width = 3;
uint32 height = 4;
@@ -166,13 +166,13 @@ enum VideoStreamType {
}
message VideoStreamInfo {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
VideoStreamType type = 2;
string track_sid = 3;
}
message VideoStreamEvent {
FFIHandleId handle = 1;
FfiHandleId handle = 1;
oneof message { VideoFrameReceived frame_received = 2; }
}
@@ -192,7 +192,7 @@ enum VideoSourceType {
message VideoSourceInfo {
// # SAFETY
// This handle must not be dropped if a track is currently using it
FFIHandleId handle = 1;
FfiHandleId handle = 1;
VideoSourceType type = 2;
}