code: def update_video_image(edx_video_id, course_id, image_data, file_name):
      
      try:
          course_video = CourseVideo.objects.select_related('video').get(
              course_id=course_id, video__edx_video_id=edx_video_id
          )
      except ObjectDoesNotExist:
          error_message = u'VAL: CourseVideo not found for edx_video_id: {0} and course_id: {1}'.format(
              edx_video_id,
              course_id
          )
          raise ValVideoNotFoundError(error_message)
  
      video_image, _ = VideoImage.create_or_update(course_video, file_name, image_data)
      return video_image.image_url()
docs: Update video image for an existing video.
  
      NOTE: If `image_data` is None then `file_name` value will be used as it is, otherwise
      a new file name is constructed based on uuid and extension from `file_name` value.
      `image_data` will be None in case of course re-run and export.
  
      Arguments:
          image_data (InMemoryUploadedFile): Image data to be saved for a course video.
  
      Returns:
          course video image url
  
      Raises:
          Raises ValVideoNotFoundError if the CourseVideo cannot be retrieved.