Skip to content

Commit

Permalink
[npr] Add support for streams (closes #24042)
Browse files Browse the repository at this point in the history
  • Loading branch information
dstftw authored and bbepis committed Feb 27, 2020
1 parent fdf5db1 commit 1a5597a
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions youtube_dl/extractor/npr.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from ..utils import (
int_or_none,
qualities,
url_or_none,
)


Expand Down Expand Up @@ -48,6 +49,10 @@ class NprIE(InfoExtractor):
},
}],
'expected_warnings': ['Failed to download m3u8 information'],
}, {
# multimedia, no formats, stream
'url': 'https://www.npr.org/2020/02/14/805476846/laura-stevenson-tiny-desk-concert',
'only_matching': True,
}]

def _real_extract(self, url):
Expand Down Expand Up @@ -95,6 +100,17 @@ def _real_extract(self, url):
'format_id': format_id,
'quality': quality(format_id),
})
for stream_id, stream_entry in media.get('stream', {}).items():
if not isinstance(stream_entry, dict):
continue
if stream_id != 'hlsUrl':
continue
stream_url = url_or_none(stream_entry.get('$text'))
if not stream_url:
continue
formats.extend(self._extract_m3u8_formats(
stream_url, stream_id, 'mp4', 'm3u8_native',
m3u8_id='hls', fatal=False))
self._sort_formats(formats)

entries.append({
Expand Down

0 comments on commit 1a5597a

Please sign in to comment.