mediafile 0.1.4 → 0.1.5
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/lib/mediafile/mediafile.rb +34 -1
- data/lib/mediafile/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2f05a893a431ccf6a01d7ce805d638dccf833ee6
|
4
|
+
data.tar.gz: f977d616d977d2d6da6f13bada1172ef619c827f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9958d8b4ca7fb6bc581eb3c81b61695e6721c9ffcd6be9b99645dc16c702b9882b83d3285d8f5ee51812bd55ffa5e34080fb8659931507cda87bf1653018ecc4
|
7
|
+
data.tar.gz: 6dea2e30560c492ed3b79d17c7badd07736a7ed0a88c3a36f0f65c3055d70158b49f1ba307e00a4fee2ae2b38d3d92dbadf40f26f7fb3398f3288eb9c6a5d85e
|
data/lib/mediafile/mediafile.rb
CHANGED
@@ -40,7 +40,7 @@ module MediaFile; class MediaFile
|
|
40
40
|
begin
|
41
41
|
transcode_table.has_key?(@type) ?
|
42
42
|
transcode(transcode_table, temp_dest) :
|
43
|
-
|
43
|
+
really_copy(@source, temp_dest)
|
44
44
|
FileUtils.mv temp_dest, destination
|
45
45
|
rescue => e
|
46
46
|
FileUtils.rm temp_dest if File.exists? temp_dest
|
@@ -72,6 +72,11 @@ module MediaFile; class MediaFile
|
|
72
72
|
|
73
73
|
private
|
74
74
|
|
75
|
+
def really_copy(src,dest)
|
76
|
+
FileUtils.cp(src, dest)
|
77
|
+
set_album_artist(dest)
|
78
|
+
end
|
79
|
+
|
75
80
|
def set_decoder()
|
76
81
|
case @type
|
77
82
|
when :flac
|
@@ -241,6 +246,34 @@ module MediaFile; class MediaFile
|
|
241
246
|
) << ".#{transcode_table[@type] || @type}"
|
242
247
|
end
|
243
248
|
|
249
|
+
def set_album_artist(file)
|
250
|
+
type = file[/(\w+)$/].downcase.to_sym
|
251
|
+
return unless @force_album_artist
|
252
|
+
case type
|
253
|
+
when :m4a
|
254
|
+
TagLib::MP4::File.open(file) do |f|
|
255
|
+
f.tag.item_list_map.insert("aART", TagLib::MP4::Item.from_string_list([@force_album_artist]))
|
256
|
+
f.save
|
257
|
+
end
|
258
|
+
when :flac
|
259
|
+
TagLib::FLAC::File.open(file) do |f|
|
260
|
+
tag = f.xiph_comment
|
261
|
+
['ALBUMARTIST', 'ALBUM ARTIST', 'ALBUM_ARTIST'].select do |t|
|
262
|
+
tag.add_field(t, @force_album_artist)
|
263
|
+
end
|
264
|
+
f.save
|
265
|
+
end
|
266
|
+
when :mp3
|
267
|
+
TagLib::MPEG::File.open(file) do |f|
|
268
|
+
tag = f.id3v2_tag
|
269
|
+
frame = TagLib::ID3v2::TextIdentificationFrame.new("TPE2", TagLib::String::UTF8)
|
270
|
+
frame.text = @force_album_artist
|
271
|
+
tag.add_frame(frame)
|
272
|
+
f.save
|
273
|
+
end
|
274
|
+
end
|
275
|
+
end
|
276
|
+
|
244
277
|
def read_tags
|
245
278
|
return if @red
|
246
279
|
@album = @artist= @title = @genre = @year = nil
|
data/lib/mediafile/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mediafile
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeff Harvey-Smith
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-07-
|
11
|
+
date: 2016-07-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: taglib-ruby
|