|
@ -900,6 +900,16 @@ class InfoExtractor(object): |
|
|
item='%s video format' % f.get('format_id') if f.get('format_id') else 'video'), |
|
|
item='%s video format' % f.get('format_id') if f.get('format_id') else 'video'), |
|
|
formats) |
|
|
formats) |
|
|
|
|
|
|
|
|
|
|
|
@staticmethod |
|
|
|
|
|
def _remove_duplicate_formats(formats): |
|
|
|
|
|
format_urls = set() |
|
|
|
|
|
unique_formats = [] |
|
|
|
|
|
for f in formats: |
|
|
|
|
|
if f['url'] not in format_urls: |
|
|
|
|
|
format_urls.add(f['url']) |
|
|
|
|
|
unique_formats.append(f) |
|
|
|
|
|
formats[:] = unique_formats |
|
|
|
|
|
|
|
|
def _is_valid_url(self, url, video_id, item='video'): |
|
|
def _is_valid_url(self, url, video_id, item='video'): |
|
|
url = self._proto_relative_url(url, scheme='http:') |
|
|
url = self._proto_relative_url(url, scheme='http:') |
|
|
# For now assume non HTTP(S) URLs always valid |
|
|
# For now assume non HTTP(S) URLs always valid |
|
|