active_encode 0.4.1 → 0.8.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 (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