ActiveStorage::Previewer::VideoPreviewer (original) (raw)

Methods

A

F

P

Class Public methods

Source: show | on GitHub

def accept?(blob) blob.video? && ffmpeg_exists? end

Source: show | on GitHub

def ffmpeg_exists? return @ffmpeg_exists unless @ffmpeg_exists.nil?

@ffmpeg_exists = system(ffmpeg_path, "-version", out: File::NULL, err: File::NULL) end

Source: show | on GitHub

def ffmpeg_path ActiveStorage.paths[:ffmpeg] || "ffmpeg" end

Instance Public methods

Source: show | on GitHub

def preview(**options) download_blob_to_tempfile do |input| draw_relevant_frame_from input do |output| yield io: output, filename: "#{blob.filename.base}.jpg", content_type: "image/jpeg", **options end end end