timeout = (int) config('video.timeout', 1800); } public function handle(VideoTranscoder $transcoder): void { $video = Video::query()->find($this->videoId); if (! $video || blank($video->upload_path)) { return; } $video->markAsProcessing(); try { $video->markAsProcessed($transcoder->transcode($video)); } catch (Throwable $exception) { report($exception); $video->markAsFailed(Str::limit(trim($exception->getMessage()), 500)); } } }