18 lines
490 B
Ruby
18 lines
490 B
Ruby
class AnalyzeAudioJob < ApplicationJob
|
|
queue_as :default
|
|
|
|
def perform(video)
|
|
response = BrayniacAI::AudioRecognition.create! AudioAnalysis.new(video)
|
|
|
|
video.update!({
|
|
audio_analysis_uid: response.job_id,
|
|
audio_analysis_started_at: Time.zone.now,
|
|
audio_analysis_status: :pending,
|
|
})
|
|
|
|
rescue StandardError => e
|
|
video.audio_analysis_failure!
|
|
Rails.logger.error("Failed to perform audio analysis for video(##{video.id})\n" + e.message)
|
|
end
|
|
end
|