class ActiveStorage::Analyzer::QiniuVideoAnalyzer
Public Instance Methods
metadata()
click to toggle source
# File lib/active_storage/analyzer/qiniu_video_analyzer.rb, line 5 def metadata { width: width, height: height, duration: duration, aspect_ratio: aspect_ratio }.compact rescue {} end
Private Instance Methods
aspect_ratio()
click to toggle source
# File lib/active_storage/analyzer/qiniu_video_analyzer.rb, line 30 def aspect_ratio video_stream['display_aspect_ratio'] end
duration()
click to toggle source
# File lib/active_storage/analyzer/qiniu_video_analyzer.rb, line 26 def duration video_stream['duration'] end
height()
click to toggle source
# File lib/active_storage/analyzer/qiniu_video_analyzer.rb, line 22 def height video_stream['height'] end
streams()
click to toggle source
# File lib/active_storage/analyzer/qiniu_video_analyzer.rb, line 34 def streams @streams ||= begin code, result, res = Qiniu::HTTP.api_get(blob.service.url(blob.key, fop: 'avinfo')) result['streams'] end end
video_stream()
click to toggle source
# File lib/active_storage/analyzer/qiniu_video_analyzer.rb, line 41 def video_stream @video_stream ||= streams.detect { |stream| stream['codec_type'] == 'video' } || {} end
width()
click to toggle source
# File lib/active_storage/analyzer/qiniu_video_analyzer.rb, line 18 def width video_stream['width'] end