active_encode 0.8.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +26 -17
  3. data/.rubocop.yml +7 -3
  4. data/.rubocop_todo.yml +8 -1
  5. data/CONTRIBUTING.md +42 -12
  6. data/Gemfile +11 -11
  7. data/README.md +64 -10
  8. data/active_encode.gemspec +2 -4
  9. data/app/controllers/active_encode/encode_record_controller.rb +1 -1
  10. data/app/jobs/active_encode/polling_job.rb +1 -1
  11. data/app/models/active_encode/encode_record.rb +1 -1
  12. data/guides/media_convert_adapter.md +208 -0
  13. data/lib/active_encode/base.rb +1 -1
  14. data/lib/active_encode/core.rb +14 -14
  15. data/lib/active_encode/engine_adapter.rb +13 -13
  16. data/lib/active_encode/engine_adapters/elastic_transcoder_adapter.rb +158 -158
  17. data/lib/active_encode/engine_adapters/ffmpeg_adapter.rb +14 -3
  18. data/lib/active_encode/engine_adapters/matterhorn_adapter.rb +204 -202
  19. data/lib/active_encode/engine_adapters/media_convert_adapter.rb +435 -203
  20. data/lib/active_encode/engine_adapters/media_convert_output.rb +67 -5
  21. data/lib/active_encode/engine_adapters/pass_through_adapter.rb +3 -3
  22. data/lib/active_encode/engine_adapters/zencoder_adapter.rb +114 -114
  23. data/lib/active_encode/errors.rb +1 -1
  24. data/lib/active_encode/persistence.rb +19 -19
  25. data/lib/active_encode/version.rb +1 -1
  26. data/lib/file_locator.rb +6 -6
  27. data/spec/fixtures/ffmpeg/cancelled-id/exit_status.code +1 -0
  28. data/spec/fixtures/ffmpeg/completed-id/exit_status.code +1 -0
  29. data/spec/fixtures/ffmpeg/completed-with-warnings-id/error.log +3 -0
  30. data/spec/fixtures/ffmpeg/completed-with-warnings-id/exit_status.code +1 -0
  31. data/spec/fixtures/ffmpeg/completed-with-warnings-id/input_metadata +102 -0
  32. data/spec/fixtures/ffmpeg/completed-with-warnings-id/output_metadata-high +90 -0
  33. data/spec/fixtures/ffmpeg/completed-with-warnings-id/output_metadata-low +90 -0
  34. data/spec/fixtures/ffmpeg/completed-with-warnings-id/pid +1 -0
  35. data/spec/fixtures/ffmpeg/completed-with-warnings-id/progress +11 -0
  36. data/spec/fixtures/ffmpeg/completed-with-warnings-id/video-high.mp4 +0 -0
  37. data/spec/fixtures/ffmpeg/completed-with-warnings-id/video-low.mp4 +0 -0
  38. data/spec/fixtures/ffmpeg/failed-id/exit_status.code +1 -0
  39. data/spec/fixtures/media_convert/job_completed_empty_detail.json +1 -0
  40. data/spec/integration/ffmpeg_adapter_spec.rb +50 -1
  41. data/spec/integration/matterhorn_adapter_spec.rb +1 -2
  42. data/spec/integration/media_convert_adapter_spec.rb +144 -0
  43. data/spec/integration/pass_through_adapter_spec.rb +2 -2
  44. data/spec/integration/zencoder_adapter_spec.rb +3 -3
  45. data/spec/units/core_spec.rb +1 -1
  46. data/spec/units/file_locator_spec.rb +3 -3
  47. data/spec/units/status_spec.rb +1 -1
  48. metadata +52 -19
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.8.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Klein, Chris Colvard, Phuong Dinh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-20 00:00:00.000000000 Z
11
+ date: 2022-07-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: addressable
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.8'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.8'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: aws-sdk-cloudwatchevents
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +114,20 @@ dependencies:
100
114
  requirements:
101
115
  - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: 1.0.0
117
+ version: '5.0'
118
+ - - ">="
119
+ - !ruby/object:Gem::Version
120
+ version: 5.0.2
104
121
  type: :development
105
122
  prerelease: false
106
123
  version_requirements: !ruby/object:Gem::Requirement
107
124
  requirements:
108
125
  - - "~>"
109
126
  - !ruby/object:Gem::Version
110
- version: 1.0.0
127
+ version: '5.0'
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: 5.0.2
111
131
  - !ruby/object:Gem::Dependency
112
132
  name: bundler
113
133
  requirement: !ruby/object:Gem::Requirement
@@ -220,20 +240,6 @@ dependencies:
220
240
  - - ">="
221
241
  - !ruby/object:Gem::Version
222
242
  version: '0'
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
243
  description: This gem provides an interface to transcoding services such as Ffmpeg,
238
244
  Amazon Elastic Transcoder, or Zencoder.
239
245
  email:
@@ -262,6 +268,7 @@ files:
262
268
  - db/migrate/20180822021048_create_active_encode_encode_records.rb
263
269
  - db/migrate/20190702153755_add_create_options_to_active_encode_encode_records.rb
264
270
  - db/migrate/20190712174821_add_progress_to_active_encode_encode_records.rb
271
+ - guides/media_convert_adapter.md
265
272
  - lib/active_encode.rb
266
273
  - lib/active_encode/base.rb
267
274
  - lib/active_encode/callbacks.rb
@@ -306,10 +313,12 @@ files:
306
313
  - spec/fixtures/elastic_transcoder/output_submitted.json
307
314
  - spec/fixtures/ffmpeg/cancelled-id/cancelled
308
315
  - spec/fixtures/ffmpeg/cancelled-id/error.log
316
+ - spec/fixtures/ffmpeg/cancelled-id/exit_status.code
309
317
  - spec/fixtures/ffmpeg/cancelled-id/input_metadata
310
318
  - spec/fixtures/ffmpeg/cancelled-id/pid
311
319
  - spec/fixtures/ffmpeg/cancelled-id/progress
312
320
  - spec/fixtures/ffmpeg/completed-id/error.log
321
+ - spec/fixtures/ffmpeg/completed-id/exit_status.code
313
322
  - spec/fixtures/ffmpeg/completed-id/input_metadata
314
323
  - spec/fixtures/ffmpeg/completed-id/output_metadata-high
315
324
  - spec/fixtures/ffmpeg/completed-id/output_metadata-low
@@ -317,7 +326,17 @@ files:
317
326
  - spec/fixtures/ffmpeg/completed-id/progress
318
327
  - spec/fixtures/ffmpeg/completed-id/video-high.mp4
319
328
  - spec/fixtures/ffmpeg/completed-id/video-low.mp4
329
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/error.log
330
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/exit_status.code
331
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/input_metadata
332
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/output_metadata-high
333
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/output_metadata-low
334
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/pid
335
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/progress
336
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/video-high.mp4
337
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/video-low.mp4
320
338
  - spec/fixtures/ffmpeg/failed-id/error.log
339
+ - spec/fixtures/ffmpeg/failed-id/exit_status.code
321
340
  - spec/fixtures/ffmpeg/failed-id/input_metadata
322
341
  - spec/fixtures/ffmpeg/failed-id/pid
323
342
  - spec/fixtures/ffmpeg/failed-id/progress
@@ -344,6 +363,7 @@ files:
344
363
  - spec/fixtures/media_convert/job_completed.json
345
364
  - spec/fixtures/media_convert/job_completed_detail.json
346
365
  - spec/fixtures/media_convert/job_completed_detail_query.json
366
+ - spec/fixtures/media_convert/job_completed_empty_detail.json
347
367
  - spec/fixtures/media_convert/job_created.json
348
368
  - spec/fixtures/media_convert/job_failed.json
349
369
  - spec/fixtures/media_convert/job_progressing.json
@@ -409,7 +429,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
409
429
  - !ruby/object:Gem::Version
410
430
  version: '0'
411
431
  requirements: []
412
- rubygems_version: 3.1.2
432
+ rubygems_version: 3.2.32
413
433
  signing_key:
414
434
  specification_version: 4
415
435
  summary: Declare encode job classes that can be run by a variety of encoding services
@@ -431,10 +451,12 @@ test_files:
431
451
  - spec/fixtures/elastic_transcoder/output_submitted.json
432
452
  - spec/fixtures/ffmpeg/cancelled-id/cancelled
433
453
  - spec/fixtures/ffmpeg/cancelled-id/error.log
454
+ - spec/fixtures/ffmpeg/cancelled-id/exit_status.code
434
455
  - spec/fixtures/ffmpeg/cancelled-id/input_metadata
435
456
  - spec/fixtures/ffmpeg/cancelled-id/pid
436
457
  - spec/fixtures/ffmpeg/cancelled-id/progress
437
458
  - spec/fixtures/ffmpeg/completed-id/error.log
459
+ - spec/fixtures/ffmpeg/completed-id/exit_status.code
438
460
  - spec/fixtures/ffmpeg/completed-id/input_metadata
439
461
  - spec/fixtures/ffmpeg/completed-id/output_metadata-high
440
462
  - spec/fixtures/ffmpeg/completed-id/output_metadata-low
@@ -442,7 +464,17 @@ test_files:
442
464
  - spec/fixtures/ffmpeg/completed-id/progress
443
465
  - spec/fixtures/ffmpeg/completed-id/video-high.mp4
444
466
  - spec/fixtures/ffmpeg/completed-id/video-low.mp4
467
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/error.log
468
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/exit_status.code
469
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/input_metadata
470
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/output_metadata-high
471
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/output_metadata-low
472
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/pid
473
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/progress
474
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/video-high.mp4
475
+ - spec/fixtures/ffmpeg/completed-with-warnings-id/video-low.mp4
445
476
  - spec/fixtures/ffmpeg/failed-id/error.log
477
+ - spec/fixtures/ffmpeg/failed-id/exit_status.code
446
478
  - spec/fixtures/ffmpeg/failed-id/input_metadata
447
479
  - spec/fixtures/ffmpeg/failed-id/pid
448
480
  - spec/fixtures/ffmpeg/failed-id/progress
@@ -469,6 +501,7 @@ test_files:
469
501
  - spec/fixtures/media_convert/job_completed.json
470
502
  - spec/fixtures/media_convert/job_completed_detail.json
471
503
  - spec/fixtures/media_convert/job_completed_detail_query.json
504
+ - spec/fixtures/media_convert/job_completed_empty_detail.json
472
505
  - spec/fixtures/media_convert/job_created.json
473
506
  - spec/fixtures/media_convert/job_failed.json
474
507
  - spec/fixtures/media_convert/job_progressing.json