dragonfly_video 0.2.0 → 0.3.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 +5 -5
- data/CHANGELOG.md +4 -0
- data/dragonfly_video.gemspec +7 -7
- data/lib/dragonfly_video/analysers/video_properties.rb +1 -9
- data/lib/dragonfly_video/plugin.rb +4 -2
- data/lib/dragonfly_video/processors/base_processor.rb +7 -0
- data/lib/dragonfly_video/processors/remove_audio.rb +15 -0
- data/lib/dragonfly_video/processors/screenshot.rb +4 -9
- data/lib/dragonfly_video/version.rb +1 -1
- data/lib/dragonfly_video.rb +3 -3
- data/samples/sample.mov +0 -0
- metadata +15 -13
- /data/samples/{IMG_0064.mp4 → sample.mp4} +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 9b4cf022a0013222646d58e213e321671d455ecad4540ef426c3a6b63ffc9b05
|
|
4
|
+
data.tar.gz: 909d9226bfa3a785dfcf51ee69a1b3bca6ca626be5ae14c296896b175bf333de
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b279dee7e3988071524a3a3e5055863410057feb9d9a23d95c358a33dd034b22e851b5db5e6ae934e3516618fac0c3c10b4add3bfdcd0d2ec673cc27803389df
|
|
7
|
+
data.tar.gz: 8c393fc8f341ad9cd535378769daefa31c8bd2a115ac76f51d308a2d58e2c0823dbf9ebd87909818ff52eaa2520476a6b5ca86062b38648e5489b1cebc73166f
|
data/CHANGELOG.md
CHANGED
data/dragonfly_video.gemspec
CHANGED
|
@@ -20,12 +20,12 @@ Gem::Specification.new do |spec|
|
|
|
20
20
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
21
21
|
spec.require_paths = ["lib"]
|
|
22
22
|
|
|
23
|
-
spec.add_dependency
|
|
24
|
-
spec.add_dependency
|
|
23
|
+
spec.add_dependency "dragonfly", "~> 1.0"
|
|
24
|
+
spec.add_dependency "streamio-ffmpeg", "~> 3.0"
|
|
25
25
|
|
|
26
|
-
spec.add_development_dependency
|
|
27
|
-
spec.add_development_dependency
|
|
28
|
-
spec.add_development_dependency
|
|
29
|
-
spec.add_development_dependency
|
|
30
|
-
spec.add_development_dependency
|
|
26
|
+
spec.add_development_dependency "bundler"
|
|
27
|
+
spec.add_development_dependency "rake"
|
|
28
|
+
spec.add_development_dependency "guard"
|
|
29
|
+
spec.add_development_dependency "guard-minitest"
|
|
30
|
+
spec.add_development_dependency "minitest"
|
|
31
31
|
end
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
require
|
|
2
|
-
|
|
3
|
-
# IMPORTANT: See https://github.com/streamio/streamio-ffmpeg
|
|
1
|
+
require "streamio-ffmpeg"
|
|
4
2
|
|
|
5
3
|
module DragonflyVideo
|
|
6
4
|
module Analysers
|
|
@@ -10,12 +8,6 @@ module DragonflyVideo
|
|
|
10
8
|
audio_sample_rate audio_channels).freeze
|
|
11
9
|
|
|
12
10
|
def call(content)
|
|
13
|
-
ffmpeg(content)
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
private
|
|
17
|
-
|
|
18
|
-
def ffmpeg(content)
|
|
19
11
|
res = {}
|
|
20
12
|
movie = FFMPEG::Movie.new(content.path)
|
|
21
13
|
if movie.valid?
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
require
|
|
2
|
-
require
|
|
1
|
+
require "dragonfly_video/analysers/video_properties"
|
|
2
|
+
require "dragonfly_video/processors/screenshot"
|
|
3
|
+
require "dragonfly_video/processors/remove_audio"
|
|
3
4
|
|
|
4
5
|
class DragonflyVideo::Plugin
|
|
5
6
|
def call(app, _opts = {})
|
|
@@ -14,6 +15,7 @@ class DragonflyVideo::Plugin
|
|
|
14
15
|
end
|
|
15
16
|
|
|
16
17
|
app.add_processor :screenshot, DragonflyVideo::Processors::Screenshot.new
|
|
18
|
+
app.add_processor :remove_audio, DragonflyVideo::Processors::RemoveAudio.new
|
|
17
19
|
end
|
|
18
20
|
end
|
|
19
21
|
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# IMPORTANT: See https://github.com/streamio/streamio-ffmpeg
|
|
2
|
+
# require 'streamio-ffmpeg'
|
|
3
|
+
require_relative "base_processor"
|
|
4
|
+
|
|
5
|
+
module DragonflyVideo
|
|
6
|
+
module Processors
|
|
7
|
+
class RemoveAudio < BaseProcessor
|
|
8
|
+
def call(content, options = {})
|
|
9
|
+
content.shell_update do |old_path, new_path|
|
|
10
|
+
"#{FFMPEG_COMMAND} -i #{old_path} -c copy -an #{new_path}"
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
require 'streamio-ffmpeg'
|
|
2
|
-
|
|
3
1
|
# IMPORTANT: See https://github.com/streamio/streamio-ffmpeg
|
|
2
|
+
# require 'streamio-ffmpeg'
|
|
3
|
+
require_relative "base_processor"
|
|
4
4
|
|
|
5
5
|
module DragonflyVideo
|
|
6
6
|
module Processors
|
|
7
|
-
class Screenshot
|
|
8
|
-
FFMPEG_COMMAND = 'ffmpeg'.freeze
|
|
9
|
-
|
|
7
|
+
class Screenshot < BaseProcessor
|
|
10
8
|
def call(content, options = {})
|
|
11
9
|
format = options.delete(:format) { :jpg }
|
|
12
|
-
|
|
13
10
|
content.shell_update(ext: format) do |old_path, new_path|
|
|
14
11
|
"#{FFMPEG_COMMAND} -y -i #{old_path} -vframes 1 #{new_path}"
|
|
15
12
|
end
|
|
16
|
-
|
|
17
|
-
content.ext = format
|
|
18
|
-
content
|
|
13
|
+
content.ext = format.to_s
|
|
19
14
|
end
|
|
20
15
|
|
|
21
16
|
def update_url(attrs, options = {})
|
data/lib/dragonfly_video.rb
CHANGED
data/samples/sample.mov
ADDED
|
Binary file
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dragonfly_video
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Asger Behncke Jacobsen
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2025-01-25 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: dragonfly
|
|
@@ -42,16 +42,16 @@ dependencies:
|
|
|
42
42
|
name: bundler
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
|
-
- - "
|
|
45
|
+
- - ">="
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
47
|
+
version: '0'
|
|
48
48
|
type: :development
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
|
-
- - "
|
|
52
|
+
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
54
|
+
version: '0'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: rake
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -108,7 +108,7 @@ dependencies:
|
|
|
108
108
|
- - ">="
|
|
109
109
|
- !ruby/object:Gem::Version
|
|
110
110
|
version: '0'
|
|
111
|
-
description:
|
|
111
|
+
description:
|
|
112
112
|
email:
|
|
113
113
|
- asger@8kilo.com
|
|
114
114
|
executables: []
|
|
@@ -129,14 +129,17 @@ files:
|
|
|
129
129
|
- lib/dragonfly_video.rb
|
|
130
130
|
- lib/dragonfly_video/analysers/video_properties.rb
|
|
131
131
|
- lib/dragonfly_video/plugin.rb
|
|
132
|
+
- lib/dragonfly_video/processors/base_processor.rb
|
|
133
|
+
- lib/dragonfly_video/processors/remove_audio.rb
|
|
132
134
|
- lib/dragonfly_video/processors/screenshot.rb
|
|
133
135
|
- lib/dragonfly_video/version.rb
|
|
134
|
-
- samples/
|
|
136
|
+
- samples/sample.mov
|
|
137
|
+
- samples/sample.mp4
|
|
135
138
|
homepage: https://github.com/asgerb/dragonfly_video
|
|
136
139
|
licenses:
|
|
137
140
|
- MIT
|
|
138
141
|
metadata: {}
|
|
139
|
-
post_install_message:
|
|
142
|
+
post_install_message:
|
|
140
143
|
rdoc_options: []
|
|
141
144
|
require_paths:
|
|
142
145
|
- lib
|
|
@@ -151,9 +154,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
151
154
|
- !ruby/object:Gem::Version
|
|
152
155
|
version: '0'
|
|
153
156
|
requirements: []
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
signing_key:
|
|
157
|
+
rubygems_version: 3.5.20
|
|
158
|
+
signing_key:
|
|
157
159
|
specification_version: 4
|
|
158
160
|
summary: Wraps common video-related tasks into Dragonfly analysers and processors.
|
|
159
161
|
test_files: []
|
|
File without changes
|