46 lines
851 B
Ruby
46 lines
851 B
Ruby
class VideoAnalysis
|
|
mattr_accessor :use_overlay_video, default: true
|
|
|
|
def initialize(video, reanalysis)
|
|
@video = video
|
|
@reanalysis = reanalysis
|
|
end
|
|
|
|
# Use the custom hash to generate JSON format
|
|
def as_json(*)
|
|
to_hash
|
|
end
|
|
|
|
def to_hash
|
|
{
|
|
bucket_name: aws_bucket_name,
|
|
collection_id: video.project.headshot_collection_uid,
|
|
video_object_name: video.file.key,
|
|
reanalysis: reanalysis,
|
|
}
|
|
end
|
|
|
|
def overlay_video_url
|
|
return if !use_overlay_video
|
|
return if response.overlay_video_url == "None"
|
|
|
|
response.overlay_video_url
|
|
end
|
|
|
|
def first_appearances
|
|
response.first_appearances
|
|
end
|
|
|
|
private
|
|
|
|
attr_reader :video, :reanalysis
|
|
|
|
def aws_bucket_name
|
|
ENV["AWS_BUCKET"]
|
|
end
|
|
|
|
def response
|
|
@response ||= BrayniacAI::FacialRecognition.find(video.analysis_uid)
|
|
end
|
|
end
|