active_encode 0.4.1 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +80 -0
  3. data/.rubocop.yml +9 -70
  4. data/.rubocop_todo.yml +68 -0
  5. data/CODE_OF_CONDUCT.md +36 -0
  6. data/CONTRIBUTING.md +23 -21
  7. data/Gemfile +5 -4
  8. data/LICENSE +11 -199
  9. data/README.md +135 -24
  10. data/SUPPORT.md +5 -0
  11. data/active_encode.gemspec +13 -3
  12. data/app/controllers/active_encode/encode_record_controller.rb +13 -0
  13. data/app/jobs/active_encode/polling_job.rb +1 -1
  14. data/app/models/active_encode/encode_record.rb +1 -0
  15. data/config/routes.rb +4 -0
  16. data/db/migrate/20180822021048_create_active_encode_encode_records.rb +1 -0
  17. data/db/migrate/20190702153755_add_create_options_to_active_encode_encode_records.rb +6 -0
  18. data/db/migrate/20190712174821_add_progress_to_active_encode_encode_records.rb +6 -0
  19. data/lib/active_encode.rb +1 -0
  20. data/lib/active_encode/base.rb +2 -2
  21. data/lib/active_encode/callbacks.rb +1 -0
  22. data/lib/active_encode/core.rb +4 -3
  23. data/lib/active_encode/engine.rb +1 -0
  24. data/lib/active_encode/engine_adapter.rb +1 -0
  25. data/lib/active_encode/engine_adapters.rb +4 -1
  26. data/lib/active_encode/engine_adapters/elastic_transcoder_adapter.rb +116 -38
  27. data/lib/active_encode/engine_adapters/ffmpeg_adapter.rb +141 -87
  28. data/lib/active_encode/engine_adapters/matterhorn_adapter.rb +5 -4
  29. data/lib/active_encode/engine_adapters/media_convert_adapter.rb +372 -0
  30. data/lib/active_encode/engine_adapters/media_convert_output.rb +104 -0
  31. data/lib/active_encode/engine_adapters/pass_through_adapter.rb +239 -0
  32. data/lib/active_encode/engine_adapters/test_adapter.rb +5 -4
  33. data/lib/active_encode/engine_adapters/zencoder_adapter.rb +3 -2
  34. data/lib/active_encode/errors.rb +6 -0
  35. data/lib/active_encode/global_id.rb +2 -1
  36. data/lib/active_encode/input.rb +3 -2
  37. data/lib/active_encode/output.rb +3 -2
  38. data/lib/active_encode/persistence.rb +11 -5
  39. data/lib/active_encode/polling.rb +3 -2
  40. data/lib/active_encode/spec/shared_specs.rb +2 -0
  41. data/{spec/shared_specs/engine_adapter_specs.rb → lib/active_encode/spec/shared_specs/engine_adapter.rb} +37 -38
  42. data/lib/active_encode/status.rb +1 -0
  43. data/lib/active_encode/technical_metadata.rb +3 -2
  44. data/lib/active_encode/version.rb +2 -1
  45. data/lib/file_locator.rb +93 -0
  46. data/spec/controllers/encode_record_controller_spec.rb +53 -0
  47. data/spec/fixtures/ffmpeg/cancelled-id/cancelled +0 -0
  48. data/spec/fixtures/file with space.low.mp4 +0 -0
  49. data/spec/fixtures/file with space.mp4 +0 -0
  50. data/spec/fixtures/fireworks.low.mp4 +0 -0
  51. data/spec/fixtures/media_convert/endpoints.json +1 -0
  52. data/spec/fixtures/media_convert/job_canceled.json +412 -0
  53. data/spec/fixtures/media_convert/job_canceling.json +1 -0
  54. data/spec/fixtures/media_convert/job_completed.json +359 -0
  55. data/spec/fixtures/media_convert/job_completed_detail.json +1 -0
  56. data/spec/fixtures/media_convert/job_completed_detail_query.json +1 -0
  57. data/spec/fixtures/media_convert/job_created.json +408 -0
  58. data/spec/fixtures/media_convert/job_failed.json +406 -0
  59. data/spec/fixtures/media_convert/job_progressing.json +414 -0
  60. data/spec/fixtures/pass_through/cancelled-id/cancelled +0 -0
  61. data/spec/fixtures/pass_through/cancelled-id/input_metadata +90 -0
  62. data/spec/fixtures/pass_through/completed-id/completed +0 -0
  63. data/spec/fixtures/pass_through/completed-id/input_metadata +102 -0
  64. data/spec/fixtures/pass_through/completed-id/output_metadata-high +90 -0
  65. data/spec/fixtures/pass_through/completed-id/output_metadata-low +90 -0
  66. data/spec/fixtures/pass_through/completed-id/video-high.mp4 +0 -0
  67. data/spec/fixtures/pass_through/completed-id/video-low.mp4 +0 -0
  68. data/spec/fixtures/pass_through/failed-id/error.log +1 -0
  69. data/spec/fixtures/pass_through/failed-id/input_metadata +90 -0
  70. data/spec/fixtures/pass_through/running-id/input_metadata +90 -0
  71. data/spec/integration/elastic_transcoder_adapter_spec.rb +63 -29
  72. data/spec/integration/ffmpeg_adapter_spec.rb +96 -24
  73. data/spec/integration/matterhorn_adapter_spec.rb +45 -44
  74. data/spec/integration/media_convert_adapter_spec.rb +126 -0
  75. data/spec/integration/pass_through_adapter_spec.rb +151 -0
  76. data/spec/integration/zencoder_adapter_spec.rb +210 -209
  77. data/spec/rails_helper.rb +1 -0
  78. data/spec/routing/encode_record_controller_routing_spec.rb +10 -0
  79. data/spec/spec_helper.rb +2 -2
  80. data/spec/test_app_templates/lib/generators/test_app_generator.rb +13 -12
  81. data/spec/units/callbacks_spec.rb +3 -2
  82. data/spec/units/core_spec.rb +26 -25
  83. data/spec/units/engine_adapter_spec.rb +1 -0
  84. data/spec/units/file_locator_spec.rb +129 -0
  85. data/spec/units/global_id_spec.rb +12 -11
  86. data/spec/units/input_spec.rb +8 -5
  87. data/spec/units/output_spec.rb +8 -5
  88. data/spec/units/persistence_spec.rb +15 -11
  89. data/spec/units/polling_job_spec.rb +7 -6
  90. data/spec/units/polling_spec.rb +1 -0
  91. data/spec/units/status_spec.rb +3 -3
  92. metadata +184 -18
  93. data/.travis.yml +0 -19
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe ActiveEncode::Output do
@@ -6,8 +7,10 @@ describe ActiveEncode::Output do
6
7
  describe 'attributes' do
7
8
  it { is_expected.to respond_to(:id, :url, :label) }
8
9
  it { is_expected.to respond_to(:state, :errors, :created_at, :updated_at) }
9
- it { is_expected.to respond_to(:width, :height, :frame_rate, :checksum,
10
- :audio_codec, :video_codec, :audio_bitrate, :video_bitrate) }
10
+ it {
11
+ is_expected.to respond_to(:width, :height, :frame_rate, :checksum,
12
+ :audio_codec, :video_codec, :audio_bitrate, :video_bitrate)
13
+ }
11
14
  end
12
15
 
13
16
  describe '#valid?' do
@@ -16,8 +19,8 @@ describe ActiveEncode::Output do
16
19
  obj.id = "1"
17
20
  obj.url = "file:///tmp/video.mp4"
18
21
  obj.label = "HD"
19
- obj.created_at = Time.now
20
- obj.updated_at = Time.now
22
+ obj.created_at = Time.now.utc
23
+ obj.updated_at = Time.now.utc
21
24
  end
22
25
  end
23
26
 
@@ -33,7 +36,7 @@ describe ActiveEncode::Output do
33
36
  expect(valid_output.tap { |obj| obj.created_at = "today" }).not_to be_valid
34
37
  expect(valid_output.tap { |obj| obj.updated_at = nil }).not_to be_valid
35
38
  expect(valid_output.tap { |obj| obj.updated_at = "today" }).not_to be_valid
36
- expect(valid_output.tap { |obj| obj.created_at = Time.now }).not_to be_valid
39
+ expect(valid_output.tap { |obj| obj.created_at = Time.now.utc }).not_to be_valid
37
40
  end
38
41
  end
39
42
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'rails_helper'
2
3
 
3
4
  describe ActiveEncode::Persistence, db_clean: true do
@@ -12,8 +13,8 @@ describe ActiveEncode::Persistence, db_clean: true do
12
13
  end
13
14
 
14
15
  describe 'find' do
15
- let(:encode) { CustomEncode.create(nil) }
16
16
  subject { ActiveEncode::EncodeRecord.find_by(global_id: encode.to_global_id.to_s) }
17
+ let(:encode) { CustomEncode.create(nil) }
17
18
 
18
19
  it 'persists changes on find' do
19
20
  expect { CustomEncode.find(encode.id) }.to change { subject.reload.updated_at }
@@ -21,25 +22,28 @@ describe ActiveEncode::Persistence, db_clean: true do
21
22
  end
22
23
 
23
24
  describe 'create' do
24
- let(:encode) { CustomEncode.create(nil) }
25
25
  subject { ActiveEncode::EncodeRecord.find_by(global_id: encode.to_global_id.to_s) }
26
+ let(:create_options) { { option: 'value' } }
27
+ let(:encode) { CustomEncode.create(nil, create_options) }
26
28
 
27
29
  it 'creates a record' do
28
30
  expect { encode }.to change { ActiveEncode::EncodeRecord.count }.by(1)
29
31
  end
30
32
 
31
- its(:global_id) { is_expected.to eq encode.to_global_id.to_s }
32
- its(:state) { is_expected.to eq encode.state.to_s }
33
- its(:adapter) { is_expected.to eq encode.class.engine_adapter.class.name }
34
- its(:title) { is_expected.to eq encode.input.url.to_s }
35
- its(:raw_object) { is_expected.to eq encode.to_json }
36
- its(:created_at) { is_expected.to be_within(1.second).of encode.created_at }
37
- its(:updated_at) { is_expected.to be_within(1.second).of encode.updated_at }
33
+ it { expect(subject.global_id).to eq encode.to_global_id.to_s }
34
+ it { expect(subject.state).to eq encode.state.to_s }
35
+ it { expect(subject.adapter).to eq encode.class.engine_adapter.class.name }
36
+ it { expect(subject.title).to eq encode.input.url.to_s }
37
+ it { expect(subject.raw_object).to eq encode.to_json }
38
+ it { expect(subject.created_at).to be_within(1.second).of encode.created_at }
39
+ it { expect(subject.updated_at).to be_within(1.second).of encode.updated_at }
40
+ it { expect(subject.create_options).to eq create_options.to_json }
41
+ it { expect(subject.progress).to eq encode.percent_complete }
38
42
  end
39
43
 
40
44
  describe 'cancel' do
41
- let(:encode) { CustomEncode.create(nil) }
42
45
  subject { ActiveEncode::EncodeRecord.find_by(global_id: encode.to_global_id.to_s) }
46
+ let(:encode) { CustomEncode.create(nil) }
43
47
 
44
48
  it 'persists changes on cancel' do
45
49
  expect { encode.cancel! }.to change { subject.reload.state }.from("running").to("cancelled")
@@ -47,8 +51,8 @@ describe ActiveEncode::Persistence, db_clean: true do
47
51
  end
48
52
 
49
53
  describe 'reload' do
50
- let(:encode) { CustomEncode.create(nil) }
51
54
  subject { ActiveEncode::EncodeRecord.find_by(global_id: encode.to_global_id.to_s) }
55
+ let(:encode) { CustomEncode.create(nil) }
52
56
 
53
57
  it 'persists changes on reload' do
54
58
  expect { encode.reload }.to change { subject.reload.updated_at }
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'rails_helper'
2
3
 
3
4
  describe ActiveEncode::PollingJob do
@@ -22,9 +23,9 @@ describe ActiveEncode::PollingJob do
22
23
  end
23
24
 
24
25
  describe '#perform' do
25
- let(:encode) { PollingEncode.create("sample.mp4").tap { |encode| encode.state = state } }
26
- let(:poll) { ActiveEncode::PollingJob.new }
27
26
  subject { encode.history }
27
+ let(:encode) { PollingEncode.create("sample.mp4").tap { |encode| encode.state = state } }
28
+ let(:poll) { described_class.new }
28
29
 
29
30
  before do
30
31
  encode
@@ -41,7 +42,7 @@ describe ActiveEncode::PollingJob do
41
42
  end
42
43
 
43
44
  it "does not re-enqueue itself" do
44
- expect(ActiveEncode::PollingJob).not_to have_been_enqueued
45
+ expect(described_class).not_to have_been_enqueued
45
46
  end
46
47
  end
47
48
 
@@ -54,7 +55,7 @@ describe ActiveEncode::PollingJob do
54
55
  end
55
56
 
56
57
  it "does not re-enqueue itself" do
57
- expect(ActiveEncode::PollingJob).not_to have_been_enqueued
58
+ expect(described_class).not_to have_been_enqueued
58
59
  end
59
60
  end
60
61
 
@@ -67,7 +68,7 @@ describe ActiveEncode::PollingJob do
67
68
  end
68
69
 
69
70
  it "does not re-enqueue itself" do
70
- expect(ActiveEncode::PollingJob).not_to have_been_enqueued
71
+ expect(described_class).not_to have_been_enqueued
71
72
  end
72
73
  end
73
74
 
@@ -79,7 +80,7 @@ describe ActiveEncode::PollingJob do
79
80
  end
80
81
 
81
82
  it "re-enqueues itself" do
82
- expect(ActiveEncode::PollingJob).to have_been_enqueued.with(encode)
83
+ expect(described_class).to have_been_enqueued.with(encode)
83
84
  end
84
85
  end
85
86
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'rails_helper'
2
3
 
3
4
  describe ActiveEncode::Polling do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe ActiveEncode::Status do
@@ -5,13 +6,12 @@ describe ActiveEncode::Status do
5
6
  class CustomEncode < ActiveEncode::Base
6
7
  end
7
8
  end
8
- after do
9
+ after do
9
10
  Object.send(:remove_const, :CustomEncode)
10
11
  end
11
12
 
12
- let(:encode_class) { ActiveEncode::Base }
13
-
14
13
  subject { encode_class.new(nil) }
14
+ let(:encode_class) { ActiveEncode::Base }
15
15
 
16
16
  describe 'attributes' do
17
17
  it { is_expected.to respond_to(:state, :errors, :created_at, :updated_at) }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_encode
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Klein, Chris Colvard, Phuong Dinh
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-09 00:00:00.000000000 Z
11
+ date: 2021-07-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: bundler
28
+ name: aws-sdk-cloudwatchevents
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: coveralls
42
+ name: aws-sdk-cloudwatchlogs
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -53,7 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: database_cleaner
56
+ name: aws-sdk-elastictranscoder
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -67,7 +67,49 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: engine_cart
70
+ name: aws-sdk-mediaconvert
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: aws-sdk-s3
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: bixby
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 1.0.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 1.0.0
111
+ - !ruby/object:Gem::Dependency
112
+ name: bundler
71
113
  requirement: !ruby/object:Gem::Requirement
72
114
  requirements:
73
115
  - - ">="
@@ -80,6 +122,48 @@ dependencies:
80
122
  - - ">="
81
123
  - !ruby/object:Gem::Version
82
124
  version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: coveralls
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: database_cleaner
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: engine_cart
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '2.2'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '2.2'
83
167
  - !ruby/object:Gem::Dependency
84
168
  name: rake
85
169
  requirement: !ruby/object:Gem::Requirement
@@ -109,7 +193,7 @@ dependencies:
109
193
  - !ruby/object:Gem::Version
110
194
  version: '0'
111
195
  - !ruby/object:Gem::Dependency
112
- name: rspec-its
196
+ name: rspec_junit_formatter
113
197
  requirement: !ruby/object:Gem::Requirement
114
198
  requirements:
115
199
  - - ">="
@@ -136,28 +220,48 @@ dependencies:
136
220
  - - ">="
137
221
  - !ruby/object:Gem::Version
138
222
  version: '0'
139
- description: This gem serves as the basis for the interface between a Ruby (Rails)
140
- application and a provider of transcoding services such as Opencast Matterhorn,
141
- Zencoder, and Amazon Elastic Transcoder.
223
+ - !ruby/object:Gem::Dependency
224
+ name: sprockets
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - "<"
228
+ - !ruby/object:Gem::Version
229
+ version: '4'
230
+ type: :runtime
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - "<"
235
+ - !ruby/object:Gem::Version
236
+ version: '4'
237
+ description: This gem provides an interface to transcoding services such as Ffmpeg,
238
+ Amazon Elastic Transcoder, or Zencoder.
142
239
  email:
143
240
  - mbklein@gmail.com, chris.colvard@gmail.com, phuongdh@gmail.com
144
241
  executables: []
145
242
  extensions: []
146
243
  extra_rdoc_files: []
147
244
  files:
245
+ - ".circleci/config.yml"
148
246
  - ".coveralls.yml"
149
247
  - ".gitignore"
150
248
  - ".rubocop.yml"
151
- - ".travis.yml"
249
+ - ".rubocop_todo.yml"
250
+ - CODE_OF_CONDUCT.md
152
251
  - CONTRIBUTING.md
153
252
  - Gemfile
154
253
  - LICENSE
155
254
  - README.md
156
255
  - Rakefile
256
+ - SUPPORT.md
157
257
  - active_encode.gemspec
258
+ - app/controllers/active_encode/encode_record_controller.rb
158
259
  - app/jobs/active_encode/polling_job.rb
159
260
  - app/models/active_encode/encode_record.rb
261
+ - config/routes.rb
160
262
  - db/migrate/20180822021048_create_active_encode_encode_records.rb
263
+ - db/migrate/20190702153755_add_create_options_to_active_encode_encode_records.rb
264
+ - db/migrate/20190712174821_add_progress_to_active_encode_encode_records.rb
161
265
  - lib/active_encode.rb
162
266
  - lib/active_encode/base.rb
163
267
  - lib/active_encode/callbacks.rb
@@ -168,16 +272,24 @@ files:
168
272
  - lib/active_encode/engine_adapters/elastic_transcoder_adapter.rb
169
273
  - lib/active_encode/engine_adapters/ffmpeg_adapter.rb
170
274
  - lib/active_encode/engine_adapters/matterhorn_adapter.rb
275
+ - lib/active_encode/engine_adapters/media_convert_adapter.rb
276
+ - lib/active_encode/engine_adapters/media_convert_output.rb
277
+ - lib/active_encode/engine_adapters/pass_through_adapter.rb
171
278
  - lib/active_encode/engine_adapters/test_adapter.rb
172
279
  - lib/active_encode/engine_adapters/zencoder_adapter.rb
280
+ - lib/active_encode/errors.rb
173
281
  - lib/active_encode/global_id.rb
174
282
  - lib/active_encode/input.rb
175
283
  - lib/active_encode/output.rb
176
284
  - lib/active_encode/persistence.rb
177
285
  - lib/active_encode/polling.rb
286
+ - lib/active_encode/spec/shared_specs.rb
287
+ - lib/active_encode/spec/shared_specs/engine_adapter.rb
178
288
  - lib/active_encode/status.rb
179
289
  - lib/active_encode/technical_metadata.rb
180
290
  - lib/active_encode/version.rb
291
+ - lib/file_locator.rb
292
+ - spec/controllers/encode_record_controller_spec.rb
181
293
  - spec/fixtures/Bars_512kb.mp4
182
294
  - spec/fixtures/elastic_transcoder/input_completed.json
183
295
  - spec/fixtures/elastic_transcoder/input_generic.json
@@ -192,6 +304,7 @@ files:
192
304
  - spec/fixtures/elastic_transcoder/output_failed.json
193
305
  - spec/fixtures/elastic_transcoder/output_progressing.json
194
306
  - spec/fixtures/elastic_transcoder/output_submitted.json
307
+ - spec/fixtures/ffmpeg/cancelled-id/cancelled
195
308
  - spec/fixtures/ffmpeg/cancelled-id/error.log
196
309
  - spec/fixtures/ffmpeg/cancelled-id/input_metadata
197
310
  - spec/fixtures/ffmpeg/cancelled-id/pid
@@ -212,6 +325,9 @@ files:
212
325
  - spec/fixtures/ffmpeg/running-id/input_metadata
213
326
  - spec/fixtures/ffmpeg/running-id/pid
214
327
  - spec/fixtures/ffmpeg/running-id/progress
328
+ - spec/fixtures/file with space.low.mp4
329
+ - spec/fixtures/file with space.mp4
330
+ - spec/fixtures/fireworks.low.mp4
215
331
  - spec/fixtures/fireworks.mp4
216
332
  - spec/fixtures/matterhorn/cancelled_response.xml
217
333
  - spec/fixtures/matterhorn/completed_response.xml
@@ -222,6 +338,26 @@ files:
222
338
  - spec/fixtures/matterhorn/running_response.xml
223
339
  - spec/fixtures/matterhorn/stop_completed_response.xml
224
340
  - spec/fixtures/matterhorn/stop_running_response.xml
341
+ - spec/fixtures/media_convert/endpoints.json
342
+ - spec/fixtures/media_convert/job_canceled.json
343
+ - spec/fixtures/media_convert/job_canceling.json
344
+ - spec/fixtures/media_convert/job_completed.json
345
+ - spec/fixtures/media_convert/job_completed_detail.json
346
+ - spec/fixtures/media_convert/job_completed_detail_query.json
347
+ - spec/fixtures/media_convert/job_created.json
348
+ - spec/fixtures/media_convert/job_failed.json
349
+ - spec/fixtures/media_convert/job_progressing.json
350
+ - spec/fixtures/pass_through/cancelled-id/cancelled
351
+ - spec/fixtures/pass_through/cancelled-id/input_metadata
352
+ - spec/fixtures/pass_through/completed-id/completed
353
+ - spec/fixtures/pass_through/completed-id/input_metadata
354
+ - spec/fixtures/pass_through/completed-id/output_metadata-high
355
+ - spec/fixtures/pass_through/completed-id/output_metadata-low
356
+ - spec/fixtures/pass_through/completed-id/video-high.mp4
357
+ - spec/fixtures/pass_through/completed-id/video-low.mp4
358
+ - spec/fixtures/pass_through/failed-id/error.log
359
+ - spec/fixtures/pass_through/failed-id/input_metadata
360
+ - spec/fixtures/pass_through/running-id/input_metadata
225
361
  - spec/fixtures/zencoder/job_create.json
226
362
  - spec/fixtures/zencoder/job_details_cancelled.json
227
363
  - spec/fixtures/zencoder/job_details_completed.json
@@ -236,14 +372,17 @@ files:
236
372
  - spec/integration/elastic_transcoder_adapter_spec.rb
237
373
  - spec/integration/ffmpeg_adapter_spec.rb
238
374
  - spec/integration/matterhorn_adapter_spec.rb
375
+ - spec/integration/media_convert_adapter_spec.rb
376
+ - spec/integration/pass_through_adapter_spec.rb
239
377
  - spec/integration/zencoder_adapter_spec.rb
240
378
  - spec/rails_helper.rb
241
- - spec/shared_specs/engine_adapter_specs.rb
379
+ - spec/routing/encode_record_controller_routing_spec.rb
242
380
  - spec/spec_helper.rb
243
381
  - spec/test_app_templates/lib/generators/test_app_generator.rb
244
382
  - spec/units/callbacks_spec.rb
245
383
  - spec/units/core_spec.rb
246
384
  - spec/units/engine_adapter_spec.rb
385
+ - spec/units/file_locator_spec.rb
247
386
  - spec/units/global_id_spec.rb
248
387
  - spec/units/input_spec.rb
249
388
  - spec/units/output_spec.rb
@@ -255,7 +394,7 @@ homepage: https://github.com/samvera-labs/active_encode
255
394
  licenses:
256
395
  - Apache-2.0
257
396
  metadata: {}
258
- post_install_message:
397
+ post_install_message:
259
398
  rdoc_options: []
260
399
  require_paths:
261
400
  - lib
@@ -270,12 +409,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
270
409
  - !ruby/object:Gem::Version
271
410
  version: '0'
272
411
  requirements: []
273
- rubyforge_project:
274
- rubygems_version: 2.6.14
275
- signing_key:
412
+ rubygems_version: 3.1.2
413
+ signing_key:
276
414
  specification_version: 4
277
415
  summary: Declare encode job classes that can be run by a variety of encoding services
278
416
  test_files:
417
+ - spec/controllers/encode_record_controller_spec.rb
279
418
  - spec/fixtures/Bars_512kb.mp4
280
419
  - spec/fixtures/elastic_transcoder/input_completed.json
281
420
  - spec/fixtures/elastic_transcoder/input_generic.json
@@ -290,6 +429,7 @@ test_files:
290
429
  - spec/fixtures/elastic_transcoder/output_failed.json
291
430
  - spec/fixtures/elastic_transcoder/output_progressing.json
292
431
  - spec/fixtures/elastic_transcoder/output_submitted.json
432
+ - spec/fixtures/ffmpeg/cancelled-id/cancelled
293
433
  - spec/fixtures/ffmpeg/cancelled-id/error.log
294
434
  - spec/fixtures/ffmpeg/cancelled-id/input_metadata
295
435
  - spec/fixtures/ffmpeg/cancelled-id/pid
@@ -310,6 +450,9 @@ test_files:
310
450
  - spec/fixtures/ffmpeg/running-id/input_metadata
311
451
  - spec/fixtures/ffmpeg/running-id/pid
312
452
  - spec/fixtures/ffmpeg/running-id/progress
453
+ - spec/fixtures/file with space.low.mp4
454
+ - spec/fixtures/file with space.mp4
455
+ - spec/fixtures/fireworks.low.mp4
313
456
  - spec/fixtures/fireworks.mp4
314
457
  - spec/fixtures/matterhorn/cancelled_response.xml
315
458
  - spec/fixtures/matterhorn/completed_response.xml
@@ -320,6 +463,26 @@ test_files:
320
463
  - spec/fixtures/matterhorn/running_response.xml
321
464
  - spec/fixtures/matterhorn/stop_completed_response.xml
322
465
  - spec/fixtures/matterhorn/stop_running_response.xml
466
+ - spec/fixtures/media_convert/endpoints.json
467
+ - spec/fixtures/media_convert/job_canceled.json
468
+ - spec/fixtures/media_convert/job_canceling.json
469
+ - spec/fixtures/media_convert/job_completed.json
470
+ - spec/fixtures/media_convert/job_completed_detail.json
471
+ - spec/fixtures/media_convert/job_completed_detail_query.json
472
+ - spec/fixtures/media_convert/job_created.json
473
+ - spec/fixtures/media_convert/job_failed.json
474
+ - spec/fixtures/media_convert/job_progressing.json
475
+ - spec/fixtures/pass_through/cancelled-id/cancelled
476
+ - spec/fixtures/pass_through/cancelled-id/input_metadata
477
+ - spec/fixtures/pass_through/completed-id/completed
478
+ - spec/fixtures/pass_through/completed-id/input_metadata
479
+ - spec/fixtures/pass_through/completed-id/output_metadata-high
480
+ - spec/fixtures/pass_through/completed-id/output_metadata-low
481
+ - spec/fixtures/pass_through/completed-id/video-high.mp4
482
+ - spec/fixtures/pass_through/completed-id/video-low.mp4
483
+ - spec/fixtures/pass_through/failed-id/error.log
484
+ - spec/fixtures/pass_through/failed-id/input_metadata
485
+ - spec/fixtures/pass_through/running-id/input_metadata
323
486
  - spec/fixtures/zencoder/job_create.json
324
487
  - spec/fixtures/zencoder/job_details_cancelled.json
325
488
  - spec/fixtures/zencoder/job_details_completed.json
@@ -334,14 +497,17 @@ test_files:
334
497
  - spec/integration/elastic_transcoder_adapter_spec.rb
335
498
  - spec/integration/ffmpeg_adapter_spec.rb
336
499
  - spec/integration/matterhorn_adapter_spec.rb
500
+ - spec/integration/media_convert_adapter_spec.rb
501
+ - spec/integration/pass_through_adapter_spec.rb
337
502
  - spec/integration/zencoder_adapter_spec.rb
338
503
  - spec/rails_helper.rb
339
- - spec/shared_specs/engine_adapter_specs.rb
504
+ - spec/routing/encode_record_controller_routing_spec.rb
340
505
  - spec/spec_helper.rb
341
506
  - spec/test_app_templates/lib/generators/test_app_generator.rb
342
507
  - spec/units/callbacks_spec.rb
343
508
  - spec/units/core_spec.rb
344
509
  - spec/units/engine_adapter_spec.rb
510
+ - spec/units/file_locator_spec.rb
345
511
  - spec/units/global_id_spec.rb
346
512
  - spec/units/input_spec.rb
347
513
  - spec/units/output_spec.rb