quick_file 1.0.4 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -31,7 +31,7 @@ module QuickFile
31
31
  end
32
32
 
33
33
  def is_video_file?(filename)
34
- filename.downcase.end_with?('.mov', '.3gp', '.wmv', '.m4v', '.mp4')
34
+ filename.downcase.end_with?('.mov', '.3gp', '.wmv', '.m4v', '.mp4', '.flv')
35
35
  end
36
36
 
37
37
  def fog_connection
@@ -73,6 +73,24 @@ module QuickFile
73
73
  outfile
74
74
  end
75
75
 
76
+ def convert_video_to_mp4(file)
77
+ new_file = QuickFile.new_cache_file(".mp4")
78
+ `ffmpeg -i #{file} -vcodec libx264 -b 500k -bt 50k -acodec libfaac -ab 56k -ac 2 -s 480x320 #{new_file}`
79
+ new_file
80
+ end
81
+
82
+ def convert_video_to_flv(file)
83
+ new_file = QuickFile.new_cache_file(".flv")
84
+ `ffmpeg -i #{file} -f flv -ar 11025 -r 24 -s 480x320 #{new_file}`
85
+ new_file
86
+ end
87
+
88
+ def create_video_thumb(file)
89
+ new_file = QuickFile.new_cache_file(".jpg")
90
+ `ffmpeg -i #{file} #{new_file}`
91
+ new_file
92
+ end
93
+
76
94
  def cache_path(cn)
77
95
  File.join(CACHE_DIR, cn)
78
96
  end
@@ -11,6 +11,7 @@ module QuickFile
11
11
  # 3. store
12
12
 
13
13
  STATES = {:loaded => 0, :cached => 1, :processing => 2, :processed => 3, :storing => 4, :stored => 5, :deleted => 6, :error => 7}
14
+ FILE_CATEGORIES = {:none => 0, :image => 1, :video => 2, :file => 3}
14
15
 
15
16
  included do
16
17
  cattr_accessor :processes
@@ -261,15 +262,28 @@ module QuickFile
261
262
  "#{proto}#{QuickFile.host_url[storage_type.to_sym]}#{styles[style_name]["path"]}"
262
263
  end
263
264
 
264
- def delete
265
+ def delete_files
265
266
  # delete uploaded files
266
267
  styles.each do |k,v|
267
268
  QuickFile.fog_directory.files.new(:key => v["path"]).destroy if v["path"]
268
269
  File.delete(v["cache"]) if (v["cache"] && File.exists?(v["cache"]))
269
270
  end
270
271
  self.state = STATES[:deleted]
272
+ save
271
273
  end
272
274
 
275
+ def file_category
276
+ if self.state.nil?
277
+ return FILE_CATEGORIES[:none]
278
+ elsif self.is_image?
279
+ return FILE_CATEGORIES[:image]
280
+ elsif self.is_video?
281
+ return FILE_CATEGORIES[:video]
282
+ else
283
+ return FILE_CATEGORIES[:file]
284
+ end
285
+ end
286
+
273
287
  def url_hash
274
288
  ret = {}
275
289
  processes.keys.each do |style_name|
@@ -1,3 +1,3 @@
1
1
  module QuickFile
2
- VERSION = "1.0.4"
2
+ VERSION = "1.2.0"
3
3
  end
metadata CHANGED
@@ -5,9 +5,9 @@ version: !ruby/object:Gem::Version
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
+ - 2
8
9
  - 0
9
- - 4
10
- version: 1.0.4
10
+ version: 1.2.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Alan Graham
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-05-05 00:00:00 Z
18
+ date: 2012-07-09 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: rmagick