diff options
| author | Sergey M? <dstftw@gmail.com> | 2015-05-24 23:57:47 +0600 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2015-05-24 23:58:09 +0600 | 
| commit | d41ebe146b693011eb1020ca9cd935e7db892d0b (patch) | |
| tree | 405d80bcb7a89baf2cf3fdb22f8340adc5ddd009 | |
| parent | 4b4e1af059c0922da9770a79a68a471277303f21 (diff) | |
[tenplay] Fix formats and modernize (Closes #5806)
| -rw-r--r-- | youtube_dl/extractor/tenplay.py | 27 | 
1 files changed, 18 insertions, 9 deletions
diff --git a/youtube_dl/extractor/tenplay.py b/youtube_dl/extractor/tenplay.py index 466155ef8..f6694149b 100644 --- a/youtube_dl/extractor/tenplay.py +++ b/youtube_dl/extractor/tenplay.py @@ -2,6 +2,10 @@  from __future__ import unicode_literals  from .common import InfoExtractor +from ..utils import ( +    int_or_none, +    float_or_none, +)  class TenPlayIE(InfoExtractor): @@ -49,18 +53,23 @@ class TenPlayIE(InfoExtractor):              if protocol == 'rtmp':                  url = url.replace('&mp4:', '') +                tbr = int_or_none(rendition.get('encodingRate'), 1000) +              formats.append({ -                'format_id': '_'.join(['rtmp', rendition['videoContainer'].lower(), rendition['videoCodec'].lower()]), -                'width': rendition['frameWidth'], -                'height': rendition['frameHeight'], -                'tbr': rendition['encodingRate'] / 1024, -                'filesize': rendition['size'], +                'format_id': '_'.join( +                    ['rtmp', rendition['videoContainer'].lower(), +                     rendition['videoCodec'].lower(), '%sk' % tbr]), +                'width': int_or_none(rendition['frameWidth']), +                'height': int_or_none(rendition['frameHeight']), +                'tbr': tbr, +                'filesize': int_or_none(rendition['size']),                  'protocol': protocol,                  'ext': ext,                  'vcodec': rendition['videoCodec'].lower(),                  'container': rendition['videoContainer'].lower(),                  'url': url,              }) +        self._sort_formats(formats)          return {              'id': video_id, @@ -74,8 +83,8 @@ class TenPlayIE(InfoExtractor):                  'url': json['thumbnailURL']              }],              'thumbnail': json['videoStillURL'], -            'duration': json['length'] / 1000, -            'timestamp': float(json['creationDate']) / 1000, -            'uploader': json['customFields']['production_company_distributor'] if 'production_company_distributor' in json['customFields'] else 'TENplay', -            'view_count': json['playsTotal'] +            'duration': float_or_none(json.get('length'), 1000), +            'timestamp': float_or_none(json.get('creationDate'), 1000), +            'uploader': json.get('customFields', {}).get('production_company_distributor') or 'TENplay', +            'view_count': int_or_none(json.get('playsTotal')),          }  | 
