diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-01-13 16:31:08 +0530 |
---|---|---|
committer | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-01-13 16:32:23 +0530 |
commit | 3b603dbdf139efe187f961dbe8b1b24ba16ae194 (patch) | |
tree | 6378839c98d78b6dda8015a85e7034f9b8935668 /yt_dlp/YoutubeDL.py | |
parent | 5df1ac92bd85a02696f61a194d9a3a9e1ca34cfc (diff) | |
download | hypervideo-pre-3b603dbdf139efe187f961dbe8b1b24ba16ae194.tar.lz hypervideo-pre-3b603dbdf139efe187f961dbe8b1b24ba16ae194.tar.xz hypervideo-pre-3b603dbdf139efe187f961dbe8b1b24ba16ae194.zip |
Add option `--concat-playlist`
Closes #1855, related: #382
Diffstat (limited to 'yt_dlp/YoutubeDL.py')
-rw-r--r-- | yt_dlp/YoutubeDL.py | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/yt_dlp/YoutubeDL.py b/yt_dlp/YoutubeDL.py index 71369bc44..dfca76bb0 100644 --- a/yt_dlp/YoutubeDL.py +++ b/yt_dlp/YoutubeDL.py @@ -1596,6 +1596,19 @@ class YoutubeDL(object): def _ensure_dir_exists(self, path): return make_dir(path, self.report_error) + @staticmethod + def _playlist_infodict(ie_result, **kwargs): + return { + **ie_result, + 'playlist': ie_result.get('title') or ie_result.get('id'), + 'playlist_id': ie_result.get('id'), + 'playlist_title': ie_result.get('title'), + 'playlist_uploader': ie_result.get('uploader'), + 'playlist_uploader_id': ie_result.get('uploader_id'), + 'playlist_index': 0, + **kwargs, + } + def __process_playlist(self, ie_result, download): # We process each entry in the playlist playlist = ie_result.get('title') or ie_result.get('id') @@ -1695,17 +1708,7 @@ class YoutubeDL(object): _infojson_written = False if not self.params.get('simulate') and self.params.get('allow_playlist_files', True): - ie_copy = { - 'playlist': playlist, - 'playlist_id': ie_result.get('id'), - 'playlist_title': ie_result.get('title'), - 'playlist_uploader': ie_result.get('uploader'), - 'playlist_uploader_id': ie_result.get('uploader_id'), - 'playlist_index': 0, - 'n_entries': n_entries, - } - ie_copy.update(dict(ie_result)) - + ie_copy = self._playlist_infodict(ie_result, n_entries=n_entries) _infojson_written = self._write_info_json( 'playlist', ie_result, self.prepare_filename(ie_copy, 'pl_infojson')) if _infojson_written is None: |