dragonfly_audio 1.0.2 → 1.0.3
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 +4 -4
- data/CHANGELOG.md +8 -4
- data/lib/dragonfly_audio/version.rb +1 -1
- metadata +10 -30
- data/.gitignore +0 -3
- data/.travis.yml +0 -15
- data/Gemfile +0 -4
- data/Guardfile +0 -8
- data/LICENSE.txt +0 -22
- data/Rakefile +0 -9
- data/dragonfly_audio.gemspec +0 -29
- data/samples/album.jpg +0 -0
- data/samples/sample.mp3 +0 -0
- data/test/dragonfly_audio/analysers/audio_properties_test.rb +0 -18
- data/test/dragonfly_audio/plugin_test.rb +0 -23
- data/test/dragonfly_audio/processors/album_art_test.rb +0 -27
- data/test/dragonfly_audio/processors/tag_test.rb +0 -22
- data/test/test_helper.rb +0 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7358381b3e93d63f3fcab85483e44f0b05bc0fb6557aa1f47f944e2b092a6f11
|
|
4
|
+
data.tar.gz: 9e16191e41135220edfb04acf272ff5ca13380bfe5ae354237e44b14c86014b5
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4974325e79c595e391e37fa6ed59756cb01ee684fae7d0ae7b18741cb584988ba3e754c3d795ab310bd784b2ecfb64e0dfd9ff47950141fced5ffd8d65a95ba8
|
|
7
|
+
data.tar.gz: 1db36d1b74d56dc8bb1453544c28ad3bab6ce80d08a90d69523c958c510f6c00af4ef7a1e372a525fa54bd4722d2461b639263a54037ddc35ce052cb40951f56
|
data/CHANGELOG.md
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
+
## 1.0.3
|
|
4
|
+
|
|
5
|
+
- locked `taglib-ruby` to `~> 0.7.1` – [@asgerb](https://github.com/asgerb).
|
|
6
|
+
|
|
3
7
|
## 1.0.2
|
|
4
8
|
|
|
5
|
-
|
|
9
|
+
- improved `SUPPORTED_FORMATS` matching that ignores case
|
|
6
10
|
|
|
7
11
|
## 1.0.0
|
|
8
12
|
|
|
9
|
-
|
|
10
|
-
|
|
13
|
+
- add `SUPPORTED_FORMATS` and and raise errors when not matching
|
|
14
|
+
- add more thorough tests for supported formats
|
|
11
15
|
|
|
12
16
|
## 0.0.3
|
|
13
17
|
|
|
14
|
-
|
|
18
|
+
- `AlbumArt` processor (courtesy of @asgerb)
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dragonfly_audio
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Tomas Celizna
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2020-06-18 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: dragonfly
|
|
@@ -29,30 +29,30 @@ dependencies:
|
|
|
29
29
|
name: taglib-ruby
|
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
|
31
31
|
requirements:
|
|
32
|
-
- - "
|
|
32
|
+
- - "~>"
|
|
33
33
|
- !ruby/object:Gem::Version
|
|
34
|
-
version:
|
|
34
|
+
version: 0.7.1
|
|
35
35
|
type: :runtime
|
|
36
36
|
prerelease: false
|
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
|
38
38
|
requirements:
|
|
39
|
-
- - "
|
|
39
|
+
- - "~>"
|
|
40
40
|
- !ruby/object:Gem::Version
|
|
41
|
-
version:
|
|
41
|
+
version: 0.7.1
|
|
42
42
|
- !ruby/object:Gem::Dependency
|
|
43
43
|
name: bundler
|
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
|
45
45
|
requirements:
|
|
46
46
|
- - "~>"
|
|
47
47
|
- !ruby/object:Gem::Version
|
|
48
|
-
version: '
|
|
48
|
+
version: '2.0'
|
|
49
49
|
type: :development
|
|
50
50
|
prerelease: false
|
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
|
52
52
|
requirements:
|
|
53
53
|
- - "~>"
|
|
54
54
|
- !ruby/object:Gem::Version
|
|
55
|
-
version: '
|
|
55
|
+
version: '2.0'
|
|
56
56
|
- !ruby/object:Gem::Dependency
|
|
57
57
|
name: rake
|
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -131,28 +131,14 @@ executables: []
|
|
|
131
131
|
extensions: []
|
|
132
132
|
extra_rdoc_files: []
|
|
133
133
|
files:
|
|
134
|
-
- ".gitignore"
|
|
135
|
-
- ".travis.yml"
|
|
136
134
|
- CHANGELOG.md
|
|
137
|
-
- Gemfile
|
|
138
|
-
- Guardfile
|
|
139
|
-
- LICENSE.txt
|
|
140
135
|
- README.md
|
|
141
|
-
- Rakefile
|
|
142
|
-
- dragonfly_audio.gemspec
|
|
143
136
|
- lib/dragonfly_audio.rb
|
|
144
137
|
- lib/dragonfly_audio/analysers/audio_properties.rb
|
|
145
138
|
- lib/dragonfly_audio/plugin.rb
|
|
146
139
|
- lib/dragonfly_audio/processors/album_art.rb
|
|
147
140
|
- lib/dragonfly_audio/processors/tag.rb
|
|
148
141
|
- lib/dragonfly_audio/version.rb
|
|
149
|
-
- samples/album.jpg
|
|
150
|
-
- samples/sample.mp3
|
|
151
|
-
- test/dragonfly_audio/analysers/audio_properties_test.rb
|
|
152
|
-
- test/dragonfly_audio/plugin_test.rb
|
|
153
|
-
- test/dragonfly_audio/processors/album_art_test.rb
|
|
154
|
-
- test/dragonfly_audio/processors/tag_test.rb
|
|
155
|
-
- test/test_helper.rb
|
|
156
142
|
homepage: https://github.com/tomasc/dragonfly_audio
|
|
157
143
|
licenses:
|
|
158
144
|
- MIT
|
|
@@ -172,14 +158,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
172
158
|
- !ruby/object:Gem::Version
|
|
173
159
|
version: '0'
|
|
174
160
|
requirements: []
|
|
175
|
-
|
|
176
|
-
rubygems_version: 2.7.6
|
|
161
|
+
rubygems_version: 3.1.2
|
|
177
162
|
signing_key:
|
|
178
163
|
specification_version: 4
|
|
179
164
|
summary: Wraps common audio-related tasks into Dragonfly analysers and processors.
|
|
180
|
-
test_files:
|
|
181
|
-
- test/dragonfly_audio/analysers/audio_properties_test.rb
|
|
182
|
-
- test/dragonfly_audio/plugin_test.rb
|
|
183
|
-
- test/dragonfly_audio/processors/album_art_test.rb
|
|
184
|
-
- test/dragonfly_audio/processors/tag_test.rb
|
|
185
|
-
- test/test_helper.rb
|
|
165
|
+
test_files: []
|
data/.gitignore
DELETED
data/.travis.yml
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
language: ruby
|
|
2
|
-
cache: bundler
|
|
3
|
-
script: 'bundle exec rake'
|
|
4
|
-
rvm:
|
|
5
|
-
- 2.2.5
|
|
6
|
-
before_install:
|
|
7
|
-
- sudo apt-get update
|
|
8
|
-
- sudo apt-get install -y libtag1-dev
|
|
9
|
-
|
|
10
|
-
notifications:
|
|
11
|
-
email:
|
|
12
|
-
recipients:
|
|
13
|
-
- tomas.celizna@gmail.com
|
|
14
|
-
on_failure: change
|
|
15
|
-
on_success: never
|
data/Gemfile
DELETED
data/Guardfile
DELETED
data/LICENSE.txt
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
Copyright (c) 2014 Tomas Celizna
|
|
2
|
-
|
|
3
|
-
MIT License
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
-
a copy of this software and associated documentation files (the
|
|
7
|
-
"Software"), to deal in the Software without restriction, including
|
|
8
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
-
the following conditions:
|
|
12
|
-
|
|
13
|
-
The above copyright notice and this permission notice shall be
|
|
14
|
-
included in all copies or substantial portions of the Software.
|
|
15
|
-
|
|
16
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
19
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
20
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
21
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
22
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/Rakefile
DELETED
data/dragonfly_audio.gemspec
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
-
require 'dragonfly_audio/version'
|
|
5
|
-
|
|
6
|
-
Gem::Specification.new do |spec|
|
|
7
|
-
spec.name = 'dragonfly_audio'
|
|
8
|
-
spec.version = DragonflyAudio::VERSION
|
|
9
|
-
spec.authors = ['Tomas Celizna', 'Asger Behncke Jacobsen']
|
|
10
|
-
spec.email = ['tomas.celizna@gmail.com', 'asger@8kilo.com']
|
|
11
|
-
spec.summary = 'Wraps common audio-related tasks into Dragonfly analysers and processors.'
|
|
12
|
-
spec.homepage = 'https://github.com/tomasc/dragonfly_audio'
|
|
13
|
-
spec.license = 'MIT'
|
|
14
|
-
|
|
15
|
-
spec.files = `git ls-files -z`.split("\x0")
|
|
16
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
17
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
18
|
-
spec.require_paths = ['lib']
|
|
19
|
-
|
|
20
|
-
spec.add_dependency 'dragonfly', '~> 1.0'
|
|
21
|
-
spec.add_dependency 'taglib-ruby'
|
|
22
|
-
|
|
23
|
-
spec.add_development_dependency 'bundler', '~> 1.6'
|
|
24
|
-
spec.add_development_dependency 'rake', '~> 10.4'
|
|
25
|
-
spec.add_development_dependency 'guard'
|
|
26
|
-
spec.add_development_dependency 'guard-minitest'
|
|
27
|
-
spec.add_development_dependency 'minitest'
|
|
28
|
-
spec.add_development_dependency 'minitest-reporters'
|
|
29
|
-
end
|
data/samples/album.jpg
DELETED
|
Binary file
|
data/samples/sample.mp3
DELETED
|
Binary file
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
describe DragonflyAudio::Analysers::AudioProperties do
|
|
4
|
-
let(:app) { test_app.configure_with(:audio) }
|
|
5
|
-
let(:content) { app.fetch_file(SAMPLES_DIR.join('sample.mp3')) }
|
|
6
|
-
|
|
7
|
-
it { content.audio_properties['album'].must_equal 'Album XYZ' }
|
|
8
|
-
it { content.audio_properties['artist'].must_equal 'Artist' }
|
|
9
|
-
it { content.audio_properties['bitrate'].must_equal 192 }
|
|
10
|
-
it { content.audio_properties['channels'].must_equal 2 }
|
|
11
|
-
it { content.audio_properties['comment'].must_equal ' Comment ' }
|
|
12
|
-
it { content.audio_properties['genre'].must_equal 'Dance' }
|
|
13
|
-
it { content.audio_properties['length'].must_be :>, 150 }
|
|
14
|
-
it { content.audio_properties['sample_rate'].must_equal 44_100 }
|
|
15
|
-
it { content.audio_properties['title'].must_equal 'SongTitle' }
|
|
16
|
-
it { content.audio_properties['track'].must_equal 0 }
|
|
17
|
-
it { content.audio_properties['year'].must_equal 0 }
|
|
18
|
-
end
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
describe DragonflyAudio::Plugin do
|
|
4
|
-
let(:app) { test_app.configure_with(:audio) }
|
|
5
|
-
let(:content) { app.fetch_file(SAMPLES_DIR.join('sample.mp3')) }
|
|
6
|
-
|
|
7
|
-
describe 'analysers' do
|
|
8
|
-
it { content.must_respond_to :audio_properties }
|
|
9
|
-
|
|
10
|
-
DragonflyAudio::Analysers::AudioProperties::TAGS.each do |analyser|
|
|
11
|
-
it { content.must_respond_to analyser }
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
DragonflyAudio::Analysers::AudioProperties::AUDIO_PROPS.each do |analyser|
|
|
15
|
-
it { content.must_respond_to analyser }
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
describe 'processors' do
|
|
20
|
-
it { content.must_respond_to :album_art }
|
|
21
|
-
it { content.must_respond_to :tag }
|
|
22
|
-
end
|
|
23
|
-
end
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
describe DragonflyAudio::Processors::AlbumArt do
|
|
4
|
-
let(:app) { test_app.configure_with(:audio) }
|
|
5
|
-
let(:content) { Dragonfly::Content.new(app, SAMPLES_DIR.join('sample.mp3')) }
|
|
6
|
-
let(:image) { Dragonfly::Content.new(app, SAMPLES_DIR.join('album.jpg')) }
|
|
7
|
-
let(:processor) { DragonflyAudio::Processors::AlbumArt.new }
|
|
8
|
-
|
|
9
|
-
let(:artist) { 'Elvis Presley' }
|
|
10
|
-
let(:title) { 'Hound Dawg' }
|
|
11
|
-
|
|
12
|
-
before { processor.call(content, image.file.path) }
|
|
13
|
-
|
|
14
|
-
describe 'properties' do
|
|
15
|
-
let(:picture) do
|
|
16
|
-
TagLib::MPEG::File.open(content.file.path) do |file|
|
|
17
|
-
file.id3v2_tag.frame_list('APIC').first.picture
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
it { picture.must_equal image.data }
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
describe 'tempfile has extension' do
|
|
25
|
-
it { content.tempfile.path.must_match /\.mp3\z/i }
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
describe DragonflyAudio::Processors::Tag do
|
|
4
|
-
let(:app) { test_app.configure_with(:audio) }
|
|
5
|
-
let(:content) { Dragonfly::Content.new(app, SAMPLES_DIR.join('sample.mp3')) }
|
|
6
|
-
let(:analyser) { DragonflyAudio::Analysers::AudioProperties.new }
|
|
7
|
-
let(:processor) { DragonflyAudio::Processors::Tag.new }
|
|
8
|
-
|
|
9
|
-
let(:artist) { 'Elvis Presley' }
|
|
10
|
-
let(:title) { 'Hound Dawg' }
|
|
11
|
-
|
|
12
|
-
before { processor.call(content, artist: artist, title: title) }
|
|
13
|
-
|
|
14
|
-
describe 'properties' do
|
|
15
|
-
it { analyser.call(content)['artist'].must_equal artist }
|
|
16
|
-
it { analyser.call(content)['title'].must_equal title }
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
describe 'tempfile has extension' do
|
|
20
|
-
it { content.tempfile.path.must_match /\.mp3\z/i }
|
|
21
|
-
end
|
|
22
|
-
end
|
data/test/test_helper.rb
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
require 'bundler/setup'
|
|
2
|
-
|
|
3
|
-
require 'minitest'
|
|
4
|
-
require 'minitest/autorun'
|
|
5
|
-
require 'minitest/reporters'
|
|
6
|
-
require 'minitest/spec'
|
|
7
|
-
|
|
8
|
-
require 'dragonfly'
|
|
9
|
-
require 'dragonfly_audio'
|
|
10
|
-
|
|
11
|
-
SAMPLES_DIR = Pathname.new(File.expand_path('../../samples', __FILE__))
|
|
12
|
-
|
|
13
|
-
Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new
|
|
14
|
-
|
|
15
|
-
def test_app(name = nil)
|
|
16
|
-
Dragonfly::App.instance(name).tap do |app|
|
|
17
|
-
app.datastore = Dragonfly::MemoryDataStore.new
|
|
18
|
-
app.secret = 'test secret'
|
|
19
|
-
end
|
|
20
|
-
end
|