version Core * [cda] Fix extraction (closes #13935) * [utils] Fix unescapeHTML for misformed string like "&a"" (#13935) Extractors + [liveleak] Support another liveleak embedding pattern (#13336) version 2017.08.18 Core * [YoutubeDL] Sanitize byte string format URLs (#13951) + [extractor/common] Add support for float durations in _parse_mpd_formats (#13919) Extractors * [arte] Detect unavailable videos (#13945) * [generic] Convert redirect URLs to unicode strings (#13951) * [udemy] Fix paid course detection (#13943) * [pluralsight] Use RPC API for course extraction (#13937) + [clippit] Add support for clippituser.tv + [qqmusic] Support new URL schemes (#13805) * [periscope] Renew HLS extraction (#13917) * [mixcloud] Extract decrypt key version 2017.08.13 Core * [YoutubeDL] Make sure format id is not empty * [extractor/common] Make _family_friendly_search optional * [extractor/common] Respect source's type attribute for HTML5 media (#13892) Extractors * [pornhub:playlistbase] Skip videos from drop-down menu (#12819, #13902) + [fourtube] Add support pornerbros.com (#6022) + [fourtube] Add support porntube.com (#7859, #13901) + [fourtube] Add support fux.com * [limelight] Improve embeds detection (#13895) + [reddit] Add support for v.redd.it and reddit.com (#13847) * [aparat] Extract all formats (#13887) * [mixcloud] Fix play info decryption (#13885) + [generic] Add support for vzaar embeds (#13876) version 2017.08.09 Core * [utils] Skip missing params in cli_bool_option (#13865) Extractors * [xxxymovies] Fix title extraction (#13868) + [nick] Add support for nick.com.pl (#13860) * [mixcloud] Fix play info decryption (#13867) * [20min] Fix embeds extraction (#13852) * [dplayit] Fix extraction (#13851) + [niconico] Support videos with multiple formats (#13522) + [niconico] Support HTML5-only videos (#13806) version 2017.08.06 Core * Use relative paths for DASH fragments (#12990) Extractors * [pluralsight] Fix format selection - [mpora] Remove extractor (#13826) + [voot] Add support for voot.com (#10255, #11644, #11814, #12350, #13218) * [vlive:channel] Limit number of videos per page to 100 (#13830) * [podomatic] Extend URL regular expression (#13827) * [cinchcast] Extend URL regular expression * [yandexdisk] Relax URL regular expression (#13824) * [vidme] Extract DASH and HLS formats - [teamfour] Remove extractor (#13782) * [pornhd] Fix extraction (#13783) * [udemy] Fix subtitles extraction (#13812) * [mlb] Extend URL regular expression (#13740, #13773) + [pbs] Add support for new URL schema (#13801) * [nrktv] Update API host (#13796) version 2017.07.30.1 Core * [downloader/hls] Use redirect URL as manifest base (#13755) * [options] Correctly hide login info from debug outputs (#13696) Extractors + [watchbox] Add support for watchbox.de (#13739) - [clipfish] Remove extractor + [youjizz] Fix extraction (#13744) + [generic] Add support for another ooyala embed pattern (#13727) + [ard] Add support for lives (#13771) * [soundcloud] Update client id + [soundcloud:trackstation] Add support for track stations (#13733) * [svtplay] Use geo verification proxy for API request * [svtplay] Update API URL (#13767) + [yandexdisk] Add support for yadi.sk (#13755) + [megaphone] Add support for megaphone.fm * [amcnetworks] Make rating optional (#12453) * [cloudy] Fix extraction (#13737) + [nickru] Add support for nickelodeon.ru * [mtv] Improve thumbnal extraction * [nick] Automate geo-restriction bypass (#13711) * [niconico] Improve error reporting (#13696) version 2017.07.23 Core * [YoutubeDL] Improve default format specification (#13704) * [YoutubeDL] Do not override id, extractor and extractor_key for url_transparent entities * [extractor/common] Fix playlist_from_matches Extractors * [itv] Fix production id extraction (#13671, #13703) * [vidio] Make duration non fatal and fix typo * [mtv] Skip missing video parts (#13690) * [sportbox:embed] Fix extraction + [npo] Add support for npo3.nl URLs (#13695) * [dramafever] Remove video id from title (#13699) + [egghead:lesson] Add support for lessons (#6635) * [funnyordie] Extract more metadata (#13677) * [youku:show] Fix playlist extraction (#13248) + [dispeak] Recognize sevt subdomain (#13276) * [adn] Improve error reporting (#13663) * [crunchyroll] Relax series and season regex (#13659) + [spiegel:article] Add support for nexx iframe embeds (#13029) + [nexx:embed] Add support for iframe embeds * [nexx] Improve JS embed extraction + [pearvideo] Add support for pearvideo.com (#13031) version 2017.07.15 Core * [YoutubeDL] Don't expand environment variables in meta fields (#13637) Extractors * [spiegeltv] Delegate extraction to nexx extractor (#13159) + [nexx] Add support for nexx.cloud (#10807, #13465) * [generic] Fix rutube embeds extraction (#13641) * [karrierevideos] Fix title extraction (#13641) * [youtube] Don't capture YouTube Red ad for creator meta field (#13621) * [slideshare] Fix extraction (#13617) + [5tv] Add another video URL pattern (#13354, #13606) * [drtv] Make HLS and HDS extraction non fatal * [ted] Fix subtitles extraction (#13628, #13629) * [vine] Make sure the title won't be empty + [twitter] Support HLS streams in vmap URLs + [periscope] Support pscp.tv URLs in embedded frames * [twitter] Extract mp4 urls via mobile API (#12726) * [niconico] Fix authentication error handling (#12486) * [giantbomb] Extract m3u8 formats (#13626) + [vlive:playlist] Add support for playlists (#13613) version 2017.07.09 Core + [extractor/common] Add support for AMP tags in _parse_html5_media_entries + [utils] Support attributes with no values in get_elements_by_attribute Extractors + [dailymail] Add support for embeds + [joj] Add support for joj.sk (#13268) * [abc.net.au:iview] Extract more formats (#13492, #13489) * [egghead:course] Fix extraction (#6635, #13370) + [cjsw] Add support for cjsw.com (#13525) + [eagleplatform] Add support for referrer protected videos (#13557) + [eagleplatform] Add support for another embed pattern (#13557) * [veoh] Extend URL regular expression (#13601) * [npo:live] Fix live stream id extraction (#13568, #13605) * [googledrive] Fix height extraction (#13603) + [dailymotion] Add support for new layout (#13580) - [yam] Remove extractor * [xhamster] Extract all formats and fix duration extraction (#13593) + [xhamster] Add support for new URL schema (#13593) * [espn] Extend URL regular expression (#13244, #13549) * [kaltura] Fix typo in subtitles extraction (#13569) * [vier] Adapt extraction to redesign (#13575) version 2017.07.02 Core * [extractor/common] Improve _json_ld Extractors + [thisoldhouse] Add more fallbacks for video id * [thisoldhouse] Fix video id extraction (#13540, #13541) * [xfileshare] Extend format regular expression (#13536) * [ted] Fix extraction (#13535) + [tastytrade] Add support for tastytrade.com (#13521) * [dplayit] Relax video id regular expression (#13524) + [generic] Extract more generic metadata (#13527) + [bbccouk] Capture and output error message (#13501, #13518) * [cbsnews] Relax video info regular expression (#13284, #13503) + [facebook] Add support for plugin video embeds and multiple embeds (#13493) * [soundcloud] Switch to https for API requests (#13502) * [pandatv] Switch to https for API and download URLs + [pandatv] Add support for https URLs (#13491) + [niconico] Support sp subdomain (#13494) version 2017.06.25 Core + [adobepass] Add support for DIRECTV NOW (mso ATTOTT) (#13472) * [YoutubeDL] Skip malformed formats for better extraction robustness Extractors + [wsj] Add support for barrons.com (#13470) + [ign] Add another video id pattern (#13328) + [raiplay:live] Add support for live streams (#13414) + [redbulltv] Add support for live videos and segments (#13486) + [onetpl] Add support for videos embedded via pulsembed (#13482) * [ooyala] Make more robust * [ooyala] Skip empty format URLs (#13471, #13476) * [hgtv.com:show] Fix typo version 2017.06.23 Core * [adobepass] Fix extraction on older python 2.6 Extractors * [youtube] Adapt to new automatic captions rendition (#13467) * [hgtv.com:show] Relax video config regular expression (#13279, #13461) * [drtuber] Fix formats extraction (#12058) * [youporn] Fix upload date extraction * [youporn] Improve formats extraction * [youporn] Fix title extraction (#13456) * [googledrive] Fix formats sorting (#13443) * [watchindianporn] Fix extraction (#13411, #13415) + [vimeo] Add fallback mp4 extension for original format + [ruv] Add support for ruv.is (#13396) * [viu] Fix extraction on older python 2.6 * [pandora.tv] Fix upload_date extraction (#12846) + [asiancrush] Add support for asiancrush.com (#13420) version 2017.06.18 Core * [downloader/common] Use utils.shell_quote for debug command line * [utils] Use compat_shlex_quote in shell_quote * [postprocessor/execafterdownload] Encode command line (#13407) * [compat] Fix compat_shlex_quote on Windows (#5889, #10254) * [postprocessor/metadatafromtitle] Fix missing optional meta fields processing in --metadata-from-title (#13408) * [extractor/common] Fix json dumping with --geo-bypass + [extractor/common] Improve jwplayer subtitles extraction + [extractor/common] Improve jwplayer formats extraction (#13379) Extractors * [polskieradio] Fix extraction (#13392) + [xfileshare] Add support for fastvideo.me (#13385) * [bilibili] Fix extraction of videos with double quotes in titles (#13387) * [4tube] Fix extraction (#13381, #13382) + [disney] Add support for disneychannel.de (#13383) * [npo] Improve URL regular expression (#13376) + [corus] Add support for showcase.ca + [corus] Add support for history.ca (#13359) version 2017.06.12 Core * [utils] Handle compat_HTMLParseError in extract_attributes (#13349) + [compat] Introduce compat_HTMLParseError * [utils] Improve unified_timestamp * [extractor/generic] Ensure format id is unicode string * [extractor/common] Return unicode string from _match_id + [YoutubeDL] Sanitize more fields (#13313) Extractors + [xfileshare] Add support for rapidvideo.tv (#13348) * [xfileshare] Modernize and pass Referer + [rutv] Add support for testplayer.vgtrk.com (#13347) + [newgrounds] Extract more metadata (#13232) + [newgrounds:playlist] Add support for playlists (#10611) * [newgrounds] Improve formats and uploader extraction (#13346) * [msn] Fix formats extraction * [turbo] Ensure format id is string * [sexu] Ensure height is int * [jove] Ensure comment count is int * [golem] Ensure format id is string * [gfycat] Ensure filesize is int * [foxgay] Ensure height is int * [flickr] Ensure format id is string * [sohu] Fix numeric fields * [safari] Improve authentication detection (#13319) * [liveleak] Ensure height is int (#13313) * [streamango] Make title optional (#13292) * [rtlnl] Improve URL regular expression (#13295) * [tvplayer] Fix extraction (#13291) version 2017.06.05 Core * [YoutubeDL] Don't emit ANSI escape codes on Windows (#13270) Extractors + [bandcamp:weekly] Add support for bandcamp weekly (#12758) * [pornhub:playlist] Fix extraction (#13281) - [godtv] Remove extractor (#13175) * [safari] Fix typo (#13252) * [youtube] Improve chapters extraction (#13247) * [1tv] Lower preference for HTTP formats (#13246) * [francetv] Relax URL regular expression * [drbonanza] Fix extraction (#13231) * [packtpub] Fix authentication (#13240) version 2017.05.29 Extractors * [youtube] Fix DASH MPD extraction for videos with non-encrypted format URLs (#13211) * [xhamster] Fix uploader and like/dislike count extraction (#13216)) + [xhamster] Extract categories (#11728) + [abcnews] Add support for embed URLs (#12851) * [gaskrank] Fix extraction (#12493) * [medialaan] Fix videos with missing videoUrl (#12774) * [dvtv] Fix playlist support + [dvtv] Add support for DASH and HLS formats (#3063) + [beam:vod] Add support for beam.pro/mixer.com VODs (#13032)) * [cbsinteractive] Relax URL regular expression (#13213) * [adn] Fix formats extraction + [youku] Extract more metadata (#10433) * [cbsnews] Fix extraction (#13205) version 2017.05.26 Core + [utils] strip_jsonp() can recognize more patterns * [postprocessor/ffmpeg] Fix metadata filename handling on Python 2 (#13182) Extractors + [youtube] DASH MPDs with cipher signatures are recognized now (#11381) + [bbc] Add support for authentication * [tudou] Merge into youku extractor (#12214) * [youku:show] Fix extraction * [youku] Fix extraction (#13191) * [udemy] Fix extraction for outputs' format entries without URL (#13192) * [vimeo] Fix formats' sorting (#13189) * [cbsnews] Fix extraction for 60 Minutes videos (#12861) version 2017.05.23 Core + [downloader/external] Pass -loglevel to ffmpeg downloader (#13183) + [adobepass] Add support for Bright House Networks (#13149) Extractors + [streamcz] Add support for subtitles (#13174) * [youtube] Fix DASH manifest signature decryption (#8944, #13156) * [toggle] Relax URL regular expression (#13172) * [toypics] Fix extraction (#13077) * [njpwworld] Fix extraction (#13162, #13169) + [hitbox] Add support for smashcast.tv (#13154) * [mitele] Update app key regular expression (#13158) version 2017.05.18.1 Core * [jsinterp] Fix typo and cleanup regular expressions (#13134) version 2017.05.18 Core + [jsinterp] Add support for quoted names and indexers (#13123, #13124, #13125, #13126, #13128, #13129, #13130, #13131, #13132) + [extractor/common] Add support for schemeless URLs in _extract_wowza_formats (#13088, #13092) + [utils] Recognize more audio codecs (#13081) Extractors + [vier] Extract more metadata (#12539) * [vier] Improve extraction (#12801) + Add support for authentication * Bypass authentication when no credentials provided * Improve extraction robustness * [dailymail] Fix sources extraction (#13057) * [dailymotion] Extend URL regular expression (#13079) version 2017.05.14 Core + [extractor/common] Respect Width and Height attributes in ISM manifests + [postprocessor/metadatafromtitle] Add support regular expression syntax for --metadata-from-title (#13065) Extractors + [mediaset] Add support for video.mediaset.it (#12708, #12964) * [orf:radio] Fix extraction (#11643, #12926) * [aljazeera] Extend URL regular expression (#13053) * [imdb] Relax URL regular expression (#13056) + [francetv] Add support for mobile.france.tv (#13068) + [upskill] Add support for upskillcourses.com (#13043) * [thescene] Fix extraction (#13061) * [condenast] Improve embed support * [liveleak] Fix extraction (#12053) + [douyu] Support Douyu shows (#12228) * [myspace] Improve URL regular expression (#13040) * [adultswim] Use desktop platform in assets URL (#13041) version 2017.05.09 Core * [YoutubeDL] Force --restrict-filenames when no locale is set on all python versions (#13027) Extractors * [francetv] Adapt to site redesign (#13034) + [packtpub] Add support for authentication (#12622) * [drtv] Lower preference for SignLanguage formats (#13013, #13016) + [cspan] Add support for brightcove live embeds (#13028) * [vrv] Extract DASH formats and subtitles * [funimation] Fix authentication (#13021) * [adultswim] Fix extraction (#8640, #10950, #11042, #12121) + Add support for Adobe Pass authentication + Add support for live streams + Add support for show pages * [turner] Extract thumbnail, is_live and strip description + [nonktube] Add support for nonktube.com (#8647, #13024) + [nuevo] Pass headers to _extract_nuevo * [nbc] Improve extraction (#12364) version 2017.05.07 Common * [extractor/common] Fix typo in _extract_akamai_formats + [postprocessor/ffmpeg] Embed chapters into media file with --add-metadata + [extractor/common] Introduce chapters meta field Extractors * [youtube] Fix authentication (#12820, #12927, #12973, #12992, #12993, #12995, #13003) * [bilibili] Fix video downloading (#13001) * [rmcdecouverte] Fix extraction (#12937) * [theplatform] Extract chapters * [bandcamp] Fix thumbnail extraction (#12980) * [pornhub] Extend URL regular expression (#12996) + [youtube] Extract chapters + [nrk] Extract chapters + [vice] Add support for ooyala embeds in article pages + [vice] Support vice articles (#12968) * [vice] Fix extraction for non en_us videos (#12967) * [gdcvault] Fix extraction for some videos (#12733) * [pbs] Improve multipart video support (#12981) * [laola1tv] Fix extraction (#12880) + [cda] Support birthday verification (#12789) * [leeco] Fix extraction (#12974) + [pbs] Extract chapters * [amp] Imporove thumbnail and subtitles extraction * [foxsports] Fix extraction (#12945) - [coub] Remove comment count extraction (#12941) version 2017.05.01 Core + [extractor/common] Extract view count from JSON-LD * [utils] Improve unified_timestamp + [utils] Add video/mp2t to mimetype2ext * [downloader/external] Properly handle live stream downloading cancellation (#8932) + [utils] Add support for unicode whitespace in clean_html on python 2 (#12906) Extractors * [infoq] Make audio format extraction non fatal (#12938) * [brightcove] Allow whitespace around attribute names in embedded code + [zaq1] Add support for zaq1.pl (#12693) + [xvideos] Extract duration (#12828) * [vevo] Fix extraction (#12879) + [noovo] Add support for noovo.ca (#12792) + [washingtonpost] Add support for embeds (#12699) * [yandexmusic:playlist] Fix extraction for python 3 (#12888) * [anvato] Improve extraction (#12913) * Promote to regular shortcut based extractor * Add mcp to access key mapping table * Add support for embeds extraction * Add support for anvato embeds in generic extractor * [xtube] Fix extraction for older FLV videos (#12734) * [tvplayer] Fix extraction (#12908) version 2017.04.28 Core + [adobepass] Use geo verification headers for all requests - [downloader/fragment] Remove assert for resume_len when no fragments downloaded + [extractor/common] Add manifest_url for explicit group rendition formats * [extractor/common] Fix manifest_url for m3u8 formats - [extractor/common] Don't list master m3u8 playlists in format list (#12832) Extractor * [aenetworks] Fix extraction for shows with single season + [go] Add support for Disney, DisneyJunior and DisneyXD show pages * [youtube] Recognize new locale-based player URLs (#12885) + [streamable] Add support for new embedded URL schema (#12844) * [arte:+7] Relax URL regular expression (#12837) version 2017.04.26 Core * Introduce --keep-fragments for keeping fragments of fragmented download on disk after download is finished * [YoutubeDL] Fix output template for missing timestamp (#12796) * [socks] Handle cases where credentials are required but missing * [extractor/common] Improve HLS extraction (#12211) * Extract m3u8 parsing to separate method * Improve rendition groups extraction * Build stream name according stream GROUP-ID * Ignore reference to AUDIO group without URI when stream has no CODECS * Use float for scaled tbr in _parse_m3u8_formats * [utils] Add support for TTML styles in dfxp2srt * [downloader/hls] No need to download keys for fragments that have been already downloaded * [downloader/fragment] Improve fragment downloading * Resume immediately * Don't concatenate fragments and decrypt them on every resume * Optimize disk storage usage, don't store intermediate fragments on disk * Store bookkeeping download state file + [extractor/common] Add support for multiple getters in try_get + [extractor/common] Add support for video of WebPage context in _json_ld (#12778) + [extractor/common] Relax JWPlayer regular expression and remove duplicate URLs (#12768) Extractors * [iqiyi] Fix extraction of Yule videos * [vidio] Improve extraction and sort formats + [brightcove] Match only video elements with data-video-id attribute * [iqiyi] Fix playlist detection (#12504) - [azubu] Remove extractor (#12813) * [porn91] Fix extraction (#12814) * [vidzi] Fix extraction (#12793) + [amp] Extract error message (#12795) + [xfileshare] Add support for gorillavid.com and daclips.com (#12776) * [instagram] Fix extraction (#12777) + [generic] Support Brightcove videos in