diff --git a/livestreams.py b/livestreams.py
index 346472021d5417783f6766484392fa3498d0ddc0..1b49b782c116c48d92d3362492c14acba1943683 100644
--- a/livestreams.py
+++ b/livestreams.py
@@ -207,6 +207,10 @@ def schedule_livestream(lecture_id):
 	job_id = schedule_job('complex_live_transcode', data, priority=10)
 	return job_id
 
+@job_handler('complex_live_transcode', state='failed')
+def restart_failed_complex_live_transcode(id, type, data, state, status):
+	restart_job(id)
+
 @app.route('/internal/streaming/start', methods=['POST'])
 @mod_required
 def start_stream():