code: def download_video(self):
          
          rvideo_path = self.presentation.metadata['video_path']
  
          if self.presentation.client.cache:
              video_path = self.presentation.client.cache.get_path(rvideo_path)
              if not video_path:
                  video_path = self.download_video_no_cache()
                  self.presentation.client.cache.put_path(rvideo_path, video_path)
          else:
              video_path = self.download_video_no_cache()
  
          return video_path
docs: Downloads the video.
  
          If self.client.cache_enabled is True, then the disk cache is used.
  
          Returns:
              The path where the video has been saved.
  
          Raises:
              DownloadError: If the video cannot be downloaded.