diff options
| author | Sergey M․ <dstftw@gmail.com> | 2016-05-15 03:34:35 +0600 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2016-05-15 03:34:35 +0600 | 
| commit | ed56f260399728f1975dd30f4c8ee110cf106d84 (patch) | |
| tree | a2748006c9fac2f5002aadfbc0f7a440f8d9d87a | |
| parent | 6f41b2bcf16899f8c3f0ea705b2914cf1ae668a3 (diff) | |
[extractor/common] Improve name extraction for m3u8 formats
| -rw-r--r-- | youtube_dl/extractor/common.py | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/youtube_dl/extractor/common.py b/youtube_dl/extractor/common.py index 0843d89af..8a8c07226 100644 --- a/youtube_dl/extractor/common.py +++ b/youtube_dl/extractor/common.py @@ -1139,11 +1139,14 @@ class InfoExtractor(object):                  if m3u8_id:                      format_id.append(m3u8_id)                  last_media_name = last_media.get('NAME') if last_media and last_media.get('TYPE') != 'SUBTITLES' else None +                # Despite specification does not mention NAME attribute for +                # EXT-X-STREAM-INF it still sometimes may be present +                stream_name = last_info.get('NAME') or last_media_name                  # Bandwidth of live streams may differ over time thus making                  # format_id unpredictable. So it's better to keep provided                  # format_id intact.                  if not live: -                    format_id.append(last_media_name if last_media_name else '%d' % (tbr if tbr else len(formats))) +                    format_id.append(stream_name if stream_name else '%d' % (tbr if tbr else len(formats)))                  f = {                      'format_id': '-'.join(format_id),                      'url': format_url(line.strip()),  | 
