bitmovin-ruby 0.4.0 → 0.9.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 (41) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/.ruby-version +1 -0
  4. data/.travis.yml +1 -1
  5. data/Gemfile.lock +49 -49
  6. data/README.md +1 -1
  7. data/bitmovin-ruby.gemspec +3 -3
  8. data/lib/bitmovin-ruby.rb +2 -2
  9. data/lib/bitmovin/client.rb +8 -6
  10. data/lib/bitmovin/encoding/encodings.rb +4 -1
  11. data/lib/bitmovin/encoding/encodings/input_streams/ingest.rb +44 -0
  12. data/lib/bitmovin/encoding/encodings/input_streams/trimming/time_based.rb +48 -0
  13. data/lib/bitmovin/encoding/encodings/muxings/drms/drm_muxing_resource.rb +1 -1
  14. data/lib/bitmovin/encoding/encodings/muxings/mp4_muxing.rb +1 -0
  15. data/lib/bitmovin/encoding/encodings/muxings/muxing_resource.rb +1 -1
  16. data/lib/bitmovin/encoding/encodings/sprites/sprite.rb +76 -0
  17. data/lib/bitmovin/encoding/encodings/stream.rb +16 -2
  18. data/lib/bitmovin/encoding/encodings/stream_input.rb +5 -3
  19. data/lib/bitmovin/encoding/encodings/thumbnails/thumbnail.rb +71 -0
  20. data/lib/bitmovin/encoding/manifests/audio_adaptation_set.rb +1 -2
  21. data/lib/bitmovin/encoding/manifests/fmp4_representation.rb +1 -2
  22. data/lib/bitmovin/encoding/manifests/hls_audio_media.rb +16 -11
  23. data/lib/bitmovin/encoding/manifests/hls_variant_stream.rb +1 -1
  24. data/lib/bitmovin/encoding/manifests/hls_variant_stream_list.rb +1 -2
  25. data/lib/bitmovin/encoding/manifests/manifest_resource.rb +1 -1
  26. data/lib/bitmovin/encoding/manifests/period.rb +1 -1
  27. data/lib/bitmovin/encoding/manifests/video_adaptation_set.rb +1 -2
  28. data/lib/bitmovin/encoding/stream_output.rb +1 -0
  29. data/lib/bitmovin/helpers.rb +5 -1
  30. data/lib/bitmovin/resource.rb +19 -13
  31. data/lib/bitmovin/version.rb +1 -1
  32. data/lib/bitmovin/webhooks.rb +1 -0
  33. data/lib/bitmovin/webhooks/encoding_error_webhook.rb +14 -0
  34. data/lib/bitmovin/webhooks/encoding_finished_webhook.rb +9 -0
  35. metadata +17 -17
  36. data/examples/create_encoding_finished_webhook.rb +0 -21
  37. data/examples/dash_hls_mp4_encoding_with_manifests.rb +0 -502
  38. data/examples/hls_multi_codec.rb +0 -205
  39. data/examples/simple_dash.rb +0 -221
  40. data/examples/simple_dash_with_http_input.rb +0 -216
  41. data/examples/simple_hls_with_aes128.rb +0 -197
@@ -3,18 +3,20 @@ module Bitmovin::Encoding::Encodings
3
3
  attr_accessor :encoding_id
4
4
  attr_accessor :id
5
5
  attr_accessor :conditions
6
+ attr_accessor :mode
6
7
 
7
8
  def initialize(encoding_id, hash = {})
8
9
  set_defaults
9
10
  hsh = ActiveSupport::HashWithIndifferentAccess.new(underscore_hash(hash))
10
11
  @encoding_id = encoding_id
11
- self.class.init(File.join("/v1/encoding/encodings/", encoding_id, "streams"))
12
+ init_instance(File.join("/v1/encoding/encodings/", encoding_id, "streams"))
12
13
  super(hash)
13
14
  @outputs = (hsh[:outputs] || []).map { |output| Bitmovin::Encoding::StreamOutput.new(output) }
14
15
  @input_streams = (hsh[:input_streams] || []).map { |input| StreamInput.new(@encoding_id, @id, input) }
15
16
 
16
17
  @errors = []
17
18
  @conditions = nil
19
+ @mode = "STANDARD"
18
20
  end
19
21
 
20
22
  attr_accessor :name, :description, :created_at, :modified_at, :create_quality_meta_data
@@ -69,11 +71,23 @@ module Bitmovin::Encoding::Encodings
69
71
  @errors
70
72
  end
71
73
 
74
+ def input_details
75
+ path = File.join("/v1/encoding/encodings/", @encoding_id, "streams", @id, "input")
76
+ response = Bitmovin.client.get(path)
77
+ hash_to_struct(result(response))
78
+ end
79
+
80
+ def input_analysis
81
+ path = File.join("/v1/encoding/encodings/", @encoding_id, "streams", @id, "inputs")
82
+ response = Bitmovin.client.get(path)
83
+ hash_to_struct(result(response))
84
+ end
85
+
72
86
  private
73
87
  def collect_attributes
74
88
  val = Hash.new
75
89
  [:name, :description, :create_quality_meta_data,
76
- :input_streams, :outputs, :codec_config_id, :conditions].each do |name|
90
+ :input_streams, :outputs, :codec_config_id, :conditions, :mode].each do |name|
77
91
  json_name = ActiveSupport::Inflector.camelize(name.to_s, false)
78
92
  val[json_name] = instance_variable_get("@#{name}")
79
93
  end
@@ -10,7 +10,7 @@ module Bitmovin::Encoding::Encodings
10
10
  end
11
11
 
12
12
  attr_accessor :encoding_id, :stream_id
13
- attr_accessor :input_id, :input_path, :selection_mode, :position
13
+ attr_accessor :input_id, :input_path, :selection_mode, :position, :input_stream_id
14
14
 
15
15
  def valid?
16
16
  validate!
@@ -29,10 +29,10 @@ module Bitmovin::Encoding::Encodings
29
29
  collect_attributes.to_json(args)
30
30
  end
31
31
 
32
- private
32
+ private
33
33
  def collect_attributes
34
34
  val = Hash.new
35
- [:input_id, :input_path, :selection_mode, :position].each do |name|
35
+ [:input_id, :input_path, :selection_mode, :position, :input_stream_id].each do |name|
36
36
  json_name = ActiveSupport::Inflector.camelize(name.to_s, false)
37
37
  value = instance_variable_get("@#{name}")
38
38
  if (!value.nil?)
@@ -42,6 +42,8 @@ module Bitmovin::Encoding::Encodings
42
42
  val
43
43
  end
44
44
  def validate!
45
+ return unless @input_stream_id.blank?
46
+
45
47
  @errors << "input_id cannot be blank" if @input_id.blank?
46
48
  @errors << "input_path cannot be blank" if @input_path.blank?
47
49
  @errors << "selection_mode cannot be blank" if @selection_mode.blank?
@@ -0,0 +1,71 @@
1
+ module Bitmovin::Encoding::Encodings
2
+ class Thumbnail < Bitmovin::Resource
3
+
4
+ def initialize(encoding_id, stream_id, hash = {})
5
+ @errors = []
6
+ init_instance(File.join('/v1/encoding/encodings', encoding_id, 'streams', stream_id, 'thumbnails'))
7
+
8
+ @encoding_id = encoding_id
9
+ @stream_id = stream_id
10
+
11
+ hsh = ActiveSupport::HashWithIndifferentAccess.new(underscore_hash(hash))
12
+ @positions = hsh[:positions] || []
13
+ @unit = hsh[:unit]
14
+ @height = hsh[:height]
15
+ @pattern = hsh[:pattern]
16
+ @outputs = (hsh[:outputs] || []).map { |output| Bitmovin::Encoding::StreamOutput.new(output) }
17
+ end
18
+
19
+ attr_accessor :positions, :unit, :height, :pattern, :outputs
20
+
21
+ def save!
22
+ if valid?
23
+ super
24
+ end
25
+ end
26
+
27
+ def errors
28
+ @errors
29
+ end
30
+
31
+ def valid?
32
+ validate!
33
+ unless @errors.empty?
34
+ puts errors
35
+ return false
36
+ end
37
+ true
38
+ end
39
+
40
+ def invalid?
41
+ !valid?
42
+ end
43
+
44
+ def validate!
45
+ @errors = []
46
+
47
+ if @positions.nil? || @positions.empty?
48
+ @errors << 'There has to be at least one position for a thumbnail'
49
+ end
50
+
51
+ if @height.nil? || @height <= 0
52
+ @errors << 'The height has to be set and must be greater than 0'
53
+ end
54
+
55
+ if @pattern.nil? || @pattern.blank?
56
+ @errors << 'The pattern has to be set and must not be blank'
57
+ end
58
+
59
+ unless ['SECONDS', 'PERCENTS', nil].include? @unit
60
+ @errors << "The unit can only be 'SECONDS' or 'PERCENTS'"
61
+ end
62
+
63
+ @outputs.each do |output|
64
+ @errors << output.errors unless output.valid?
65
+ end
66
+
67
+ @errors.flatten!
68
+ end
69
+
70
+ end
71
+ end
@@ -2,8 +2,7 @@ module Bitmovin::Encoding::Manifests
2
2
  class AudioAdaptationSet < Bitmovin::Resource
3
3
  include Bitmovin::ChildCollection
4
4
  def initialize(manifest_id, period_id, hash = {})
5
- path = File.join("/v1/encoding/manifests/dash/", manifest_id, "periods", period_id, "adaptationsets/audio")
6
- self.class.init(path)
5
+ init_instance(File.join("/v1/encoding/manifests/dash/", manifest_id, "periods", period_id, "adaptationsets/audio"))
7
6
  @manifest_id = manifest_id
8
7
  @period_id = period_id
9
8
  end
@@ -1,8 +1,7 @@
1
1
  module Bitmovin::Encoding::Manifests
2
2
  class Fmp4Representation < Bitmovin::Resource
3
3
  def initialize(manifest_id, period_id, adaptationset_id, hash = {})
4
- path = File.join("/v1/encoding/manifests/dash/", manifest_id, "periods", period_id, "adaptationsets/", adaptationset_id, "representations/fmp4")
5
- self.class.init(path)
4
+ init_instance(File.join("/v1/encoding/manifests/dash/", manifest_id, "periods", period_id, "adaptationsets/", adaptationset_id, "representations/fmp4"))
6
5
  super(hash)
7
6
  @manifest_id = manifest_id
8
7
  @period_id = period_id
@@ -1,27 +1,32 @@
1
1
  module Bitmovin::Encoding::Manifests
2
2
  class HlsAudioMedia < Bitmovin::Resource
3
3
  attr_accessor :manifest_id
4
- attr_accessor :groupId
4
+ attr_accessor :group_id
5
5
  attr_accessor :language
6
- attr_accessor :assocLanguage
6
+ attr_accessor :assoc_language
7
7
  attr_accessor :name
8
- attr_accessor :isDefault
8
+ attr_accessor :is_default
9
9
  attr_accessor :autoselect
10
10
  attr_accessor :characteristics
11
- attr_accessor :segmentPath
12
- attr_accessor :encodingId
13
- attr_accessor :streamId
14
- attr_accessor :muxingId
15
- attr_accessor :drmId
16
- attr_accessor :startSegmentNumber
17
- attr_accessor :endSegmentNumber
11
+ attr_accessor :segment_path
12
+ attr_accessor :encoding_id
13
+ attr_accessor :stream_id
14
+ attr_accessor :muxing_id
15
+ attr_accessor :drm_id
16
+ attr_accessor :start_segment_number
17
+ attr_accessor :end_segment_number
18
18
  attr_accessor :uri
19
19
 
20
20
  def initialize(manifest_id, hash = {})
21
21
  hsh = ActiveSupport::HashWithIndifferentAccess.new(underscore_hash(hash))
22
22
  @manifest_id = manifest_id
23
- self.class.init(File.join("/v1/encoding/manifests/hls/", manifest_id, "media/audio"))
23
+ init_instance(File.join("/v1/encoding/manifests/hls/", manifest_id, "media/audio"))
24
24
  super(hsh)
25
25
  end
26
+
27
+ def ignore_fields
28
+ return [:@manifest_id, :@id]
29
+ end
30
+
26
31
  end
27
32
  end
@@ -13,7 +13,7 @@ module Bitmovin::Encoding::Manifests
13
13
  def initialize(manifest_id, hash = {})
14
14
  hsh = ActiveSupport::HashWithIndifferentAccess.new(underscore_hash(hash))
15
15
  @manifest_id = manifest_id
16
- self.class.init(File.join("/v1/encoding/manifests/hls/", manifest_id, "streams"))
16
+ init_instance(File.join("/v1/encoding/manifests/hls/", manifest_id, "streams"))
17
17
  super(hsh)
18
18
  end
19
19
  end
@@ -1,11 +1,10 @@
1
1
  module Bitmovin::Encoding::Manifests
2
2
  class HlsVariantStreamList < Bitmovin::Resource
3
- init "streams"
4
3
  attr_accessor :manifest_id
5
4
 
6
5
  def initialize(manifest_id)
7
6
  @manifest_id = manifest_id
8
- self.class.init(File.join("/v1/encoding/manifests/", manifest_id, "streams"))
7
+ init_instance(File.join("/v1/encoding/manifests/", manifest_id, "streams"))
9
8
  #super(hsh)
10
9
  end
11
10
 
@@ -3,7 +3,7 @@ module Bitmovin::Encoding::Manifests
3
3
  def initialize(hash = {})
4
4
  hsh = ActiveSupport::HashWithIndifferentAccess.new(underscore_hash(hash))
5
5
  muxing_type = self.class.name.demodulize.gsub(/(.*)Muxing/, '\1').downcase
6
- self.class.init(File.join("/v1/encoding/manifests/", encoding_id, "muxings", muxing_type))
6
+ init_instance(File.join("/v1/encoding/manifests/", encoding_id, "muxings", muxing_type))
7
7
  super(hsh)
8
8
  @outputs = (hsh[:outputs] || []).map do |output|
9
9
  Bitmovin::Encoding::Encodings::StreamOutput.new(encoding_id, @id, output)
@@ -3,7 +3,7 @@ module Bitmovin::Encoding::Manifests
3
3
  include Bitmovin::ChildCollection
4
4
 
5
5
  def initialize(manifest_id, hash = {})
6
- self.class.init(File.join("/v1/encoding/manifests/dash/", manifest_id, "periods"))
6
+ init_instance(File.join("/v1/encoding/manifests/dash/", manifest_id, "periods"))
7
7
  @manifest_id = manifest_id
8
8
  super(hash)
9
9
  @video_adaptationsets = nil
@@ -2,8 +2,7 @@ module Bitmovin::Encoding::Manifests
2
2
  class VideoAdaptationSet < Bitmovin::Resource
3
3
  include Bitmovin::ChildCollection
4
4
  def initialize(manifest_id, period_id, hash = {})
5
- path = File.join("/v1/encoding/manifests/dash/", manifest_id, "periods", period_id, "adaptationsets/video")
6
- self.class.init(path)
5
+ init_instance(File.join("/v1/encoding/manifests/dash/", manifest_id, "periods", period_id, "adaptationsets/video"))
7
6
  super(hash)
8
7
  @manifest_id = manifest_id
9
8
  @period_id = period_id
@@ -36,6 +36,7 @@ module Bitmovin::Encoding
36
36
  end
37
37
  val
38
38
  end
39
+
39
40
  def validate!
40
41
  @errors << "output_id cannot be blank" if @output_id.blank?
41
42
  @errors << "output_path cannot be blank" if @output_path.blank?
@@ -10,7 +10,11 @@ module Bitmovin::Helpers
10
10
  def camelize_hash(hash)
11
11
  ret = Hash.new
12
12
  hash.each do |key, value|
13
- ret[ActiveSupport::Inflector.camelize(key, false)] = value
13
+ if value.is_a?(Hash)
14
+ ret[ActiveSupport::Inflector.camelize(key, false)] = camelize_hash(value)
15
+ else
16
+ ret[ActiveSupport::Inflector.camelize(key, false)] = value
17
+ end
14
18
  end
15
19
  ret
16
20
  end
@@ -8,7 +8,6 @@ module Bitmovin
8
8
  end
9
9
  attr_reader :resource_path
10
10
 
11
-
12
11
  def list(limit = 100, offset = 0)
13
12
  response = Bitmovin.client.get @resource_path, limit: limit, offset: offset
14
13
  Bitmovin::Helpers.result(response)['items'].map do |item|
@@ -22,6 +21,10 @@ module Bitmovin
22
21
  end
23
22
  end
24
23
 
24
+ def init_instance(path)
25
+ @instance_resource_path = path
26
+ end
27
+
25
28
  attr_accessor :id, :name, :description, :created_at, :modified_at
26
29
 
27
30
 
@@ -35,7 +38,7 @@ module Bitmovin
35
38
  end
36
39
 
37
40
  response = Bitmovin.client.post do |post|
38
- post.url self.class.resource_path
41
+ post.url resource_path
39
42
  post.body = collect_attributes
40
43
  end
41
44
  yield(response.body) if block_given?
@@ -48,7 +51,7 @@ module Bitmovin
48
51
  end
49
52
 
50
53
  def delete!
51
- Bitmovin.client.delete File.join(self.class.resource_path, @id)
54
+ Bitmovin.client.delete File.join(resource_path, @id)
52
55
  end
53
56
 
54
57
  def inspect
@@ -57,6 +60,10 @@ module Bitmovin
57
60
 
58
61
  private
59
62
 
63
+ def resource_path
64
+ @instance_resource_path || self.class.resource_path
65
+ end
66
+
60
67
  def init_from_hash(hash = {})
61
68
  hash.each do |name, value|
62
69
  instance_variable_set("@#{ActiveSupport::Inflector.underscore(name)}", value)
@@ -64,23 +71,22 @@ module Bitmovin
64
71
  end
65
72
 
66
73
  def collect_attributes
67
- val = Hash.new
68
74
  ignored_variables = []
69
75
  if (self.respond_to?(:ignore_fields))
70
76
  ignored_variables = self.ignore_fields
71
77
  end
72
- instance_variables.each do |name|
73
- if ignored_variables.include?(name)
74
- next
75
- end
76
- if name == :@max_ctu_size
77
- val['maxCTUSize'] = instance_variable_get(name)
78
+ ignored_variables.push(:@instance_resource_path)
79
+ attributes_value = instance_variables.inject({}) do |result, item|
80
+ if ignored_variables.include?(item)
81
+ result
78
82
  else
79
- json_name = ActiveSupport::Inflector.camelize(name.to_s.gsub(/@/, ''), false)
80
- val[json_name] = instance_variable_get(name)
83
+ name = item == :@max_ctu_size ? 'maxCTUSize' : item.to_s.gsub(/@/, '')
84
+ result.merge(
85
+ name => instance_variable_get(item)
86
+ )
81
87
  end
82
88
  end
83
- val
89
+ camelize_hash(attributes_value)
84
90
  end
85
91
  end
86
92
  end
@@ -1,3 +1,3 @@
1
1
  module Bitmovin
2
- VERSION = "0.4.0"
2
+ VERSION = "0.9.0"
3
3
  end
@@ -4,5 +4,6 @@ module Bitmovin
4
4
  end
5
5
  require 'bitmovin/webhooks/webhook_resource'
6
6
  require 'bitmovin/webhooks/encoding_finished_webhook'
7
+ require 'bitmovin/webhooks/encoding_error_webhook'
7
8
  require 'bitmovin/webhooks/webhook_encryption'
8
9
  require 'bitmovin/webhooks/webhook_signature'
@@ -0,0 +1,14 @@
1
+ module Bitmovin::Webhooks
2
+ class EncodingErrorWebhook < WebhookResource
3
+ init 'notifications/webhooks/encoding/encodings/error'
4
+ def initialize(encoding_id, hash = {})
5
+ if encoding_id.kind_of?(String)
6
+ @encoding_id = encoding_id
7
+ init_instance("notifications/webhooks/encoding/encodings/#{encoding_id}/error")
8
+ else
9
+ hash = encoding_id
10
+ end
11
+ init_from_hash(hash)
12
+ end
13
+ end
14
+ end
@@ -1,5 +1,14 @@
1
1
  module Bitmovin::Webhooks
2
2
  class EncodingFinishedWebhook < WebhookResource
3
3
  init 'notifications/webhooks/encoding/encodings/finished'
4
+ def initialize(encoding_id = {}, hash = {})
5
+ if encoding_id.kind_of?(String)
6
+ @encoding_id = encoding_id
7
+ init_instance("notifications/webhooks/encoding/encodings/#{encoding_id}/finished")
8
+ else
9
+ hash = encoding_id
10
+ end
11
+ init_from_hash(hash)
12
+ end
4
13
  end
5
14
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bitmovin-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Hoelbling-Inzko
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-04 00:00:00.000000000 Z
11
+ date: 2021-02-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -78,28 +78,28 @@ dependencies:
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '1.13'
81
+ version: 2.2.11
82
82
  type: :development
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
- version: '1.13'
88
+ version: 2.2.11
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: rake
91
91
  requirement: !ruby/object:Gem::Requirement
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: '10.0'
95
+ version: '13.0'
96
96
  type: :development
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: '10.0'
102
+ version: '13.0'
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: rspec
105
105
  requirement: !ruby/object:Gem::Requirement
@@ -123,6 +123,7 @@ extra_rdoc_files: []
123
123
  files:
124
124
  - ".gitignore"
125
125
  - ".rspec"
126
+ - ".ruby-version"
126
127
  - ".travis.yml"
127
128
  - Gemfile
128
129
  - Gemfile.lock
@@ -133,12 +134,6 @@ files:
133
134
  - bin/console
134
135
  - bin/setup
135
136
  - bitmovin-ruby.gemspec
136
- - examples/create_encoding_finished_webhook.rb
137
- - examples/dash_hls_mp4_encoding_with_manifests.rb
138
- - examples/hls_multi_codec.rb
139
- - examples/simple_dash.rb
140
- - examples/simple_dash_with_http_input.rb
141
- - examples/simple_hls_with_aes128.rb
142
137
  - lib/bitmovin-ruby.rb
143
138
  - lib/bitmovin/bitmovin_error.rb
144
139
  - lib/bitmovin/child_collection.rb
@@ -152,6 +147,8 @@ files:
152
147
  - lib/bitmovin/encoding/codec_configurations/vp9_configuration.rb
153
148
  - lib/bitmovin/encoding/encodings.rb
154
149
  - lib/bitmovin/encoding/encodings/encoding_task.rb
150
+ - lib/bitmovin/encoding/encodings/input_streams/ingest.rb
151
+ - lib/bitmovin/encoding/encodings/input_streams/trimming/time_based.rb
155
152
  - lib/bitmovin/encoding/encodings/list.rb
156
153
  - lib/bitmovin/encoding/encodings/muxing_list.rb
157
154
  - lib/bitmovin/encoding/encodings/muxings/drms/drm_muxing_resource.rb
@@ -168,9 +165,11 @@ files:
168
165
  - lib/bitmovin/encoding/encodings/muxings/ts_muxing_list.rb
169
166
  - lib/bitmovin/encoding/encodings/muxings/webm_muxing.rb
170
167
  - lib/bitmovin/encoding/encodings/muxings/webm_muxing_list.rb
168
+ - lib/bitmovin/encoding/encodings/sprites/sprite.rb
171
169
  - lib/bitmovin/encoding/encodings/stream.rb
172
170
  - lib/bitmovin/encoding/encodings/stream_input.rb
173
171
  - lib/bitmovin/encoding/encodings/stream_list.rb
172
+ - lib/bitmovin/encoding/encodings/thumbnails/thumbnail.rb
174
173
  - lib/bitmovin/encoding/inputs.rb
175
174
  - lib/bitmovin/encoding/inputs/analysis.rb
176
175
  - lib/bitmovin/encoding/inputs/analysis_task.rb
@@ -207,6 +206,7 @@ files:
207
206
  - lib/bitmovin/resource.rb
208
207
  - lib/bitmovin/version.rb
209
208
  - lib/bitmovin/webhooks.rb
209
+ - lib/bitmovin/webhooks/encoding_error_webhook.rb
210
210
  - lib/bitmovin/webhooks/encoding_finished_webhook.rb
211
211
  - lib/bitmovin/webhooks/webhook_encryption.rb
212
212
  - lib/bitmovin/webhooks/webhook_resource.rb
@@ -215,7 +215,7 @@ homepage: https://github.com/bitmovin/bitmovin-ruby
215
215
  licenses:
216
216
  - MIT
217
217
  metadata: {}
218
- post_install_message:
218
+ post_install_message:
219
219
  rdoc_options: []
220
220
  require_paths:
221
221
  - lib
@@ -230,9 +230,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
230
230
  - !ruby/object:Gem::Version
231
231
  version: '0'
232
232
  requirements: []
233
- rubyforge_project:
234
- rubygems_version: 2.6.12
235
- signing_key:
233
+ rubyforge_project:
234
+ rubygems_version: 2.5.2.3
235
+ signing_key:
236
236
  specification_version: 4
237
237
  summary: Api Client for the Bitmovin API
238
238
  test_files: []