bitmovin-ruby 0.1.1 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ed736e895fbb8ae87925c3ab6265eb11bfb9eb6e
4
- data.tar.gz: 2a900407ea3e0039c79622216f661af683cde274
3
+ metadata.gz: d8ef07e664cfc690d2ece8094c032194931a759d
4
+ data.tar.gz: 73e0bd6e9de760cc431bbb26b1e0599b7b731a0a
5
5
  SHA512:
6
- metadata.gz: 6772e8ff4a7e17551c69c87fb6ddf12c0ace2a38bfed5dffa1f028d1ef787c1eda03e7d75fd536a38cd883b0af9aeb18feb247e4b6fc578c4f58ae7e72ea1a8a
7
- data.tar.gz: 3606941c4510c475a562f6d9da0a6fab1bc6431439141364c9a08797accd9b08a7b1ddb43f51fb7c1ede84de4c988ba2c2ac6be51fc5895f389d20fe9ba58a6b
6
+ metadata.gz: 02ce2014b4a5b92c391c848d4998c8a10f6bc99faed2f13d35cb184ff3c169dc7839e032525c2bc25355a5da0b290b5398e567883fb0fdf63220b5c676d9b3ae
7
+ data.tar.gz: d0470fb0a1d2b9321da40ae883c18b473a0e87563f80a11c77592c5288bcb137243f3e8477c2b8fff7f71c7288e25bea9dc109ffa97efb5cdb92bf8570b74f1c
data/.gitignore CHANGED
@@ -10,3 +10,4 @@ test.rb
10
10
  test-manifest.rb
11
11
  test_encoding.rb
12
12
  delete.rb
13
+ *.gem
data/Gemfile.lock CHANGED
@@ -1,11 +1,11 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bitmovin-ruby (0.1.0)
5
- activesupport (~> 5.0.2)
4
+ bitmovin-ruby (0.1.1)
5
+ activesupport (~> 5.0.2, >= 5.0.2)
6
6
  faraday (~> 0.11.0)
7
7
  faraday_middleware (~> 0.11.0)
8
- httpclient (~> 2.8.3)
8
+ httpclient (~> 2.8.3, >= 2.8.3)
9
9
 
10
10
  GEM
11
11
  remote: https://rubygems.org/
@@ -1,4 +1,4 @@
1
- require_relative '../lib/bitmovin'
1
+ require 'bitmovin-ruby'
2
2
 
3
3
  # CONFIGURATION
4
4
  BITMOVIN_API_KEY = "YOUR API KEY HERE"
@@ -14,22 +14,33 @@ OUTPUT_AWS_SECRET_KEY = "YOUR AWS_SECRET_KEY"
14
14
 
15
15
  Bitmovin.init(BITMOVIN_API_KEY)
16
16
 
17
+
18
+ # This will create a Input Bucket you can reuse in future encodings
19
+ # To get a list of all your S3Inputs do:
20
+ # Bitmovin::Encoding::Inputs::S3Input.list
21
+
17
22
  s3_input = Bitmovin::Encoding::Inputs::S3Input.new({
18
23
  accessKey: AWS_ACCESS_KEY,
19
24
  secretKey: AWS_SECRET_KEY,
20
25
  bucketName: BUCKET_NAME
21
26
  }).save!
27
+
28
+ # This will create a Output Bucket you can reuse in future encodings
29
+ # To get a list of all your Output do:
30
+ # Bitmovin::Encoding::Outputs::S3Output.list
22
31
  s3_output = Bitmovin::Encoding::Outputs::S3Output.new({
23
32
  accessKey: OUTPUT_AWS_ACCESS_KEY,
24
33
  secretKey: OUTPUT_AWS_SECRET_KEY,
25
34
  bucketName: BUCKET_NAME
26
35
  }).save!
27
36
 
28
- enc = Bitmovin::Encoding::Encodings::EncodingTask.new({
29
- name: "VOD Encoding Ruby"
30
- })
31
- enc.save!
32
37
 
38
+ # Please note inputs/outputs are not individual files but rather the
39
+ # Bucket you are reading/writing files to and they can be reused between encodings.
40
+
41
+
42
+ # Codec Configurations are similar to Inputs/Outputs in that they are configured once
43
+ # and can be reused for future encodings.
33
44
  codec_config_720_700 = Bitmovin::Encoding::CodecConfigurations::H264Configuration.new({
34
45
  name: "H264 1280x720 700kb/s",
35
46
  profile: "MAIN",
@@ -62,6 +73,21 @@ audio_config = Bitmovin::Encoding::CodecConfigurations::AacConfiguration.new({
62
73
  })
63
74
  audio_config.save!
64
75
 
76
+
77
+
78
+
79
+
80
+
81
+
82
+ # The actual instance of the encoding task you are about to start
83
+ enc = Bitmovin::Encoding::Encodings::EncodingTask.new({
84
+ name: "VOD Encoding Ruby",
85
+ cloud_region: "AWS_AP_SOUTHEAST_1"
86
+ })
87
+ enc.save!
88
+
89
+ # Stream Configuration
90
+
65
91
  stream_720_700 = enc.streams.build(name: 'H264 1280x720 700kb/s')
66
92
  stream_720_700.codec_configuration = codec_config_720_700
67
93
  stream_720_700.build_input_stream(input_path: INPUT_FILE_PATH, input_id: s3_input.id, selection_mode: 'AUTO')
@@ -82,6 +108,8 @@ stream_aac.codec_configuration = audio_config
82
108
  stream_aac.build_input_stream(input_path: INPUT_FILE_PATH, input_id: s3_input.id, selection_mode: 'AUTO')
83
109
  stream_aac.save!
84
110
 
111
+ # Muxing Configuration
112
+
85
113
  fmp4_muxing_720_700 = enc.muxings.fmp4.build(name: 'H264 1280x720 700kb/s', segment_length: 4)
86
114
  fmp4_muxing_720_700.build_output({
87
115
  output_id: s3_output.id,
@@ -114,6 +142,8 @@ audio_muxing.build_output({
114
142
  audio_muxing.streams << stream_aac.id
115
143
  audio_muxing.save!
116
144
 
145
+
146
+ # Starting an encoding and monitoring it's status
117
147
  enc.start!
118
148
 
119
149
  while(enc.status != 'FINISHED')
@@ -128,7 +158,7 @@ puts "Encoding finished!"
128
158
 
129
159
 
130
160
 
131
- # Manifests
161
+ # Generating a DASH Manifest
132
162
 
133
163
  puts "Starting Manifest generation"
134
164
  manifest = Bitmovin::Encoding::Manifests::DashManifest.new({
@@ -1,3 +1,3 @@
1
1
  module Bitmovin
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.0"
3
3
  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.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Hoelbling-Inzko
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-23 00:00:00.000000000 Z
11
+ date: 2017-03-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday