aboutsummaryrefslogtreecommitdiffstats
path: root/activestorage/lib/active_storage/analyzer/video_analyzer.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activestorage/lib/active_storage/analyzer/video_analyzer.rb')
-rw-r--r--activestorage/lib/active_storage/analyzer/video_analyzer.rb11
1 files changed, 7 insertions, 4 deletions
diff --git a/activestorage/lib/active_storage/analyzer/video_analyzer.rb b/activestorage/lib/active_storage/analyzer/video_analyzer.rb
index 1c144baa37..aa532da201 100644
--- a/activestorage/lib/active_storage/analyzer/video_analyzer.rb
+++ b/activestorage/lib/active_storage/analyzer/video_analyzer.rb
@@ -16,11 +16,10 @@ module ActiveStorage
# ActiveStorage::VideoAnalyzer.new(blob).metadata
# # => { width: 640, height: 480, duration: 5.0, angle: 0, aspect_ratio: [4, 3] }
#
- # This analyzer requires the {ffmpeg}[https://www.ffmpeg.org] system library, which is not provided by Rails. You must
- # install ffmpeg yourself to use this analyzer.
+ # When a video's angle is 90 or 270 degrees, its width and height are automatically swapped for convenience.
+ #
+ # This analyzer requires the {ffmpeg}[https://www.ffmpeg.org] system library, which is not provided by Rails.
class Analyzer::VideoAnalyzer < Analyzer
- class_attribute :ffprobe_path, default: "ffprobe"
-
def self.accept?(blob)
blob.video?
end
@@ -89,5 +88,9 @@ module ActiveStorage
logger.info "Skipping video analysis because ffmpeg isn't installed"
{}
end
+
+ def ffprobe_path
+ ActiveStorage.paths[:ffprobe] || "ffprobe"
+ end
end
end