mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-11-03 21:37:07 -05:00 
			
		
		
		
	[youtube] Add support for rental videos' previews (Closes #10532)
This commit is contained in:
		@@ -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):
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user