|
@@ -844,6 +844,24 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
|
|
# YouTube Red paid video (https://github.com/rg3/youtube-dl/issues/10059)
|
|
|
'url': 'https://www.youtube.com/watch?v=i1Ko8UG-Tdo',
|
|
|
'only_matching': True,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ # Rental video preview
|
|
|
+ 'url': 'https://www.youtube.com/watch?v=yYr8q0y5Jfg',
|
|
|
+ 'info_dict': {
|
|
|
+ 'id': 'uGpuVWrhIzE',
|
|
|
+ 'ext': 'mp4',
|
|
|
+ 'title': 'Piku - Trailer',
|
|
|
+ 'description': 'md5:c36bd60c3fd6f1954086c083c72092eb',
|
|
|
+ 'upload_date': '20150811',
|
|
|
+ 'uploader': 'FlixMatrix',
|
|
|
+ 'uploader_id': 'FlixMatrixKaravan',
|
|
|
+ 'uploader_url': 're:https?://(?:www\.)?youtube\.com/user/FlixMatrixKaravan',
|
|
|
+ 'license': 'Standard YouTube License',
|
|
|
+ },
|
|
|
+ 'params': {
|
|
|
+ 'skip_download': True,
|
|
|
+ },
|
|
|
}
|
|
|
]
|
|
|
|
|
@@ -1254,6 +1272,12 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
|
|
# Convert to the same format returned by compat_parse_qs
|
|
|
video_info = dict((k, [v]) for k, v in args.items())
|
|
|
add_dash_mpd(video_info)
|
|
|
+ # Rental video is not rented but preview is available (e.g.
|
|
|
+ # https://www.youtube.com/watch?v=yYr8q0y5Jfg,
|
|
|
+ # https://github.com/rg3/youtube-dl/issues/10532)
|
|
|
+ if not video_info and args.get('ypc_vid'):
|
|
|
+ return self.url_result(
|
|
|
+ args['ypc_vid'], YoutubeIE.ie_key(), video_id=args['ypc_vid'])
|
|
|
if args.get('livestream') == '1' or args.get('live_playback') == 1:
|
|
|
is_live = True
|
|
|
if not video_info or self._downloader.params.get('youtube_include_dash_manifest', True):
|