livekit-server-sdk 0.5.3 → 0.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1505e5ddeb7a06a32506013527754d2e404b0183ff64f7b1fa4d927d085d95cf
4
- data.tar.gz: ccca2cec97c35e51e3fb195167e1b14c0bd85f65e130d7621dc9817d24de8ee4
3
+ metadata.gz: aeefcd6261651616958b5ce4bcae8b16a90d655684786d64f8c0d5f0b1c77550
4
+ data.tar.gz: 4aaa7825155508e4595d96051df098124401d16f7a2e36e0a1812b93e9f9b1c8
5
5
  SHA512:
6
- metadata.gz: 6d683ca01793639609a82c6c8e92ea332abfc5a17bab48c1b04a322c4e660facfa55500d094fdc6690dcbe057326005a5bcae556811304213fce488cfe48f839
7
- data.tar.gz: 9b3f7820ec7682b4ab3b203272b2172cf0b47fd97416f5b5d934bc174e3224074dd9879feb98e576da2c2a8a9a963e638784979976a9a77cfc2f6b14fb13759f
6
+ metadata.gz: 398a4cb7de533fe4585d1b3ca8ee087261170c9b90d5822e8b70c7261d20d93ac1998118b5a559057b7eaa00cf44bbf935c6d64cb416f09bf2ee111b6177760b
7
+ data.tar.gz: f591ff5488228ca9b68c1da4277b3eb356f549f6005afa027a5f4fd0522f3298d528879d71f24e3cc369b0cca270a6ef16e99fa964a4d433d0015632161230b4
data/.gitignore CHANGED
@@ -9,5 +9,9 @@
9
9
  /tmp/
10
10
  /vendor/bundle
11
11
 
12
+ #dev
13
+ test/
14
+ livekit-server-sdk-*.gem
15
+
12
16
  # rspec failure tracking
13
17
  .rspec_status
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: Google::Protobuf::RepeatedField.new(:string, add_output_urls.to_a),
148
- remove_output_urls: Google::Protobuf::RepeatedField.new(:string, remove_output_urls.to_a),
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(room_name: nil)
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module LiveKit
4
- VERSION = "0.5.3"
4
+ VERSION = "0.5.5"
5
5
  end
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.3
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-04-21 00:00:00.000000000 Z
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.7
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: []