All Versions
Latest Version
Avg Release Cycle
20 days
Latest Release

Changelog History
Page 5

  • v4.7 Changes

    May 12, 2019
    • 🛠 Fixed an issue where YoutubeExplode always failed to extract media streams due to recent YouTube changes.
  • v4.6.8 Changes

    March 30, 2019
    • 👌 Improved performance in GetVideoAsync by optimizing description parser.
  • v4.6.7 Changes

    March 16, 2019
    • 🛠 Fixed some more inconsistencies with how links in video descriptions are rendered.
  • v4.6.6 Changes

    • 🛠 Fixed an issue where JsonReaderException was thrown when downloading videos that were blocked on copyright grounds.
  • v4.6.5 Changes

    • 🛠 Fixed an issue where parser methods for channel ID and username failed if the URL contained query parameters.
    • 🛠 Fixed some inconsistencies with how links in video descriptions are rendered.
  • v4.6.4 Changes

    • 📌 Pinned AngleSharp dependency to version 0.9.11 because newer versions contain breaking changes that are currently incompatible with YoutubeExplode.
    • 👌 Improved the implementation of GetChannelAsync so that it's more fast and works on channels without any uploaded videos.
  • v4.6.3 Changes

    • 🛠 Fixed an issue where closed caption tracks were sometimes missing whitespace between words in auto-generated tracks.
    • ➕ Added an extension method to get all distinct video quality labels from a set -- MediaStreamInfoSet.GetAllVideoQualityLabels.
  • v4.6.2 Changes

    • 🛠 Fixed an issue where GetVideoMediaStreamInfosAsync returned empty for live stream recording videos.
  • v4.6.1 Changes

    • 🛠 Fixed sporadic failures in GetVideoAuthorChannelAsync and GetChannelIdAsync.
    • 👀 Re-added VideoRequiresPurchaseException as a child of VideoUnplayableException.
  • v4.6 Changes

    • 📜 Switched majority of video-related parsing to a new approach, which allows circumventing signature deciphering, provides more info, and is marginally faster and more consistent. This makes GetVideoMediaStreamInfosAsync complete twice as fast, on average.
    • 📜 Switched from itag-based property mapping to manual string parsing, which should be more stable in the long run.
    • ➕ Added MediaStreamInfoSet.ValidUntil property which can be used to determine when the contained streams will expire.
    • 🛠 Fixed an issue where controversial videos could not be parsed.
    • ✂ Removed User-Agent header from default request headers.
    • ✂ Removed VideoQuality.GetVideoQualityLabel extension method.
    • ✂ Removed MediaStreamInfo.GetUrlExpiryDate extension method.
    • ✂ Removed VideoRequiresPurchaseException and replaced it with VideoUnplayableException which covers a wider spectrum of errors.
    • 🚚 VideoUnavailableException no longer has properties for error code and error reason. Error code was basically useless so it was removed, error reason is now part of the Message property.
    • ✂ Removed ParseException entirely.
    • Some enum values in AudioEncoding, VideoEncoding and Container types were marked as obsolete because they are no longer used by YouTube.