mux_ruby 3.20.0 → 4.0.0

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.
Files changed (85) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +4 -4
  4. data/docs/AssetStaticRenditions.md +2 -2
  5. data/docs/AssetsApi.md +146 -1
  6. data/docs/CreateAssetRequest.md +4 -2
  7. data/docs/CreateStaticRenditionRequest.md +20 -0
  8. data/docs/CreateStaticRenditionResponse.md +18 -0
  9. data/docs/InputSettings.md +1 -1
  10. data/docs/LiveStreamsApi.md +143 -0
  11. data/docs/StaticRendition.md +40 -0
  12. data/docs/UpdateLiveStreamNewAssetSettings.md +4 -2
  13. data/docs/UpdateLiveStreamNewAssetSettingsStaticRenditionsRequest.md +18 -0
  14. data/docs/VideoView.md +33 -1
  15. data/gen/generator-config.json +1 -1
  16. data/lib/mux_ruby/api/assets_api.rb +140 -2
  17. data/lib/mux_ruby/api/live_streams_api.rb +132 -0
  18. data/lib/mux_ruby/api/metrics_api.rb +2 -2
  19. data/lib/mux_ruby/models/asset_static_renditions.rb +2 -2
  20. data/lib/mux_ruby/models/create_asset_request.rb +17 -5
  21. data/lib/mux_ruby/models/{create_broadcast_request.rb → create_static_rendition_request.rb} +49 -53
  22. data/lib/mux_ruby/models/{start_space_broadcast_response.rb → create_static_rendition_response.rb} +4 -4
  23. data/lib/mux_ruby/models/input_settings.rb +1 -1
  24. data/lib/mux_ruby/models/{asset_static_renditions_files.rb → static_rendition.rb} +118 -9
  25. data/lib/mux_ruby/models/update_live_stream_new_asset_settings.rb +28 -6
  26. data/lib/mux_ruby/models/{list_spaces_response.rb → update_live_stream_new_asset_settings_static_renditions_request.rb} +11 -16
  27. data/lib/mux_ruby/models/video_view.rb +161 -4
  28. data/lib/mux_ruby/version.rb +1 -1
  29. data/lib/mux_ruby.rb +4 -16
  30. data/spec/models/create_static_rendition_request_spec.rb +44 -0
  31. data/spec/models/create_static_rendition_response_spec.rb +34 -0
  32. data/spec/models/static_rendition_spec.rb +124 -0
  33. data/spec/models/update_live_stream_new_asset_settings_static_renditions_request_spec.rb +34 -0
  34. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-11.1.3/byebug/byebug.so +0 -0
  35. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-11.1.3/gem_make.out +8 -8
  36. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/ffi-1.16.3/ffi_c.so +0 -0
  37. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/ffi-1.16.3/gem_make.out +6 -6
  38. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/ffi-1.16.3/mkmf.log +19 -19
  39. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +7 -7
  40. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/jaro_winkler/jaro_winkler_ext.so +0 -0
  41. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-4.0.4/gem_make.out +6 -6
  42. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-4.0.4/mkmf.log +5 -5
  43. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-4.0.4/psych.so +0 -0
  44. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.0.2/gem_make.out +6 -6
  45. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.0.2/mkmf.log +2 -2
  46. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.0.2/stringio.so +0 -0
  47. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/ext/byebug/Makefile +3 -3
  48. data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/byebug.so +0 -0
  49. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/ext/ffi_c/Makefile +3 -3
  50. data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi_c.so +0 -0
  51. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/ext/jaro_winkler/Makefile +3 -3
  52. data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.6/lib/jaro_winkler/jaro_winkler_ext.so +0 -0
  53. data/vendor/bundle/ruby/3.2.0/gems/psych-4.0.4/ext/psych/Makefile +3 -3
  54. data/vendor/bundle/ruby/3.2.0/gems/psych-4.0.4/lib/psych.so +0 -0
  55. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.0.2/ext/stringio/Makefile +3 -3
  56. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.0.2/lib/stringio.so +0 -0
  57. metadata +172 -191
  58. data/docs/AssetStaticRenditionsFiles.md +0 -28
  59. data/docs/Broadcast.md +0 -30
  60. data/docs/BroadcastLayout.md +0 -15
  61. data/docs/BroadcastResolution.md +0 -15
  62. data/docs/BroadcastResponse.md +0 -18
  63. data/docs/BroadcastStatus.md +0 -15
  64. data/docs/CreateBroadcastRequest.md +0 -26
  65. data/docs/CreateSpaceRequest.md +0 -22
  66. data/docs/ListSpacesResponse.md +0 -18
  67. data/docs/Space.md +0 -30
  68. data/docs/SpaceResponse.md +0 -18
  69. data/docs/SpaceStatus.md +0 -15
  70. data/docs/SpaceType.md +0 -15
  71. data/docs/SpacesApi.md +0 -658
  72. data/docs/StartSpaceBroadcastResponse.md +0 -18
  73. data/docs/StopSpaceBroadcastResponse.md +0 -18
  74. data/lib/mux_ruby/api/spaces_api.rb +0 -619
  75. data/lib/mux_ruby/models/broadcast.rb +0 -305
  76. data/lib/mux_ruby/models/broadcast_layout.rb +0 -38
  77. data/lib/mux_ruby/models/broadcast_resolution.rb +0 -41
  78. data/lib/mux_ruby/models/broadcast_response.rb +0 -223
  79. data/lib/mux_ruby/models/broadcast_status.rb +0 -37
  80. data/lib/mux_ruby/models/create_space_request.rb +0 -242
  81. data/lib/mux_ruby/models/space.rb +0 -301
  82. data/lib/mux_ruby/models/space_response.rb +0 -223
  83. data/lib/mux_ruby/models/space_status.rb +0 -37
  84. data/lib/mux_ruby/models/space_type.rb +0 -36
  85. data/lib/mux_ruby/models/stop_space_broadcast_response.rb +0 -218
@@ -155,6 +155,77 @@ module MuxRuby
155
155
  return data, status_code, headers
156
156
  end
157
157
 
158
+ # Create a static rendition for an asset
159
+ # Creates a static rendition (i.e. MP4) for an asset
160
+ # @param asset_id [String] The asset ID.
161
+ # @param create_static_rendition_request [CreateStaticRenditionRequest]
162
+ # @param [Hash] opts the optional parameters
163
+ # @return [CreateStaticRenditionResponse]
164
+ def create_asset_static_rendition(asset_id, create_static_rendition_request, opts = {})
165
+ data, _status_code, _headers = create_asset_static_rendition_with_http_info(asset_id, create_static_rendition_request, opts)
166
+ data
167
+ end
168
+
169
+ # Create a static rendition for an asset
170
+ # Creates a static rendition (i.e. MP4) for an asset
171
+ # @param asset_id [String] The asset ID.
172
+ # @param create_static_rendition_request [CreateStaticRenditionRequest]
173
+ # @param [Hash] opts the optional parameters
174
+ # @return [Array<(CreateStaticRenditionResponse, Integer, Hash)>] CreateStaticRenditionResponse data, response status code and response headers
175
+ def create_asset_static_rendition_with_http_info(asset_id, create_static_rendition_request, opts = {})
176
+ if @api_client.config.debugging
177
+ @api_client.config.logger.debug 'Calling API: AssetsApi.create_asset_static_rendition ...'
178
+ end
179
+ # verify the required parameter 'asset_id' is set
180
+ if @api_client.config.client_side_validation && asset_id.nil?
181
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.create_asset_static_rendition"
182
+ end
183
+ # verify the required parameter 'create_static_rendition_request' is set
184
+ if @api_client.config.client_side_validation && create_static_rendition_request.nil?
185
+ fail ArgumentError, "Missing the required parameter 'create_static_rendition_request' when calling AssetsApi.create_asset_static_rendition"
186
+ end
187
+ # resource path
188
+ local_var_path = '/video/v1/assets/{ASSET_ID}/static-renditions'.sub('{' + 'ASSET_ID' + '}', CGI.escape(asset_id.to_s))
189
+
190
+ # query parameters
191
+ query_params = opts[:query_params] || {}
192
+
193
+ # header parameters
194
+ header_params = opts[:header_params] || {}
195
+ # HTTP header 'Accept' (if needed)
196
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
197
+ # HTTP header 'Content-Type'
198
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
199
+
200
+ # form parameters
201
+ form_params = opts[:form_params] || {}
202
+
203
+ # http body (model)
204
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_static_rendition_request)
205
+
206
+ # return_type
207
+ return_type = opts[:debug_return_type] || 'CreateStaticRenditionResponse'
208
+
209
+ # auth_names
210
+ auth_names = opts[:debug_auth_names] || ['accessToken']
211
+
212
+ new_options = opts.merge(
213
+ :operation => :"AssetsApi.create_asset_static_rendition",
214
+ :header_params => header_params,
215
+ :query_params => query_params,
216
+ :form_params => form_params,
217
+ :body => post_body,
218
+ :auth_names => auth_names,
219
+ :return_type => return_type
220
+ )
221
+
222
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
223
+ if @api_client.config.debugging
224
+ @api_client.config.logger.debug "API called: AssetsApi#create_asset_static_rendition\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
225
+ end
226
+ return data, status_code, headers
227
+ end
228
+
158
229
  # Create an asset track
159
230
  # Adds an asset track (for example, subtitles, or an alternate audio track) to an asset.
160
231
  # @param asset_id [String] The asset ID.
@@ -354,6 +425,73 @@ module MuxRuby
354
425
  return data, status_code, headers
355
426
  end
356
427
 
428
+ # Delete a single static rendition for an asset
429
+ # Deletes a single static rendition for an asset
430
+ # @param asset_id [String] The asset ID.
431
+ # @param static_rendition_id [String] The static rendition ID.
432
+ # @param [Hash] opts the optional parameters
433
+ # @return [nil]
434
+ def delete_asset_static_rendition(asset_id, static_rendition_id, opts = {})
435
+ delete_asset_static_rendition_with_http_info(asset_id, static_rendition_id, opts)
436
+ nil
437
+ end
438
+
439
+ # Delete a single static rendition for an asset
440
+ # Deletes a single static rendition for an asset
441
+ # @param asset_id [String] The asset ID.
442
+ # @param static_rendition_id [String] The static rendition ID.
443
+ # @param [Hash] opts the optional parameters
444
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
445
+ def delete_asset_static_rendition_with_http_info(asset_id, static_rendition_id, opts = {})
446
+ if @api_client.config.debugging
447
+ @api_client.config.logger.debug 'Calling API: AssetsApi.delete_asset_static_rendition ...'
448
+ end
449
+ # verify the required parameter 'asset_id' is set
450
+ if @api_client.config.client_side_validation && asset_id.nil?
451
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.delete_asset_static_rendition"
452
+ end
453
+ # verify the required parameter 'static_rendition_id' is set
454
+ if @api_client.config.client_side_validation && static_rendition_id.nil?
455
+ fail ArgumentError, "Missing the required parameter 'static_rendition_id' when calling AssetsApi.delete_asset_static_rendition"
456
+ end
457
+ # resource path
458
+ local_var_path = '/video/v1/assets/{ASSET_ID}/static-renditions/{STATIC_RENDITION_ID}'.sub('{' + 'ASSET_ID' + '}', CGI.escape(asset_id.to_s)).sub('{' + 'STATIC_RENDITION_ID' + '}', CGI.escape(static_rendition_id.to_s))
459
+
460
+ # query parameters
461
+ query_params = opts[:query_params] || {}
462
+
463
+ # header parameters
464
+ header_params = opts[:header_params] || {}
465
+
466
+ # form parameters
467
+ form_params = opts[:form_params] || {}
468
+
469
+ # http body (model)
470
+ post_body = opts[:debug_body]
471
+
472
+ # return_type
473
+ return_type = opts[:debug_return_type]
474
+
475
+ # auth_names
476
+ auth_names = opts[:debug_auth_names] || ['accessToken']
477
+
478
+ new_options = opts.merge(
479
+ :operation => :"AssetsApi.delete_asset_static_rendition",
480
+ :header_params => header_params,
481
+ :query_params => query_params,
482
+ :form_params => form_params,
483
+ :body => post_body,
484
+ :auth_names => auth_names,
485
+ :return_type => return_type
486
+ )
487
+
488
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
489
+ if @api_client.config.debugging
490
+ @api_client.config.logger.debug "API called: AssetsApi#delete_asset_static_rendition\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
491
+ end
492
+ return data, status_code, headers
493
+ end
494
+
357
495
  # Delete an asset track
358
496
  # Removes a text track from an asset. Audio and video tracks on assets cannot be removed.
359
497
  # @param asset_id [String] The asset ID.
@@ -905,7 +1043,7 @@ module MuxRuby
905
1043
  end
906
1044
 
907
1045
  # Update MP4 support
908
- # Allows you to add or remove mp4 support for assets that were created without it. The values supported are `capped-1080p`, `audio-only`, `audio-only,capped-1080p`, `standard`(deprecated), and `none`. `none` means that an asset *does not* have mp4 support, so submitting a request with `mp4_support` set to `none` will delete the mp4 assets from the asset in question.
1046
+ # This method has been deprecated. Please see the [Static Rendition API](https://www.mux.com/docs/guides/enable-static-mp4-renditions#after-asset-creation). Allows you to add or remove mp4 support for assets that were created without it. The values supported are `capped-1080p`, `audio-only`, `audio-only,capped-1080p`, `standard`(deprecated), and `none`. `none` means that an asset *does not* have mp4 support, so submitting a request with `mp4_support` set to `none` will delete the mp4 assets from the asset in question.
909
1047
  # @param asset_id [String] The asset ID.
910
1048
  # @param update_asset_mp4_support_request [UpdateAssetMP4SupportRequest]
911
1049
  # @param [Hash] opts the optional parameters
@@ -916,7 +1054,7 @@ module MuxRuby
916
1054
  end
917
1055
 
918
1056
  # Update MP4 support
919
- # Allows you to add or remove mp4 support for assets that were created without it. The values supported are &#x60;capped-1080p&#x60;, &#x60;audio-only&#x60;, &#x60;audio-only,capped-1080p&#x60;, &#x60;standard&#x60;(deprecated), and &#x60;none&#x60;. &#x60;none&#x60; means that an asset *does not* have mp4 support, so submitting a request with &#x60;mp4_support&#x60; set to &#x60;none&#x60; will delete the mp4 assets from the asset in question.
1057
+ # This method has been deprecated. Please see the [Static Rendition API](https://www.mux.com/docs/guides/enable-static-mp4-renditions#after-asset-creation). Allows you to add or remove mp4 support for assets that were created without it. The values supported are &#x60;capped-1080p&#x60;, &#x60;audio-only&#x60;, &#x60;audio-only,capped-1080p&#x60;, &#x60;standard&#x60;(deprecated), and &#x60;none&#x60;. &#x60;none&#x60; means that an asset *does not* have mp4 support, so submitting a request with &#x60;mp4_support&#x60; set to &#x60;none&#x60; will delete the mp4 assets from the asset in question.
920
1058
  # @param asset_id [String] The asset ID.
921
1059
  # @param update_asset_mp4_support_request [UpdateAssetMP4SupportRequest]
922
1060
  # @param [Hash] opts the optional parameters
@@ -287,6 +287,67 @@ module MuxRuby
287
287
  return data, status_code, headers
288
288
  end
289
289
 
290
+ # Delete a live stream's static renditions setting for new assets
291
+ # Deletes a live stream's static renditions settings for new assets. Further assets made via this live stream will not create static renditions unless re-added.
292
+ # @param live_stream_id [String] The live stream ID
293
+ # @param [Hash] opts the optional parameters
294
+ # @return [nil]
295
+ def delete_live_stream_new_asset_settings_static_renditions(live_stream_id, opts = {})
296
+ delete_live_stream_new_asset_settings_static_renditions_with_http_info(live_stream_id, opts)
297
+ nil
298
+ end
299
+
300
+ # Delete a live stream&#39;s static renditions setting for new assets
301
+ # Deletes a live stream&#39;s static renditions settings for new assets. Further assets made via this live stream will not create static renditions unless re-added.
302
+ # @param live_stream_id [String] The live stream ID
303
+ # @param [Hash] opts the optional parameters
304
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
305
+ def delete_live_stream_new_asset_settings_static_renditions_with_http_info(live_stream_id, opts = {})
306
+ if @api_client.config.debugging
307
+ @api_client.config.logger.debug 'Calling API: LiveStreamsApi.delete_live_stream_new_asset_settings_static_renditions ...'
308
+ end
309
+ # verify the required parameter 'live_stream_id' is set
310
+ if @api_client.config.client_side_validation && live_stream_id.nil?
311
+ fail ArgumentError, "Missing the required parameter 'live_stream_id' when calling LiveStreamsApi.delete_live_stream_new_asset_settings_static_renditions"
312
+ end
313
+ # resource path
314
+ local_var_path = '/video/v1/live-streams/{LIVE_STREAM_ID}/new-asset-settings/static-renditions'.sub('{' + 'LIVE_STREAM_ID' + '}', CGI.escape(live_stream_id.to_s))
315
+
316
+ # query parameters
317
+ query_params = opts[:query_params] || {}
318
+
319
+ # header parameters
320
+ header_params = opts[:header_params] || {}
321
+
322
+ # form parameters
323
+ form_params = opts[:form_params] || {}
324
+
325
+ # http body (model)
326
+ post_body = opts[:debug_body]
327
+
328
+ # return_type
329
+ return_type = opts[:debug_return_type]
330
+
331
+ # auth_names
332
+ auth_names = opts[:debug_auth_names] || ['accessToken']
333
+
334
+ new_options = opts.merge(
335
+ :operation => :"LiveStreamsApi.delete_live_stream_new_asset_settings_static_renditions",
336
+ :header_params => header_params,
337
+ :query_params => query_params,
338
+ :form_params => form_params,
339
+ :body => post_body,
340
+ :auth_names => auth_names,
341
+ :return_type => return_type
342
+ )
343
+
344
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
345
+ if @api_client.config.debugging
346
+ @api_client.config.logger.debug "API called: LiveStreamsApi#delete_live_stream_new_asset_settings_static_renditions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
347
+ end
348
+ return data, status_code, headers
349
+ end
350
+
290
351
  # Delete a live stream playback ID
291
352
  # Deletes the playback ID for the live stream. This will not disable ingest (as the live stream still exists). New attempts to play back the live stream will fail immediately. However, current viewers will be able to continue watching the stream for some period of time.
292
353
  # @param live_stream_id [String] The live stream ID
@@ -1155,5 +1216,76 @@ module MuxRuby
1155
1216
  end
1156
1217
  return data, status_code, headers
1157
1218
  end
1219
+
1220
+ # Update live stream static renditions for new assets
1221
+ # Updates a live stream's static renditions settings for new assets. Further assets made via this live stream will create static renditions per the settings provided. You must provide all static renditions desired.
1222
+ # @param live_stream_id [String] The live stream ID
1223
+ # @param update_live_stream_new_asset_settings_static_renditions_request [UpdateLiveStreamNewAssetSettingsStaticRenditionsRequest]
1224
+ # @param [Hash] opts the optional parameters
1225
+ # @return [LiveStreamResponse]
1226
+ def update_live_stream_new_asset_settings_static_renditions(live_stream_id, update_live_stream_new_asset_settings_static_renditions_request, opts = {})
1227
+ data, _status_code, _headers = update_live_stream_new_asset_settings_static_renditions_with_http_info(live_stream_id, update_live_stream_new_asset_settings_static_renditions_request, opts)
1228
+ data
1229
+ end
1230
+
1231
+ # Update live stream static renditions for new assets
1232
+ # Updates a live stream&#39;s static renditions settings for new assets. Further assets made via this live stream will create static renditions per the settings provided. You must provide all static renditions desired.
1233
+ # @param live_stream_id [String] The live stream ID
1234
+ # @param update_live_stream_new_asset_settings_static_renditions_request [UpdateLiveStreamNewAssetSettingsStaticRenditionsRequest]
1235
+ # @param [Hash] opts the optional parameters
1236
+ # @return [Array<(LiveStreamResponse, Integer, Hash)>] LiveStreamResponse data, response status code and response headers
1237
+ def update_live_stream_new_asset_settings_static_renditions_with_http_info(live_stream_id, update_live_stream_new_asset_settings_static_renditions_request, opts = {})
1238
+ if @api_client.config.debugging
1239
+ @api_client.config.logger.debug 'Calling API: LiveStreamsApi.update_live_stream_new_asset_settings_static_renditions ...'
1240
+ end
1241
+ # verify the required parameter 'live_stream_id' is set
1242
+ if @api_client.config.client_side_validation && live_stream_id.nil?
1243
+ fail ArgumentError, "Missing the required parameter 'live_stream_id' when calling LiveStreamsApi.update_live_stream_new_asset_settings_static_renditions"
1244
+ end
1245
+ # verify the required parameter 'update_live_stream_new_asset_settings_static_renditions_request' is set
1246
+ if @api_client.config.client_side_validation && update_live_stream_new_asset_settings_static_renditions_request.nil?
1247
+ fail ArgumentError, "Missing the required parameter 'update_live_stream_new_asset_settings_static_renditions_request' when calling LiveStreamsApi.update_live_stream_new_asset_settings_static_renditions"
1248
+ end
1249
+ # resource path
1250
+ local_var_path = '/video/v1/live-streams/{LIVE_STREAM_ID}/new-asset-settings/static-renditions'.sub('{' + 'LIVE_STREAM_ID' + '}', CGI.escape(live_stream_id.to_s))
1251
+
1252
+ # query parameters
1253
+ query_params = opts[:query_params] || {}
1254
+
1255
+ # header parameters
1256
+ header_params = opts[:header_params] || {}
1257
+ # HTTP header 'Accept' (if needed)
1258
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1259
+ # HTTP header 'Content-Type'
1260
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1261
+
1262
+ # form parameters
1263
+ form_params = opts[:form_params] || {}
1264
+
1265
+ # http body (model)
1266
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_live_stream_new_asset_settings_static_renditions_request)
1267
+
1268
+ # return_type
1269
+ return_type = opts[:debug_return_type] || 'LiveStreamResponse'
1270
+
1271
+ # auth_names
1272
+ auth_names = opts[:debug_auth_names] || ['accessToken']
1273
+
1274
+ new_options = opts.merge(
1275
+ :operation => :"LiveStreamsApi.update_live_stream_new_asset_settings_static_renditions",
1276
+ :header_params => header_params,
1277
+ :query_params => query_params,
1278
+ :form_params => form_params,
1279
+ :body => post_body,
1280
+ :auth_names => auth_names,
1281
+ :return_type => return_type
1282
+ )
1283
+
1284
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1285
+ if @api_client.config.debugging
1286
+ @api_client.config.logger.debug "API called: LiveStreamsApi#update_live_stream_new_asset_settings_static_renditions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1287
+ end
1288
+ return data, status_code, headers
1289
+ end
1158
1290
  end
1159
1291
  end
@@ -228,7 +228,7 @@ module MuxRuby
228
228
  if @api_client.config.debugging
229
229
  @api_client.config.logger.debug 'Calling API: MetricsApi.list_all_metric_values ...'
230
230
  end
231
- allowable_values = ["asn", "asset_id", "browser", "browser_version", "cdn", "continent_code", "country", "custom_1", "custom_2", "custom_3", "custom_4", "custom_5", "custom_6", "custom_7", "custom_8", "custom_9", "custom_10", "exit_before_video_start", "experiment_name", "live_stream_id", "operating_system", "operating_system_version", "page_type", "playback_failure", "playback_business_exception", "playback_id", "player_autoplay", "player_error_code", "player_mux_plugin_name", "player_mux_plugin_version", "player_name", "player_preload", "player_remote_played", "player_software", "player_software_version", "player_version", "preroll_ad_asset_hostname", "preroll_ad_tag_hostname", "preroll_played", "preroll_requested", "region", "source_hostname", "source_type", "stream_type", "sub_property_id", "video_content_type", "video_encoding_variant", "video_id", "video_series", "video_startup_failure", "video_startup_business_exception", "video_title", "view_drm_type", "view_has_ad", "view_session_id", "viewer_connection_type", "viewer_device_category", "viewer_device_manufacturer", "viewer_device_model", "viewer_device_name", "viewer_user_id", "ad_playback_failure", "content_playback_failure", "view_dropped"]
231
+ allowable_values = ["asn", "asset_id", "browser", "browser_version", "cdn", "continent_code", "country", "custom_1", "custom_2", "custom_3", "custom_4", "custom_5", "custom_6", "custom_7", "custom_8", "custom_9", "custom_10", "exit_before_video_start", "experiment_name", "live_stream_id", "operating_system", "operating_system_version", "page_type", "playback_failure", "playback_business_exception", "playback_id", "player_autoplay", "player_error_code", "player_mux_plugin_name", "player_mux_plugin_version", "player_name", "player_preload", "player_remote_played", "player_software", "player_software_version", "player_version", "preroll_ad_asset_hostname", "preroll_ad_tag_hostname", "preroll_played", "preroll_requested", "region", "source_hostname", "source_type", "stream_type", "sub_property_id", "video_content_type", "video_encoding_variant", "video_id", "video_series", "video_startup_failure", "video_startup_business_exception", "video_title", "view_drm_type", "view_has_ad", "view_session_id", "viewer_connection_type", "viewer_device_category", "viewer_device_manufacturer", "viewer_device_model", "viewer_device_name", "viewer_user_id", "ad_playback_failure", "content_playback_failure", "view_dropped", "client_application_name", "client_application_version", "video_affiliate", "viewer_plan", "viewer_plan_status", "viewer_plan_category", "view_drm_level", "video_brand", "used_pip", "time_shift_enabled", "used_captions", "video_codec", "audio_codec", "video_dynamic_range_type", "view_cdn_edge_pop", "view_cdn_origin"]
232
232
  if @api_client.config.client_side_validation && opts[:'dimension'] && !allowable_values.include?(opts[:'dimension'])
233
233
  fail ArgumentError, "invalid value for \"dimension\", must be one of #{allowable_values}"
234
234
  end
@@ -323,7 +323,7 @@ module MuxRuby
323
323
  if @api_client.config.client_side_validation && !allowable_values.include?(metric_id)
324
324
  fail ArgumentError, "invalid value for \"metric_id\", must be one of #{allowable_values}"
325
325
  end
326
- allowable_values = ["asn", "asset_id", "browser", "browser_version", "cdn", "continent_code", "country", "custom_1", "custom_2", "custom_3", "custom_4", "custom_5", "custom_6", "custom_7", "custom_8", "custom_9", "custom_10", "exit_before_video_start", "experiment_name", "live_stream_id", "operating_system", "operating_system_version", "page_type", "playback_failure", "playback_business_exception", "playback_id", "player_autoplay", "player_error_code", "player_mux_plugin_name", "player_mux_plugin_version", "player_name", "player_preload", "player_remote_played", "player_software", "player_software_version", "player_version", "preroll_ad_asset_hostname", "preroll_ad_tag_hostname", "preroll_played", "preroll_requested", "region", "source_hostname", "source_type", "stream_type", "sub_property_id", "video_content_type", "video_encoding_variant", "video_id", "video_series", "video_startup_business_exception", "video_startup_failure", "video_title", "view_drm_type", "view_has_ad", "view_session_id", "viewer_connection_type", "viewer_device_category", "viewer_device_manufacturer", "viewer_device_model", "viewer_device_name", "viewer_user_id", "ad_playback_failure", "content_playback_failure", "view_dropped"]
326
+ allowable_values = ["asn", "asset_id", "browser", "browser_version", "cdn", "continent_code", "country", "custom_1", "custom_2", "custom_3", "custom_4", "custom_5", "custom_6", "custom_7", "custom_8", "custom_9", "custom_10", "exit_before_video_start", "experiment_name", "live_stream_id", "operating_system", "operating_system_version", "page_type", "playback_failure", "playback_business_exception", "playback_id", "player_autoplay", "player_error_code", "player_mux_plugin_name", "player_mux_plugin_version", "player_name", "player_preload", "player_remote_played", "player_software", "player_software_version", "player_version", "preroll_ad_asset_hostname", "preroll_ad_tag_hostname", "preroll_played", "preroll_requested", "region", "source_hostname", "source_type", "stream_type", "sub_property_id", "video_content_type", "video_encoding_variant", "video_id", "video_series", "video_startup_business_exception", "video_startup_failure", "video_title", "view_drm_type", "view_has_ad", "view_session_id", "viewer_connection_type", "viewer_device_category", "viewer_device_manufacturer", "viewer_device_model", "viewer_device_name", "viewer_user_id", "ad_playback_failure", "content_playback_failure", "view_dropped", "client_application_name", "client_application_version", "video_affiliate", "viewer_plan", "viewer_plan_status", "viewer_plan_category", "view_drm_level", "video_brand", "used_pip", "time_shift_enabled", "used_captions", "video_codec", "audio_codec", "video_dynamic_range_type", "view_cdn_edge_pop", "view_cdn_origin"]
327
327
  if @api_client.config.client_side_validation && opts[:'group_by'] && !allowable_values.include?(opts[:'group_by'])
328
328
  fail ArgumentError, "invalid value for \"group_by\", must be one of #{allowable_values}"
329
329
  end
@@ -16,7 +16,7 @@ require 'time'
16
16
  module MuxRuby
17
17
  # An object containing the current status of any static renditions (mp4s). The object does not exist if no static renditions have been requested. See [Download your videos](https://docs.mux.com/guides/enable-static-mp4-renditions) for more information.
18
18
  class AssetStaticRenditions
19
- # Indicates the status of downloadable MP4 versions of this asset.
19
+ # Indicates the status of downloadable MP4 versions of this asset. This field is only valid when `mp4_support` is enabled
20
20
  attr_accessor :status
21
21
 
22
22
  # Array of file objects.
@@ -61,7 +61,7 @@ module MuxRuby
61
61
  def self.openapi_types
62
62
  {
63
63
  :'status' => :'String',
64
- :'files' => :'Array<AssetStaticRenditionsFiles>'
64
+ :'files' => :'Array<StaticRendition>'
65
65
  }
66
66
  end
67
67
 
@@ -29,7 +29,7 @@ module MuxRuby
29
29
  # Arbitrary user-supplied metadata that will be included in the asset details and related webhooks. Can be used to store your own ID for a video along with the asset. **Max: 255 characters**.
30
30
  attr_accessor :passthrough
31
31
 
32
- # Specify what level of support for mp4 playback. * The `capped-1080p` option produces a single MP4 file, called `capped-1080p.mp4`, with the video resolution capped at 1080p. This option produces an `audio.m4a` file for an audio-only asset. * The `audio-only` option produces a single M4A file, called `audio.m4a` for a video or an audio-only asset. MP4 generation will error when this option is specified for a video-only asset. * The `audio-only,capped-1080p` option produces both the `audio.m4a` and `capped-1080p.mp4` files. Only the `capped-1080p.mp4` file is produced for a video-only asset, while only the `audio.m4a` file is produced for an audio-only asset. The `standard`(deprecated) option produces up to three MP4 files with different levels of resolution (`high.mp4`, `medium.mp4`, `low.mp4`, or `audio.m4a` for an audio-only asset). MP4 files are not produced for `none` (default). In most cases you should use our default HLS-based streaming playback (`{playback_id}.m3u8`) which can automatically adjust to viewers' connection speeds, but an mp4 can be useful for some legacy devices or downloading for offline playback. See the [Download your videos guide](https://docs.mux.com/guides/enable-static-mp4-renditions) for more information.
32
+ # Deprecated. See the [Static Renditions API](https://www.mux.com/docs/guides/enable-static-mp4-renditions) for the updated API. Specify what level of support for mp4 playback. You may not enable both `mp4_support` and `static_renditions`. * The `capped-1080p` option produces a single MP4 file, called `capped-1080p.mp4`, with the video resolution capped at 1080p. This option produces an `audio.m4a` file for an audio-only asset. * The `audio-only` option produces a single M4A file, called `audio.m4a` for a video or an audio-only asset. MP4 generation will error when this option is specified for a video-only asset. * The `audio-only,capped-1080p` option produces both the `audio.m4a` and `capped-1080p.mp4` files. Only the `capped-1080p.mp4` file is produced for a video-only asset, while only the `audio.m4a` file is produced for an audio-only asset. The `standard`(deprecated) option produces up to three MP4 files with different levels of resolution (`high.mp4`, `medium.mp4`, `low.mp4`, or `audio.m4a` for an audio-only asset). MP4 files are not produced for `none` (default). In most cases you should use our default HLS-based streaming playback (`{playback_id}.m3u8`) which can automatically adjust to viewers' connection speeds, but an mp4 can be useful for some legacy devices or downloading for offline playback. See the [Download your videos guide](https://docs.mux.com/guides/enable-static-mp4-renditions) for more information.
33
33
  attr_accessor :mp4_support
34
34
 
35
35
  # Normalize the audio track loudness level. This parameter is only applicable to on-demand (not live) assets.
@@ -50,6 +50,9 @@ module MuxRuby
50
50
  # The video quality controls the cost, quality, and available platform features for the asset. The default video quality for an account can be set in the Mux Dashboard. This field replaces the deprecated `encoding_tier` value. [See the video quality guide for more details.](https://docs.mux.com/guides/use-video-quality-levels)
51
51
  attr_accessor :video_quality
52
52
 
53
+ # An array of static renditions to create for this asset. You may not enable both `static_renditions` and `mp4_support (the latter being deprecated)`
54
+ attr_accessor :static_renditions
55
+
53
56
  class EnumAttributeValidator
54
57
  attr_reader :datatype
55
58
  attr_reader :allowable_values
@@ -86,7 +89,8 @@ module MuxRuby
86
89
  :'test' => :'test',
87
90
  :'max_resolution_tier' => :'max_resolution_tier',
88
91
  :'encoding_tier' => :'encoding_tier',
89
- :'video_quality' => :'video_quality'
92
+ :'video_quality' => :'video_quality',
93
+ :'static_renditions' => :'static_renditions'
90
94
  }
91
95
  end
92
96
 
@@ -109,7 +113,8 @@ module MuxRuby
109
113
  :'test' => :'Boolean',
110
114
  :'max_resolution_tier' => :'String',
111
115
  :'encoding_tier' => :'String',
112
- :'video_quality' => :'String'
116
+ :'video_quality' => :'String',
117
+ :'static_renditions' => :'Array<CreateStaticRenditionRequest>'
113
118
  }
114
119
  end
115
120
 
@@ -189,6 +194,12 @@ module MuxRuby
189
194
  if attributes.key?(:'video_quality')
190
195
  self.video_quality = attributes[:'video_quality']
191
196
  end
197
+
198
+ if attributes.key?(:'static_renditions')
199
+ if (value = attributes[:'static_renditions']).is_a?(Array)
200
+ self.static_renditions = value
201
+ end
202
+ end
192
203
  end
193
204
 
194
205
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -280,7 +291,8 @@ module MuxRuby
280
291
  test == o.test &&
281
292
  max_resolution_tier == o.max_resolution_tier &&
282
293
  encoding_tier == o.encoding_tier &&
283
- video_quality == o.video_quality
294
+ video_quality == o.video_quality &&
295
+ static_renditions == o.static_renditions
284
296
  end
285
297
 
286
298
  # @see the `==` method
@@ -292,7 +304,7 @@ module MuxRuby
292
304
  # Calculates hash code according to all attributes.
293
305
  # @return [Integer] Hash code
294
306
  def hash
295
- [input, playback_policy, advanced_playback_policies, per_title_encode, passthrough, mp4_support, normalize_audio, master_access, test, max_resolution_tier, encoding_tier, video_quality].hash
307
+ [input, playback_policy, advanced_playback_policies, per_title_encode, passthrough, mp4_support, normalize_audio, master_access, test, max_resolution_tier, encoding_tier, video_quality, static_renditions].hash
296
308
  end
297
309
 
298
310
  # Builds the object from hash
@@ -14,28 +14,39 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MuxRuby
17
- class CreateBroadcastRequest
18
- # Arbitrary user-supplied metadata that will be included in the broadcast details and related webhooks. Max: 255 characters.
19
- attr_accessor :passthrough
20
-
21
- # The ID of the live stream that you want to broadcast to.
22
- attr_accessor :live_stream_id
17
+ class CreateStaticRenditionRequest
18
+ attr_accessor :resolution
23
19
 
24
- attr_accessor :layout
20
+ # Arbitrary user-supplied metadata set for the static rendition. Max 255 characters.
21
+ attr_accessor :passthrough
25
22
 
26
- # URL of an image to display as the background of the broadcast. Its dimensions should match the provided resolution.
27
- attr_accessor :background
23
+ class EnumAttributeValidator
24
+ attr_reader :datatype
25
+ attr_reader :allowable_values
26
+
27
+ def initialize(datatype, allowable_values)
28
+ @allowable_values = allowable_values.map do |value|
29
+ case datatype.to_s
30
+ when /Integer/i
31
+ value.to_i
32
+ when /Float/i
33
+ value.to_f
34
+ else
35
+ value
36
+ end
37
+ end
38
+ end
28
39
 
29
- attr_accessor :resolution
40
+ def valid?(value)
41
+ !value || allowable_values.include?(value)
42
+ end
43
+ end
30
44
 
31
45
  # Attribute mapping from ruby-style variable name to JSON key.
32
46
  def self.attribute_map
33
47
  {
34
- :'passthrough' => :'passthrough',
35
- :'live_stream_id' => :'live_stream_id',
36
- :'layout' => :'layout',
37
- :'background' => :'background',
38
- :'resolution' => :'resolution'
48
+ :'resolution' => :'resolution',
49
+ :'passthrough' => :'passthrough'
39
50
  }
40
51
  end
41
52
 
@@ -47,11 +58,8 @@ module MuxRuby
47
58
  # Attribute type mapping.
48
59
  def self.openapi_types
49
60
  {
50
- :'passthrough' => :'String',
51
- :'live_stream_id' => :'String',
52
- :'layout' => :'BroadcastLayout',
53
- :'background' => :'String',
54
- :'resolution' => :'BroadcastResolution'
61
+ :'resolution' => :'String',
62
+ :'passthrough' => :'String'
55
63
  }
56
64
  end
57
65
 
@@ -65,39 +73,23 @@ module MuxRuby
65
73
  # @param [Hash] attributes Model attributes in the form of hash
66
74
  def initialize(attributes = {})
67
75
  if (!attributes.is_a?(Hash))
68
- fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::CreateBroadcastRequest` initialize method"
76
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::CreateStaticRenditionRequest` initialize method"
69
77
  end
70
78
 
71
79
  # check to see if the attribute exists and convert string to symbol for hash key
72
80
  attributes = attributes.each_with_object({}) { |(k, v), h|
73
81
  if (!self.class.attribute_map.key?(k.to_sym))
74
- fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::CreateBroadcastRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
82
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::CreateStaticRenditionRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
75
83
  end
76
84
  h[k.to_sym] = v
77
85
  }
78
86
 
79
- if attributes.key?(:'passthrough')
80
- self.passthrough = attributes[:'passthrough']
81
- end
82
-
83
- if attributes.key?(:'live_stream_id')
84
- self.live_stream_id = attributes[:'live_stream_id']
85
- end
86
-
87
- if attributes.key?(:'layout')
88
- self.layout = attributes[:'layout']
89
- else
90
- self.layout = 'gallery'
91
- end
92
-
93
- if attributes.key?(:'background')
94
- self.background = attributes[:'background']
95
- end
96
-
97
87
  if attributes.key?(:'resolution')
98
88
  self.resolution = attributes[:'resolution']
99
- else
100
- self.resolution = '1920x1080'
89
+ end
90
+
91
+ if attributes.key?(:'passthrough')
92
+ self.passthrough = attributes[:'passthrough']
101
93
  end
102
94
  end
103
95
 
@@ -105,30 +97,34 @@ module MuxRuby
105
97
  # @return Array for valid properties with the reasons
106
98
  def list_invalid_properties
107
99
  invalid_properties = Array.new
108
- if @live_stream_id.nil?
109
- invalid_properties.push('invalid value for "live_stream_id", live_stream_id cannot be nil.')
110
- end
111
-
112
100
  invalid_properties
113
101
  end
114
102
 
115
103
  # Check to see if the all the properties in the model are valid
116
104
  # @return true if the model is valid
117
105
  def valid?
118
- return false if @live_stream_id.nil?
106
+ resolution_validator = EnumAttributeValidator.new('String', ["highest", "audio-only", "2160p", "1440p", "1080p", "720p", "540p", "480p", "360p", "270p"])
107
+ return false unless resolution_validator.valid?(@resolution)
119
108
  true
120
109
  end
121
110
 
111
+ # Custom attribute writer method checking allowed values (enum).
112
+ # @param [Object] resolution Object to be assigned
113
+ def resolution=(resolution)
114
+ validator = EnumAttributeValidator.new('String', ["highest", "audio-only", "2160p", "1440p", "1080p", "720p", "540p", "480p", "360p", "270p"])
115
+ unless validator.valid?(resolution)
116
+ fail ArgumentError, "invalid value for \"resolution\", must be one of #{validator.allowable_values}."
117
+ end
118
+ @resolution = resolution
119
+ end
120
+
122
121
  # Checks equality by comparing each attribute.
123
122
  # @param [Object] Object to be compared
124
123
  def ==(o)
125
124
  return true if self.equal?(o)
126
125
  self.class == o.class &&
127
- passthrough == o.passthrough &&
128
- live_stream_id == o.live_stream_id &&
129
- layout == o.layout &&
130
- background == o.background &&
131
- resolution == o.resolution
126
+ resolution == o.resolution &&
127
+ passthrough == o.passthrough
132
128
  end
133
129
 
134
130
  # @see the `==` method
@@ -140,7 +136,7 @@ module MuxRuby
140
136
  # Calculates hash code according to all attributes.
141
137
  # @return [Integer] Hash code
142
138
  def hash
143
- [passthrough, live_stream_id, layout, background, resolution].hash
139
+ [resolution, passthrough].hash
144
140
  end
145
141
 
146
142
  # Builds the object from hash
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MuxRuby
17
- class StartSpaceBroadcastResponse
17
+ class CreateStaticRenditionResponse
18
18
  attr_accessor :data
19
19
 
20
20
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -32,7 +32,7 @@ module MuxRuby
32
32
  # Attribute type mapping.
33
33
  def self.openapi_types
34
34
  {
35
- :'data' => :'Object'
35
+ :'data' => :'StaticRendition'
36
36
  }
37
37
  end
38
38
 
@@ -46,13 +46,13 @@ module MuxRuby
46
46
  # @param [Hash] attributes Model attributes in the form of hash
47
47
  def initialize(attributes = {})
48
48
  if (!attributes.is_a?(Hash))
49
- fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::StartSpaceBroadcastResponse` initialize method"
49
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::CreateStaticRenditionResponse` initialize method"
50
50
  end
51
51
 
52
52
  # check to see if the attribute exists and convert string to symbol for hash key
53
53
  attributes = attributes.each_with_object({}) { |(k, v), h|
54
54
  if (!self.class.attribute_map.key?(k.to_sym))
55
- fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::StartSpaceBroadcastResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::CreateStaticRenditionResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
56
  end
57
57
  h[k.to_sym] = v
58
58
  }
@@ -45,7 +45,7 @@ module MuxRuby
45
45
  # Indicates the track provides Subtitles for the Deaf or Hard-of-hearing (SDH). This optional parameter should be used for tracks with `type` of `text` and `text_type` set to `subtitles`.
46
46
  attr_accessor :closed_captions
47
47
 
48
- # This optional parameter should be used tracks with `type` of `text` and `text_type` set to `subtitles`.
48
+ # This optional parameter should be used for tracks with `type` of `text` and `text_type` set to `subtitles`.
49
49
  attr_accessor :passthrough
50
50
 
51
51
  class EnumAttributeValidator