livekit-server-sdk 0.5.3 → 0.5.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +4 -0
- data/bin/bootstrap.sh +0 -0
- data/lib/livekit/egress_service_client.rb +17 -11
- data/lib/livekit/ingress_service_client.rb +8 -3
- data/lib/livekit/proto/livekit_egress_pb.rb +1 -0
- data/lib/livekit/proto/livekit_ingress_pb.rb +4 -0
- data/lib/livekit/proto/livekit_models_pb.rb +10 -0
- data/lib/livekit/version.rb +1 -1
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aeefcd6261651616958b5ce4bcae8b16a90d655684786d64f8c0d5f0b1c77550
|
4
|
+
data.tar.gz: 4aaa7825155508e4595d96051df098124401d16f7a2e36e0a1812b93e9f9b1c8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 398a4cb7de533fe4585d1b3ca8ee087261170c9b90d5822e8b70c7261d20d93ac1998118b5a559057b7eaa00cf44bbf935c6d64cb416f09bf2ee111b6177760b
|
7
|
+
data.tar.gz: f591ff5488228ca9b68c1da4277b3eb356f549f6005afa027a5f4fd0522f3298d528879d71f24e3cc369b0cca270a6ef16e99fa964a4d433d0015632161230b4
|
data/.gitignore
CHANGED
data/bin/bootstrap.sh
CHANGED
File without changes
|
@@ -108,7 +108,9 @@ module LiveKit
|
|
108
108
|
# true to record only audio
|
109
109
|
audio_only: false,
|
110
110
|
# true to record only video
|
111
|
-
video_only: false
|
111
|
+
video_only: false,
|
112
|
+
# true to await START_RECORDING chrome log
|
113
|
+
await_start_signal: false
|
112
114
|
)
|
113
115
|
request = Proto::WebEgressRequest.new(
|
114
116
|
url: url,
|
@@ -116,6 +118,7 @@ module LiveKit
|
|
116
118
|
advanced: advanced,
|
117
119
|
audio_only: audio_only,
|
118
120
|
video_only: video_only,
|
121
|
+
await_start_signal: await_start_signal,
|
119
122
|
)
|
120
123
|
self.set_output(request, output)
|
121
124
|
self.rpc(
|
@@ -144,18 +147,21 @@ module LiveKit
|
|
144
147
|
:UpdateStream,
|
145
148
|
Proto::UpdateStreamRequest.new(
|
146
149
|
egress_id: egress_id,
|
147
|
-
add_output_urls:
|
148
|
-
remove_output_urls:
|
150
|
+
add_output_urls: add_output_urls,
|
151
|
+
remove_output_urls: remove_output_urls,
|
149
152
|
),
|
150
153
|
headers: auth_header(roomRecord: true),
|
151
154
|
)
|
152
155
|
end
|
153
156
|
|
154
157
|
# list all egress or only egress for a room
|
155
|
-
def list_egress(
|
158
|
+
def list_egress(
|
159
|
+
room_name: nil,
|
160
|
+
active: false
|
161
|
+
)
|
156
162
|
self.rpc(
|
157
163
|
:ListEgress,
|
158
|
-
Proto::ListEgressRequest.new(room_name: room_name),
|
164
|
+
Proto::ListEgressRequest.new(room_name: room_name, active: active),
|
159
165
|
headers: auth_header(roomRecord: true),
|
160
166
|
)
|
161
167
|
end
|
@@ -177,24 +183,24 @@ module LiveKit
|
|
177
183
|
output.each do |out|
|
178
184
|
if out.is_a? LiveKit::Proto::EncodedFileOutput
|
179
185
|
raise "cannot add multiple file outputs" if request.file_outputs.any?
|
180
|
-
request.file_outputs = [out]
|
186
|
+
request.file_outputs = Google::Protobuf::RepeatedField.new(:message, Proto::EncodedFileOutput, [out])
|
181
187
|
elsif out.is_a? LiveKit::Proto::SegmentedFileOutput
|
182
188
|
raise "cannot add multiple segmented file outputs" if request.segment_outputs.any?
|
183
|
-
request.segment_outputs = [out]
|
189
|
+
request.segment_outputs = Google::Protobuf::RepeatedField.new(:message, Proto::SegmentedFileOutput, [out])
|
184
190
|
elsif out.is_a? Livekit::Proto::StreamOutput
|
185
191
|
raise "cannot add multiple stream outputs" if request.stream_outputs.any?
|
186
|
-
request.stream_outputs = [out]
|
192
|
+
request.stream_outputs = Google::Protobuf::RepeatedField.new(:message, Proto::StreamOutput, [out])
|
187
193
|
end
|
188
194
|
end
|
189
195
|
elsif output.is_a? LiveKit::Proto::EncodedFileOutput
|
190
196
|
request.file = output
|
191
|
-
request.file_outputs = [output]
|
197
|
+
request.file_outputs = Google::Protobuf::RepeatedField.new(:message, Proto::EncodedFileOutput, [output])
|
192
198
|
elsif output.is_a? LiveKit::Proto::SegmentedFileOutput
|
193
199
|
request.segments = output
|
194
|
-
request.segment_outputs = [output]
|
200
|
+
request.segment_outputs = Google::Protobuf::RepeatedField.new(:message, Proto::SegmentedFileOutput, [output])
|
195
201
|
elsif output.is_a? LiveKit::Proto::StreamOutput
|
196
202
|
request.stream = output
|
197
|
-
request.stream_outputs = [output]
|
203
|
+
request.stream_outputs = Google::Protobuf::RepeatedField.new(:message, Proto::StreamOutput, [output])
|
198
204
|
end
|
199
205
|
end
|
200
206
|
end
|
@@ -14,7 +14,6 @@ module LiveKit
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def create_ingress(
|
17
|
-
# currently :RTMP_INPUT is the only supported type
|
18
17
|
input_type,
|
19
18
|
# optional, name to identify the ingress
|
20
19
|
name: nil,
|
@@ -27,7 +26,9 @@ module LiveKit
|
|
27
26
|
# optional, LiveKit::Proto::IngressAudioOptions
|
28
27
|
audio: nil,
|
29
28
|
# optional, LiveKit::Proto::IngressVideoOptions
|
30
|
-
video: nil
|
29
|
+
video: nil,
|
30
|
+
# optional, whether to forward input media unprocessed, for WHIP only
|
31
|
+
bypass_transcoding: nil
|
31
32
|
)
|
32
33
|
request = Proto::CreateIngressRequest.new(
|
33
34
|
input_type: input_type,
|
@@ -37,6 +38,7 @@ module LiveKit
|
|
37
38
|
participant_name: participant_name,
|
38
39
|
audio: audio,
|
39
40
|
video: video,
|
41
|
+
bypass_transcoding: bypass_transcoding,
|
40
42
|
)
|
41
43
|
self.rpc(
|
42
44
|
:CreateIngress,
|
@@ -58,7 +60,9 @@ module LiveKit
|
|
58
60
|
# optional, LiveKit::Proto::IngressAudioOptions
|
59
61
|
audio: nil,
|
60
62
|
# optional, LiveKit::Proto::IngressVideoOptions
|
61
|
-
video: nil
|
63
|
+
video: nil,
|
64
|
+
# optional, whether to forward input media unprocessed, for WHIP only
|
65
|
+
bypass_transcoding: nil
|
62
66
|
)
|
63
67
|
request = Proto::UpdateIngressRequest.new(
|
64
68
|
ingress_id: ingress_id,
|
@@ -68,6 +72,7 @@ module LiveKit
|
|
68
72
|
participant_name: participant_name,
|
69
73
|
audio: audio,
|
70
74
|
video: video,
|
75
|
+
bypass_transcoding: bypass_transcoding,
|
71
76
|
)
|
72
77
|
self.rpc(
|
73
78
|
:UpdateIngress,
|
@@ -30,6 +30,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
30
30
|
optional :url, :string, 1
|
31
31
|
optional :audio_only, :bool, 2
|
32
32
|
optional :video_only, :bool, 3
|
33
|
+
optional :await_start_signal, :bool, 12
|
33
34
|
repeated :file_outputs, :message, 9, "livekit.EncodedFileOutput"
|
34
35
|
repeated :stream_outputs, :message, 10, "livekit.StreamOutput"
|
35
36
|
repeated :segment_outputs, :message, 11, "livekit.SegmentedFileOutput"
|
@@ -13,6 +13,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
13
13
|
optional :room_name, :string, 3
|
14
14
|
optional :participant_identity, :string, 4
|
15
15
|
optional :participant_name, :string, 5
|
16
|
+
optional :bypass_transcoding, :bool, 8
|
16
17
|
optional :audio, :message, 6, "livekit.IngressAudioOptions"
|
17
18
|
optional :video, :message, 7, "livekit.IngressVideoOptions"
|
18
19
|
end
|
@@ -49,6 +50,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
49
50
|
optional :stream_key, :string, 3
|
50
51
|
optional :url, :string, 4
|
51
52
|
optional :input_type, :enum, 5, "livekit.IngressInput"
|
53
|
+
optional :bypass_transcoding, :bool, 13
|
52
54
|
optional :audio, :message, 6, "livekit.IngressAudioOptions"
|
53
55
|
optional :video, :message, 7, "livekit.IngressVideoOptions"
|
54
56
|
optional :room_name, :string, 8
|
@@ -90,6 +92,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
90
92
|
optional :room_name, :string, 3
|
91
93
|
optional :participant_identity, :string, 4
|
92
94
|
optional :participant_name, :string, 5
|
95
|
+
proto3_optional :bypass_transcoding, :bool, 8
|
93
96
|
optional :audio, :message, 6, "livekit.IngressAudioOptions"
|
94
97
|
optional :video, :message, 7, "livekit.IngressVideoOptions"
|
95
98
|
end
|
@@ -104,6 +107,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
104
107
|
end
|
105
108
|
add_enum "livekit.IngressInput" do
|
106
109
|
value :RTMP_INPUT, 0
|
110
|
+
value :WHIP_INPUT, 1
|
107
111
|
end
|
108
112
|
add_enum "livekit.IngressAudioEncodingPreset" do
|
109
113
|
value :OPUS_STEREO_96KBPS, 0
|
@@ -17,6 +17,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
17
17
|
repeated :enabled_codecs, :message, 7, "livekit.Codec"
|
18
18
|
optional :metadata, :string, 8
|
19
19
|
optional :num_participants, :uint32, 9
|
20
|
+
optional :num_publishers, :uint32, 11
|
20
21
|
optional :active_recording, :bool, 10
|
21
22
|
end
|
22
23
|
add_message "livekit.Codec" do
|
@@ -165,6 +166,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
165
166
|
end
|
166
167
|
add_message "livekit.DisabledCodecs" do
|
167
168
|
repeated :codecs, :message, 1, "livekit.Codec"
|
169
|
+
repeated :publish, :message, 2, "livekit.Codec"
|
168
170
|
end
|
169
171
|
add_message "livekit.RTPStats" do
|
170
172
|
optional :start_time, :message, 1, "google.protobuf.Timestamp"
|
@@ -208,6 +210,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
208
210
|
optional :last_key_frame, :message, 34, "google.protobuf.Timestamp"
|
209
211
|
optional :layer_lock_plis, :uint32, 35
|
210
212
|
optional :last_layer_lock_pli, :message, 36, "google.protobuf.Timestamp"
|
213
|
+
optional :sample_rate, :double, 42
|
214
|
+
optional :drift_ms, :double, 43
|
211
215
|
end
|
212
216
|
add_message "livekit.TimedVersion" do
|
213
217
|
optional :unix_micro, :int64, 1
|
@@ -270,6 +274,11 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
270
274
|
value :RR_SUBSCRIBER_FAILED, 3
|
271
275
|
value :RR_SWITCH_CANDIDATE, 4
|
272
276
|
end
|
277
|
+
add_enum "livekit.SubscriptionError" do
|
278
|
+
value :SE_UNKOWN, 0
|
279
|
+
value :SE_CODEC_UNSUPPORTED, 1
|
280
|
+
value :SE_TRACK_NOTFOUND, 2
|
281
|
+
end
|
273
282
|
end
|
274
283
|
end
|
275
284
|
|
@@ -309,5 +318,6 @@ module LiveKit
|
|
309
318
|
ClientConfigSetting = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("livekit.ClientConfigSetting").enummodule
|
310
319
|
DisconnectReason = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("livekit.DisconnectReason").enummodule
|
311
320
|
ReconnectReason = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("livekit.ReconnectReason").enummodule
|
321
|
+
SubscriptionError = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("livekit.SubscriptionError").enummodule
|
312
322
|
end
|
313
323
|
end
|
data/lib/livekit/version.rb
CHANGED
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: livekit-server-sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Omri Gabay
|
8
8
|
- David Zhao
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-06-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: google-protobuf
|
@@ -91,7 +91,7 @@ dependencies:
|
|
91
91
|
- - "<"
|
92
92
|
- !ruby/object:Gem::Version
|
93
93
|
version: '2.0'
|
94
|
-
description:
|
94
|
+
description:
|
95
95
|
email:
|
96
96
|
- omri@omrigabay.me
|
97
97
|
- dz@livekit.io
|
@@ -157,7 +157,7 @@ homepage: https://livekit.io
|
|
157
157
|
licenses:
|
158
158
|
- Apache-2.0
|
159
159
|
metadata: {}
|
160
|
-
post_install_message:
|
160
|
+
post_install_message:
|
161
161
|
rdoc_options: []
|
162
162
|
require_paths:
|
163
163
|
- lib
|
@@ -172,8 +172,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
172
172
|
- !ruby/object:Gem::Version
|
173
173
|
version: '0'
|
174
174
|
requirements: []
|
175
|
-
rubygems_version: 3.3.
|
176
|
-
signing_key:
|
175
|
+
rubygems_version: 3.0.3.1
|
176
|
+
signing_key:
|
177
177
|
specification_version: 4
|
178
178
|
summary: LiveKit Server SDK for Ruby
|
179
179
|
test_files: []
|