класс ActiveStorage::Analyzer::VideoAnalyzer
Извлекает следующую информацию из видео-объекта:
-
Ширина (пикселей)
-
Высота (пикселей)
-
Продолжительность (секунды)
-
Угол (градусы)
-
Соотношение сторон экрана
Пример:
ActiveStorage::VideoAnalyzer.new(blob).metadata
# => { width: 640.0, height: 480.0, duration: 5.0, angle: 0, display_aspect_ratio: [4, 3] }
Когда угол видео составляет 90 или 270 градусов, для удобства ширина и высота автоматически меняются местами.
Для работы этого анализатора требуется системная библиотека ffmpeg, которая не предоставляется Rails.
Публичные методы класса
# File activestorage/lib/active_storage/analyzer/video_analyzer.rb, line 23 def self.accept?(blob) blob.video? end
Публичные методы экземпляра
# File activestorage/lib/active_storage/analyzer/video_analyzer.rb, line 27
def metadata
{ width: width, height: height, duration: duration, angle: angle, display_aspect_ratio: display_aspect_ratio }.compact
end
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.