- Performance improvements in the deciphering code.
- Fixed the deciphering code. Thanks @Cyano!
- Added some missing format codes.
- Added a Windows Phone 8.1 target.
- Fixed an issue with the signature deciphering.
- Added a new method "TryNormalizeYoutubeUrl" that normalizes the given YouTube URL to the format http://youtube.com/watch?v={youtube-id} and returns whether the normalization was successful or not.
- Fixed an exception from occurring if the video title couldn't be parsed.
- Fixed malformed download URLs.
- Ciphers are now automatically extracted and not hardcoded anymore.
- The "GetDownloadUrls" method now has a second optional parameter class "decryptSignature" that specifies whether the signature in the download URL should be decrypted or not. This behavior can be turned off, as each decryption makes a HTTP request. To manually decrypt the signature, use the "DecryptDownloadUrl" method.
- Fixed a bug that caused an unknown video info not having a download URL.
- Added a method to override the ciphers.
- Added new ciphers.
- Lowered the required Newtonsoft.Json version to 5.0.8.
This release fixes the corrupt deployment of the previous release.
As of this version, Newtonsoft.Json is a dependency again.
- Fixed the deciphering of the video signature. This fixes all of the 403 errors.
- Added a missing video info.
- Fixed a bug that caused an
OverflowException
when parsing the itag value of a video.
- Added DASH support.
This version does NOT fix the various problems that occur because of the latest YouTube changes.
- The portable version of YoutubeExtractor now supports Xamarin.Android and Xamarin.iOS
- Added an optional constructor argument to specify the exact number of bytes to download.
- Better YouTube URL regognition.
- DownloadUrlResolver now throws the
VideoNotAvailableException
with the reason for the request failure. - Removed the obsolete
ProgressChanged
event andOnProgressChanged
method from theDownloader
class.
- Fixed the resource disposal in the
VideoDownloader
class.
- Fixed the build again...
- Fixed a bug in the download url extraction code that was caused by a faulty build.
- WinRT and Windows Phone 8 support
- Added a cancel option to the ProgressEventArgs class for canceling the download.
- Fixed disposal of some resources.
- Fixed disposal of resources.
- Fixed the parsing of the download urls, as YouTube changed their backend.
-
The VideoDownloader and the AudioDownloader classes now implement their own progress events. This means that the old ProgressChanged event is now obsolete. This change was made, because the ProgressChanged event reported the first 50% as download progress and the second 50% as audio extraction progress.
This was really inaccurate, as the download progress would be very slow in relation to the audio extraction progress, so the AudioDownloader has now two separate events: DownloadProgressChanged and AudioExctractionProgressChanged.
The VideoDownloader has the ProgressChanged event replaced with the DownloadProgressChanged event, but they are basically the same, so the real change is made to the AudioDownloader class.
- Fixed a bug, that caused a 403 forbidden exception.
- Fixed a bug, that caused a NullReferenceExcepion when the download has finished.
- The AudioDownloader.Execute method can now throw the "AudioExtractionException", that is thrown when an error occurs during audio extraction.
- Added more documentation for exception handling.
- The VideoDownloader.Execute method doesn't swallow exceptions anymore.
- Fixed a bug, that caused a YoutubeParseException for some videos.
- Removed dependency to Newtonsoft.Json.
- Fixed the parsing of the download urls, as YouTube changed their layout.
- Warning: This release contains breaking changes!
- The complete VideoInfo class has been overhauled, to support new formats and features.
- New video formats, especially 3D formats.
- New audio type: Ogg Vorbis
- The new property "Resolution" returns the video resolution, for example 1080 for a video with a resolution of 1080p.
- The new property "Is3D" indicates, if a video is 3D
- The new property "AudioType" returnsthe audio encoding (Mp3, Aac, Vorbis)
- The new property "AudioBitrate" returns approximate the audio bitrate in kbit/s.
- The "VideoFormat" property has been completely removed.
- The DownloadUrlResolver.GetDownloadUrls method now throws the "YoutubeParseException", if the YouTube page could not be parsed.
- Fixed a bug, that caused the DownloadUrlResolver.GetDownloadUrls method to randomly throw ArgumentOutOfRangeException.
- Added support for full HD WebM (format code 46).
- Added support for some 3GP format (format code 36).
- DownloadUrlResolver.GetDownloadUrls now throws ArgumentException, instead of InvalidOperationException, if the YouTube url is not valid.
- Updated JSON.NET to version 4.5.7
- Added the "Title" property in the Videoinfo class, that returns the title of the video.
- The DownloadUrlResolver.GetDownloadUrls method is less strict with the videoUrl argument and also accepts short-URLs (youtu.be)
- Added more documentation (especially method XML-comments)