bitmovin-ruby 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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