Вы должны вызвать register_on_progress_callback(func)
на своем объекте YouTube, где func
- это функция, которая принимает stream
, chunk
, file_handle
и bytes_remaining
в качестве параметров. Для вашего кода это будет:
def on_progress(stream, chunk, file_handle, bytes_remaining):
total_size = stream.filesize
bytes_downloaded = total_size - bytes_remaining
percentage_of_completion = bytes_downloaded / total_size * 100
yt.register_on_progress_callback(on_progress)
Затем вы должны использовать переменную percentage_of_completion
, чтобы нарисовать индикатор выполнения, но это немного выходит за рамки этого вопроса. Помните, что on_progress
функция будет вызываться каждый раз при загрузке фрагмента. Надеюсь, теперь вы сможете делать то, что хотели.