diff options
author | The Hatsune Daishi <nao20010128@gmail.com> | 2021-12-20 15:06:46 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-20 11:36:46 +0530 |
commit | adbc4ec4bbfbe57842049cf9194384480f534859 (patch) | |
tree | bb51014a17737fc2c07f14f47308fc9ab74c482e /yt_dlp/postprocessor/common.py | |
parent | c031b0414c2f2523bdf49e2085469679921f846c (diff) | |
download | hypervideo-pre-adbc4ec4bbfbe57842049cf9194384480f534859.tar.lz hypervideo-pre-adbc4ec4bbfbe57842049cf9194384480f534859.tar.xz hypervideo-pre-adbc4ec4bbfbe57842049cf9194384480f534859.zip |
[dash,youtube] Download live from start to end (#888)
* Add option `--live-from-start` to enable downloading live videos from start
* Add key `is_from_start` in formats to identify formats (of live videos) that downloads from start
* [dash] Create protocol `http_dash_segments_generator` that allows a function to be passed instead of fragments
* [fragment] Allow multiple live dash formats to download simultaneously
* [youtube] Implement fragment re-fetching for the live dash formats
* [youtube] Re-extract dash manifest every 5 hours (manifest expires in 6hrs)
* [postprocessor/ffmpeg] Add `FFmpegFixupDuplicateMoovPP` to fixup duplicated moov atoms
Known issue: Ctrl+C doesn't work on Windows when downloading multiple formats
Closes #1521
Authored by: nao20010128nao, pukkandan
Diffstat (limited to 'yt_dlp/postprocessor/common.py')
-rw-r--r-- | yt_dlp/postprocessor/common.py | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/yt_dlp/postprocessor/common.py b/yt_dlp/postprocessor/common.py index ab9eb6acf..f2467c542 100644 --- a/yt_dlp/postprocessor/common.py +++ b/yt_dlp/postprocessor/common.py @@ -1,6 +1,5 @@ from __future__ import unicode_literals -import copy import functools import os @@ -18,7 +17,7 @@ class PostProcessorMetaClass(type): def run_wrapper(func): @functools.wraps(func) def run(self, info, *args, **kwargs): - info_copy = copy.deepcopy(self._copy_infodict(info)) + info_copy = self._copy_infodict(info) self._hook_progress({'status': 'started'}, info_copy) ret = func(self, info, *args, **kwargs) if ret is not None: |