Help us keep the list up to date and submit new video software here.
You can support our site by donate $5 directly to us. Thanks!
Try DVDFab and copy all Ultra HD Blu-rays and DVDs / remove Cinavia protection! Download free trial.
Complete Version history / Release notes / Changelog / What's New for youtube-dl-gui
3.3.0 Extended batch downloading preview Pre-release
Extended batch downloader
An extended batch downloader was added to the same form of the extended downloader - saving a lot of headaches in the future. Feel free to BREAK IT and report the issues to me.
This means that the extended downloader has also been modified to accomodate this new change, which may break some things unintentionally.
You can access it through the main form under Tools -> Batch operations -> Batch extended download
Other changes that I managed to decode:
Extended downloads now support having a specific time specified. It may not be the best at the moment.
Additionally, the URL text box has been replaced with a hyperlink on the top-left of the extended form.
3 new download options - Skip unavailable fragments, Abort on error, and Fragment threads.
Version bug fix, if versa was not equal-to versb it would cause a recursion loop - this was not in use so no actual damage would have been done.
CopyData methodology changed... yet again.
Using arguments to download media will work.
Using arguments to download media while another one is in queue will throw it into that application instance and not run a new instance.
Some language grammar fixes.
Conversion checkboxes in the settings have been re-arrange visually.
Minor merger fix - output files are now quoted so it doesn't break.
Custom arguments disallow use of the pipe character '|'. Non-negotiable.
Quick downloader adds a running action item linking to itself on creation, so less room for issues.
3.2.3 Another release with love xoxoxoxoxo
Custom arguments on the main form don't block file-name restricted characters.
Custom arguments on the main form (if entered) will be copied to the extended downloader so you don't have to re-enter them.
File name schema inputs have most restricted characters blocked this time. Slashes are allowed, for sub-directories.
Updated the German localization, thanks @uDEV2019
3.2.2 More fixes for you, from me, xoxo
An exit queue has been added that will finish downloading any media when the main form closes. This should allow you to download files while an update is pending.
The default values for the video format using the quick downloader is now bestvideo+bestaudio/best (or just bestvideo if no sound is enabled). This should allow you to download videos without sound on out-of-range qualities/formats, if supported. (hint: the best option was in this category. how did i know? i found a video of a cute as fuck red panda and tried to download without the sound, despite the fact you can download just the video. i did fix it. you can thank that red panda (and not the person who added that annoying music in the background), otherwise i wouldn't have ever found out.)
The "Format download options" on the extended downloader was moved out of the formats tab. I know, I know it's weird, but it feels better this way.
Authentication now has an option for a cookies file and a cookies from browser input. It requires you know what it does to work.
Additionally, the authentication has been updated to use a SecureString instead of string. It's a little more secure, but there's genuinely no way I know of to securely transfer it to yt-dlp. If there's a way, tell me please.
CopyData has been worked on.
Logging and Exceptions have been updated, they're better now.
I still hate Culture-related parsing. Percentage parsing should work regardless of your culture. Sorry, foreigners, I don't think I will ever learn.
Internal youtube-dl updater checking is all better, now.
If you have an "estimated" download size and ETA, it should accurately display the download size and ETA.
Suppress errors works. Who would imagine that your settings work.
A good amount of back-end work. I don't remember it all, and I'm so smart that I don't explain it on commits so I can't read the summaries to copy+paste them here.
I'm also working on an "extended" batch downloader as well, to go with the main downloader. I'm not inspired to work on it at the moment, but the ground work is there for future me to finish up. I didn't exclude it from this update, that's why the size went up a lil' bit.
Updated the German localization, thanks @uDEV2019
3.2.1 Settings fix
This will actually let you change the settings if you don't have the protocol installed. That's it. That's the release patch note.
Thanks to:
@bovirus for updating the Italian localization.
I said it before, I'll say it again. If you are a userscript dev, consider helping out by creating a userscript for a website you may frequent. See the CONTRIBUTING section of the main README.md for some info.
3.2.0 Schema history editor
this release adds a new form for the settings, which will help manage the schema history. yeah.
File name schema history editor added, it's basic.
Download ETA has been added to: The progress bar on the quick downloader & the title bar on the extended downloader.
Arguments finally finished. It doesn't support queuing up another download while one is running, but I hope to add that support later.
Protocol support for the program was added, the protocol used is "ytdlgui".
If "mp4" is a selected format, it should download as MP4 now.
Fix youtube-dl verification by extracting the version from the "FileVersion" instead of "ProductVersion".
Behind the scenes: The c# langversion has been upgraded from 10 to 11.
3.1.1 Runtime fixes
Note: If the updater does not auto-run when updating; you can manually run the updater executable.
Proxy settings on the extended downloader is fixed now.
The taskbar progress is now first-come priority; new instances that are running will not display in the taskbar unless it has access to the taskbar interface. This affects the main program and the updater.
The hardest part of this program is auto-scrolling, i'm trying, honest.
The system based Hand cursor should be available everywhere, thanks to some random off-topic stack overflow post.
Custom extensions may be phased out, because they're already not used anywhere.
Some back-end stuff.
Anyways
German translation updated (thanks @uDEV2019)
Italian translation updated (thanks @bovirus)
3.1.0 Quick download form update
This version focused on the quick downloader form. It still had some issues so I just decided to update it to include download progress. It's still the only way to download playlists or full channels because the extended downloader can only focus on one video at a time. I thought about using the extended downloader for the batch downloader or similar, but I do not feel like focusing on that right now.
The settings.ini config file will be renamed to youtube-dl-gui.ini on launch. This is for parity, and your settings should not be effected. I said should.
The quick downloader was heavily updated. Visually it's got some extra stuff to play with.
The quick downloader also saves your previously closed location so it won't show up in the middle of your screen.
The updater was updated. If it was ran without youtube-dl-guis' process id or the update message handler, it'll prompt you to choose your own adventure. Either Pre-Release, Release, or Ignore. Was it ignore? I don't remember what I wrote there.
Custom arguments have been enabled for the quick and extended downloader. You can still specify custom arguments only, but this is for people who want to use additional custom arguments that I have not added as options (either yet, or do not care about).
RichTextBox controls were updated, auto-scrolling will be way smoother now. It will only auto-scroll if you are at the bottom of the text box.
Language downloader was slightly updated.
Removed youtube-dlc from the forks list. Because of this, the extended downloader was enabled everywhere because it was confirmed working with yt-dlp and to a lesser extend youtube-dl which are the only 2 forks available.
The extended downloader added a new format type: Unknown for any formats that might not have been caught. This should be the final compatibility with sites that are quite funky.
Also, there are more progress updates for embedding subtitles or metadata added to the post-processing section.
Point and Size structs are now custom designed for better verification and other stuff. I don't know why I just didn't add them as extensions, but I wanted the Point to have an InvalidPoint option to check against.
There may be other changes I did not remember.
Translations that were updated since the previous release (may not reflect new localization strings in this version):
Italian got updated (thanks @bovirus)
Simplified Chinese was updated (thanks @wcxu21)
3.0.1 Minor quality of life update
This is a minor update adding a tiny amount of changes, that started annoying me.
The extended downloader column widths for the video and audio formats are saved when closing, and loaded when loading.
The icons for the batch forms were updated to include the outline like the extended downloader form.
The about forms' text was updated. I know part of it isn't translatable, it's not meant to be translatable.
If you're one of the unlucky souls to download version 3.0.0 within 5 minutes of it releasing and have not gotten the hotfix:
Fixed long string values being loaded incorrectly causing issues when loading values such as the download path or file name schema history.
Finally, translations were updated. Consider using the language downloader to update (if it works, I haven't tried):
German translation was updated (Thanks @uDEV2019)
Simplified Chinese translation was added (Thanks @wcxu21)
Russian translation was updated (Thanks @Qwest8K)
Sorry for not keeping up with translations in the patch notes.
3.0.0 Extended downloading
Double check your youtube-dl fork setting before downloading anything, it has changed.
(Re-uploaded exe to fix download path error)
This release contains an extended downloader that gives you way more options than the quick downloader. The original downloader will be retained. You can enable using the extended downloader by default in the settings.
An extended downloader form was added.
An archive downloader was added.
A log form was added
A revamped merger form was added, for more intricate merging. It's rudimentary but I don't really have the time to keep testing something I'm not gonna use. It works, that's all that really matters.
The exception form was updated
yt-dlp will be used as the default youtube-dl provider.
An option to download ffmpeg was added to the settings form.
Additionally, first time users will be asked if they want to download youtube-dl and ffmpeg.
The default download path was changed to C:Users<user>Downloadsyoutube-dl
Updater has been updated.
There may be changes I didn't write down.
3.0.0-6 ffmpeg downloader + generic downloader form
CHANGE YOUR Youtube-dl fork SELECTION IN THE SETTINGS
yt-dlp is now the default youtube-dl fork, which means if you selected it you will have to manually change it to yt-dlp in the settings because the internal rankings for the forks have changed.
An option to download ffmpeg was added to the settings. This will use the latest release builds hosted by gyan.dev.
When running the program for the first time, you will be asked if you want to download youtube-dl and ffmpeg.
I added remux options to the extended downloader.
Added mov and remove ogg from the video re-encoding options.
aiff, alac, and ogg were added to the audio re-encoding options.
m4v was changed to m4a in the audio re-encoder.
If no video formats are available, there will be a label saying so on the video formats tab.
Same thing for the audio formats, if none are available, a label will appear saying so.
Converting and merging statuses are now relayed to the user.
Some format sanity checks. All websites should now be working with the extended downloader.
Aborting a download while the download finishes but it converts to the requested format will now kill ffmpeg as well to abort the conversion.
Yeah, I'm still not ready for a major release, how could you tell?
3.0.0-5 archive downloader
An archive downloader was added, that downloads YOUTUBE videos if they have been archived before being removed.
The duration appearance on the extended downloader has been changed, so it should always appear with a minute below 59 seconds.
The default download path is now "C:Users<user>Downloadsyoutube-dl".
I may or may not be updating this program too often.
3.0.0-4 Merger available now
The new merger form should be available to try out.
The merger form is usable now.
Some convert changes were implemented to use the conversion form for progress display.
2 more icons added for the extended downloader which are grayed out copies of the colored ones to denote that selecting a format in that list is unavailable for any reason.
The other 2 icons for the extended downloader were also changed to have an outline.
Added a saved configuration for the extended downloaders' location and size.
The quick button to the extended downloader was removed in favor of having it either toggled in the settings or selected in the drop down.
The progress bar was updated again internally to make it less of a resource hog. It may make the text look weird, but I just can't find a way to deal with it without spamming garbage collection right now.
3.0.0-3 Next preview release
What's up?
The split-buttons used within the application should look completely good and function perfectly.
The extended downloader now denotes "best" formats with a star icon, and selected formats with an arrow pointing to it.
The updater has been modified again but it isn't fully complete. It now takes 2 arguments for the process ID and handle of the messager to communicate update data between the applications. This is so that way when downloads or conversions are taking place, the updater will wait for them to finish before updating. This also means that updating may be funky while I work out any issues with it, if any get reported. I'm also trying to re-use this updater in other programs, so that would be nice.
I'm working on one last big thing before full release, which is a more intricate media merger. It's going ok.
as always, open an issue for any issues.3.0.0-2 Extended details update 2
The extended downloader form is taking shape. I should also note this is better experienced with the "Internal English" language selected due to the internal names and values being changed every (literal) hour.
There's a new tab in the "Downloader" settings tab, which allow you to set extended form options.
Youtube-dl has been enabled for this form. I won't confirm whether it will be compatible or select the best formats for you (it has not when i tested it), so you'll need to check yourself.
The extended progress bar used has been updated, and it should not flicker anymore. It also should be easier to read in certain situations.
Exception form has a tab control between the main message and extra info so it doesn't kill the main message.
Instanced classes (Language, Verification) have been converted to static classes.
Lots of unused data in resources and old configuration data has been wiped.
I don't know if that actually lowered the exe size, but something did lower the exe size.
More stuff I ended up not mentioning.
3.0.0 Extended details preview
Adds a new "extended details" form which gives more data about the video requested by the user. It currently only supports yt-dlp as the downloader.
Do note: If you get exceptions when parsing, try to update youtube-dlp before opening an issue. I've witnessed some issues on older versions of yt-dlp.
If any issue occurs, please send the exception dialog alongside the "settings.ini" file containing the saved configuration of the program.
An extended form to download specific streams from the host. Any formats marked with a (!) are the "best selected" format.
(This may include some streams that are technically invalid, but I will filter them out eventually)
This includes the substring fix and yt-dlp throttling on the original download form from the master branch
I also removed the "old.exe" ytdlgui file from the zip. Whoops.
2.3.2
Bug fixes Latest
Separate into website URL is now respected when downloading.
Version checking got fixed up a bit.
Substringing for checking a null/empty/whitespace string was fixed
yt-dlp downloads now use the form again without showing the console window. The output messages for the downloads have been throttled to prevent form thread seppuku.
2.3.2
Bug fixes Latest
Separate into website URL is now respected when downloading.
Version checking got fixed up a bit.
Substringing for checking a null/empty/whitespace string was fixed
yt-dlp downloads now use the form again without showing the console window. The output messages for the downloads have been throttled to prevent form thread seppuku.
2.31 Version schism
BE SURE TO ENABLE Portable IN THE SETTINGS BEFORE UPDATING
This update may break some things between now and the next version (2.4)
The versioning will be changed to a new format when 2.4 releases, so 2.31 will be the interim version so the updater doesn't commit die. The new format is derived from semantic versioning, but I didn't like how MS' original Version class works, so I made my own.
The Portable option was removed in favor of just using an ini file (and maybe a json file in the future) instead of supporting both.
(This also accounts for languages, it may be converted to json instead of an ini in the future.)
This was build on the C#11 Preview, and has bumped up the .NET Framework requirement to 4.7.2.
The file name schema history in the Settings form now properly saves.
The CopyData structure and methodology was changed.
The updater was updated to remove the old application if it was present during updating, to prevent exceptions.
Update checking was overhauled, instead of converting the API data into an Xml format, it just uses the Json data which is more effective.
This also applies to the internal youtube-dl updater.
(backend) A lot of merged classes have been... unmerged.
Here's the changes between 2.3 and 2.31:
Downloads using the yt-dlp fork will appear with a console window alongside the regular window. This is because yt-dlp sends a TON of data when the output is redirected, killing the ability to abort the download.
If no language is selected on startup, the program will just close. This could default to English, but whatever.
Batch conversions have been added.
Multiple batch downloads are now possible simultaneously.
Fixed yt-dl being used instead of any selected fork on startup, which may have required you to redownload your fork to get it to work.
Clipboard scanning was added to the main form and batch downloader form. Please don't copy anything sensitive to your clipboard.
Batch downloading by importing links from from a text file should work.
I am preemptively sorry if you have to manually download the next version. I don't expect you to need to, but I'm just preemptively sorry in-case you do.
2.31-pre1
this is a pre-release because it's probably not fully stable, but hey you know it fixes some stuff.
Anyone using the yt-dlp fork will see a console window instead of the regular download window. This is because if the output is redirected, it will literally spam the form thread causing it to not be responsive to abort or cancel requests.
If no language is selected on first-time, the program will just exit. (This may just default to English instead, but you never know).
Batch conversion has been added so you can convert multiple things at once.
Multiple batch downloads/conversions can now be done simultaneously.
FIxed yt-dl being used instead of forks, which required users to re-download youtube-dl to use the selected fork.
2.3 this is the last time im making this update
This is basically some patches, hopefully it fixes some problemos. I also decided (last minute) to release it as 2.3.
Pre-warning: delete the "youtube-dl-gui.old.exe" file when you successfully update, it's a backup in case something bad happens.
Update code to c# 9.0
Fixed updating youtube-dl (and forks)
changed some syntaxes for downloading qualities. this worked during tests, but if it doesn't, i dunno lol.
you now have an option to delete the updater and backup on launch.
i have removed some extra saneness from my mental state, i felt like it wasn't quite wild enough.
this is the last time im making this release. if something breaks make an issue. at least the updater works.
2.27 Conversions look better, now.
The notable change is that conversion forms look better, now.
Conversions look different. Look for yourself
Browsing for new folders now look better.
The text boxes on the forms now auto scroll when things get updated. I bet some people HATED that it didn't do it automatically. Well, now it does. (me, i am one of those people)
Update checking should be consistently working again. Culture stuff is so annoying, why can't they do it for me.
The file name schema history combo box is visible on the main form. If it seems buggy, don't worry, it won't overwrite your history, it'll just add to it. If it's funky for you, a restart should fix it.
The main form got SLIGHTLY moved around, you might not really notice.
You can run the program with arguments to auto-download (or paste it into the forms' text box) urls. I don't have much documentation on that yet, but the basics is "-v " is video and "-a " is audio. if you know what to do, you can do it most likely.
Here's some behind the scenes updates:
Changed the c# version to like 9.0 or 10.0. This shouldn't be a massive issue, but I'm not doing massive changes quite yet, just in case.
I restructured some stuff.
I added a P/INVOKE call to send data to the program to do above, which attempts to download videos. "-a" and "-audio" both download as audio, "-v" and "-video" both download as video. If you're interested, I used WM_COPYDATA (0x004A) to copy the data as a inptr param (see Win32.cs and Program.cs for more info), as well as 0x0040 to show/activate the form (currently not a valid message, i don't think, which is great for this case).
Updating now uses hashing algorithms (see below) to verify things work properly. They aren't required to work, they're just a "hey this might not be right" warning.
I also update the updater
Added a custom progress bar that has text inside with information, as well as progress states for various points.
If any exception occurs during download, you can retry the download as many times as you want, and hope it fixes the next time.
Same goes with the hashing algorithm. If it detects the download is not what was passed, it'll give you a warning. You can try again, ignore it, or abort (and retry again if you want).
Hopefully some day, I'll have a very nice way of dealing with the updater. It seems like I need to fix it every week. (I haven't worked on it for months before today, basically LOL)
All in all, this is a pretty interesting release. I expect to go to 3.0 next, which will have the c# conversion complete, as well as maybe batch conversions, but I haven't quite gotten an idea for how I want it to look. I also need to look for icons to replace my currently HIDEOUS ones.
Anyway, onto the language updates
New translations (Between last release and now, may not be 100% up to date):
Italian was updated (Thanks @bovirus)
Japanese was updated (Thanks @thr3a)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/latest, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
2.27 pre-release 3, i don't believe in the previous number
Pre-release 2 never happened, just went straight to 3.
richtextboxes in the download and convert form were changed to a special-er one, which when text gets appended will automatically scroll the text box. you can safely not have the form in the foreground to see progress, now. may cause some trouble.
culture is now put into consideration when checking for updates. why can't we all agree on one standard???????
hey
2.27 Pre-release 1
Hey it's been a bit, this is a pre-release.
Code cleanup, removing unused code stuff.
Changed the single-instance form activation when trying to open another instance, should work (tm). This doesn't activate each other between versions, this is a hard cutoff from the previous method. Not important for end users, but important if you maintain using multiple versions.
Fixed exceptions "github" button linking to youtube-dl's repo instead of mine. Sorry.
The language class got more optimized, it might be faster and use less system resources, now.
Conversion got absolutely changed. it pops up a form, like the download form. File merging should follow soon-ish.
Update checking got somewhat changed, exceptions occur with more information based on the exception.
The language file was updated for this pre-release. I don't expect to add more or change them, but i don't know. I usually prefer to release them when the new version comes out, because it's safer in case i rename something.
Anyways... yeah.
2.623, batch patch
this pretty much fixes the batch downloader.
added japanese, thanks @thr3a
2.262 more bug fixes, late night release
properly reflects the youtube-dl fork when saving (if changed)
fixed downloading audio when the best format is selected. weird.
fixed downloading thumbnails, it downloads thumbnails. forgot about it.
cancelling in-progress downloads should work. look below for some information.
if no file name schema exists (null, empty, or whitespace), it will default to the default one.
temporarily rolled back to environment.currentdirectory for program path until further notice
translation stuff
Italian got updated, thanks @bovirus
if you have issues, check https://github.com/murrty/youtube-dl-gui/issues and post a new issue if yours is unique. be prepared to send the problematic url as well as your user.config (%localappdata%/youtube-dl-gui) or settings.ini (it's easier to enable the portable ini temporarily.), or just send them in the same issue. save us all some time.
so, here's some info about the cancelling downloads in progress, it's a little technical. basically, this looks up processes using windows management, which is hilarious. this is because the two forks create multiple processes, and the tools given to us (pretty much only me) aren't good enough to find processes that are children of a single process id. this works, but i don't know how well. keep a close eye on how well this new logic works, and if you know anything about this kinda thing and want to help, feel free to review it and submit a pull request if you know better. the logic is basically in frmDownloader.cs#L641.
yeah, yeah weird format. i'm tired give me a break
2.261 bug fixes
Fixed downloading audio with different formats other than "best"
Fixed update checking for youtube-dl + forks, and this program.
2.26, an update (finally) (Hotfixed)
(Includes ffmpeg fix)
Absoutely changed how settings is handled, again. It's done this way to prevent saving the settings file just for a quick download.
You can now enable/disable using the ini file in the settings, whenver you want to disable/enable it. It'll overide the previous settings.
You can now specify what videos you want to download in a playlist, channel, before, on, or after a specific date.
The main form's minimum size was slightly increased to make room for the video selection.
The file name schema has a history. There's no way to clear or remove them without editing the settings file.
Custom arguments also have history.
Prefer ffmpeg hls is a setting instead of enforced.
You can select between forks of youtube-dl, such as youtube-dlc and yt-dlp. I don't really use forks, so I don't know if the commands will translate to them properly. Suggest any that you would like to see.
Changed reading ini files to have a larger (65535) string length instead of 255. This is useful for long strings, such as custom arguments and schema history.
Bug fixes
There's a 1 in 5000 chance that the exception form will look degenerate. You'll know it if you see it, and it overides language settings, because everyone should feel the curse.
There may be more undocumented changes, but that's my fault for not proactively writing them down.
God dang it, bobby
New translations (Between last release and now, may not be 100% up to date):
Dutch was added (Thanks @den-ali)
German was updated (Thanks @PeterNerlich)
Italian was updated (Thanks @bovirus)
Russian was updated (Thanks @Qwest8K)
Spanish was updated (Thanks @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/latest, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Feel free to create a pull request with translations if you would like to help translate. The current template file version is 1.41.
If any bugs are present or you want to request a feature; please open a new issue at https://github.com/murrty/youtube-dl-gui/issues
(I'm trying out new release formatting, it's huge)
2.26 pre-release 1
this is a pre-release of the next """"major""" version of this program, and i would like some testers. here's a list of things:
You can now specify what videos you want in a playlist, channel, before a specific date, after a specific date, or on a specific date
The main form size was slightly increased to make room for the video selection
File name schema has a history, so you can "save" specific ones you like to use. There are 2 default ones, and no way to clear it outside of editing your own settings file.
prefer ffmpeg hls is a setting instead of enforced when ffmpeg is present.
bug fixes around here, i think i seriously forgot it's been like forever and i dont want to look through all the commits to check and i'm very tired it's 5 am and i can't even see my clock it's so small because windows 10 is absolutely garbage, i want to go back to windows 7
firefox crashed when i tried to upload the files, this one's important
if you open a issue with this build, be sure to specify that it's this pre-release, it'd be awkward to look into
2.252: Restore checking github for youtube-dl versions
EFF is good.
Restored the original Github check code for youtube-dl.
Some more aspects of the program is translatable now.
The link label on the about form is on the bottom left until I can fix the centering for it for alternate languages.
New translations:
Italian was updated (Thanks @bovirus)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/latest, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
2.251, rip youtube-dl github repo
The RIAA can fuck right off. Here are some changes between this version and last:
Youtube-DL update check was temporarily changed. It will always download youtube-dl from the youtube-dl website and replace the current one by renaming the old one by adding ".old" to the end of the name. It'll be overwritten if you redownload it again, so... keep that in mind.
The internal updater was updated. Amazing, isn't it? I still can't seem to get updating perfect. Am I stupid or something?
The internal update checker was updated as well.
The exception form won't infinitely loop in some cases.
The exception form also received a new label that includes the date and time the exception occurred.
Batch downloads can be aborted at any point during the download. You'll be able to say "no i dont want to finish this batch, it's stupid" or something.
Some new strings were added, but they aren't modifiable yet.
Typos in argument generation was fixed.
The hand cursor in the about form was changed to the system one, so if you have custom cursors, it'll look the part.
Update 2.25 - You must be logged in to view this message.
TL;DR: Authentication for private videos, you don't get annoyed by the batch notice, the exception form now goes to the youtube-dl-gui repo instead of another project, preventable log issues, a protocol using "ytdl:", the language file is quicker to load (insert joke about yandere simulator)
Authentication was added. If you wanted to download something that required an account, now it's possible to do so. Quick notice, your username and password are stored in memory until it's passed through to youtube-dl, afterwards, it'll be nulled. Now, a quicker note: I don't actually use any site that requires authentication. Authentication should be straight-forward, but open an issue if any bugs appear.
Downloading using the drop-down batch option will give you options to actually ignore the same prompt.
The "Github" button on the exceptions form now properly goes to THIS repo, and not another project's repo.
A issue during logging that could have caused an infinite exception loop got fixed.
Groundwork for using the "ytdl:" protocol. If you don't know what a protocol is, it basically lets you run a program on your computer from your webbrowser. The protocol I worked on only pushes the URL to the text box on the form, but it's groundwork none-the-less.
The language file uses a switch-case system instead of if-else-end system. This isn't a game, so the logic doesn't get ran every frame, but I didn't want to be looked at like some weirdo.
New translations:
French was added (thanks @ArturiaPendragon)
Brazilian-Portuguese was added (Thanks @orezraey)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Update 2.24, actually update 2.231 but I won't admit that.
TL;DR: Downloading "best" works again, language fixes, nerfed amount of messages in batch downloading on main form, updates the cached locations of ffmpeg and youtube-dl, label modifications.
Fixed downloading best quality audio and video being one index off.
Renames the "best" string in quality and format selection to the defined one in selected language
When batch downloading on the main form, it'll now only show 1 notice and you can choose to skip it every time. I still recommend using the batch form, but I understand using the main one for quick batch downloading.
The cached location of youtube-dl and ffmpeg are updated after saving the settings, so you can see what happens
lbFormat was updated to change anchor and size, so it looks more uniform with lbQuality.
haha if there's more i forgot :)
New translations:
Italian was updated (thanks @bovirus)
Spanish was updated (thanks @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Update 2.24, actually update 2.231 but I won't admit that.
TL;DR: Downloading "best" works again, language fixes, nerfed amount of messages in batch downloading on main form, updates the cached locations of ffmpeg and youtube-dl, label modifications.
Fixed downloading best quality audio and video being one index off.
Renames the "best" string in quality and format selection to the defined one in selected language
When batch downloading on the main form, it'll now only show 1 notice and you can choose to skip it every time. I still recommend using the batch form, but I understand using the main one for quick batch downloading.
The cached location of youtube-dl and ffmpeg are updated after saving the settings, so you can see what happens
lbFormat was updated to change anchor and size, so it looks more uniform with lbQuality.
haha if there's more i forgot :)
New translations:
Italian was updated (thanks @bovirus)
Spanish was updated (thanks @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Update 2.23
TL;DR: Addresses youtube-dl not downloading properly, portable settings, some language changes, and AtomicParsley being verified for existence. (AtomicParsley is used to embed metadata into downloaded files.)
The language file was updated to include more strings. It's template version is 1.1.
Added support for verifying AtomicParsley for embedding metadata into files. It's not really doing anything, but it's verifying that it exists. That's all.
Added support for portable mode. Create settings.ini in the same directory as youtube-dl-gui. Importing and exporting coming eventually.
Fixed updating youtube-dl in the program. Now it works, despite it working before. That one time.
Removed command line parsing for verifying youtube-dl and ffmpeg. You won't notice a difference.
New translations:
Arabic (Thanks to @salehif)
Russian (Thanks to @Qwest8K & @xetrin)
Spanish (Thanks to @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
v2.22 More bug fixes + Translations
This mainly addresses some issues with the visual form when loading non-English languages, and Reddit-based issues.
Allow frmMain + frmSettings to be resizable
Elements of frmMain and frmSettings will change location + size based on translated strings
Reddit videos are now parsed via regex instead of weird url checks. This means any site with "https://(www.)redd.(it)(com)" in the URL could techincally be considered false positives, but I doubt it since you can't have a colon in subfolders so this'll be the way it works. unless something breaks.
"Fix vreddit" is now enforced outside of video downloads. It does help, since audio does have glitches with youtube-dl's internal hls downloader. It also is enforced if you specified custom arguments, which I'll probably fix eventually, but eh, not a high priority.
Fix frmDownloader aborting problems, it properly aborts downloads now.
New translations:
German (Thanks to @qubit72)
Italian (Thanks to @bovirus)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.22, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Thanks to everyone using this, and the sites I see in the insights, it's really cool that people are interested in this project. Don't forget to wash your hands and stay away from people.
v2.21 Bug fixes
Radio buttons for the downloader and converter on the mainform are fixed to relocate based on the language properly.
Relocates any eligible controls when a language has been changed.
hey, this form finally sees its first use. isn't that cool? let's see if this updater works, it did in tests.
no it doesnt, youll have to manually update if you have 2.2, but thats ok, just go here -> https://github.com/murrty/youtube-dl-gui/releases/latest
v2.2
This release updates the way downloads are handled. They are now redirected into the application. On error, it won't automatically close the window, which also means if there's a non-issue error, it'll still alert you, which is better than not being alerted I guess.
Other than that, I added batch downloading, the ability to have a different language if its been localized in the desired language, and a bunch more options, such as the ability to select the format you want, and audio VBR. I'm aware that the main form's label "lbFormat" is like that, it's funny and I'm keeping it for now. Update notifications have been beautified to include more information, the updater itself has been updated, and the error system has been reworked in a manageable way.
The backend for the downloads have also been changed, now it'll download the best of the best instead of just mp4, but because mp4 is a format option you can still download as mp4. Webm was an option, but there's an issue with youtube-dl and ffmpeg where it'll freak out if you try to save it as a webm.
I expect there to be bugs, please report them in the issues tab.
2.2 Beta release 2
fixes some aggressive download form problems, among batch download form fixes
v2.2 Beta release 1
2.2 beta 1, look at the branch for 2.2 if you're interested in the source + changes.
I don't really like UI changes, but I had to make some minor changes to forms to get everything to fit.
v2.13 - Language update notification
nothing new, just a message box about upcoming language update.
thanks for coming to my git talk
v2.12
This includes some new things, but not a minor version number change because it's fixes.
The major addition is file merging, long ago requested. I researched into it. Hopefully it works well enough. (frmMain, Convert.cs)
TrayIcon hides when exiting, so it doesn't leave a icon on the tray. (frmMain)
Some more regions.. whatever me 10 days ago means by that... (frmMain.cs)
Added debug date handling from one source (frmMain, frmAbout, Properties.Settings)
Added some arguments for downloads outside of custom downloads, primarily used for nosound (Download.cs)
Added option to download sound, keep "Sound" checked if you want sound (frmMain)
Added miscellaneous tools (frmTools)
Added some buttons on the menu (Tools, Batch download, Misc tools) (frmMain)
Fixed quality combobox not enabling if selecting custom once (frmMain)
Fixed FileNameSchema not saving properly (frmSettings)
Compatible-only changes:
Renamed "Check for updates" to "View github releases"
2.11 - can you hear me now
Fixed quality being required when downloading, causing any videos with the best quality being lower than the one selected be undownloadable without selecting "best" (Download.cs)
Fixed audio not downloading (Download.cs)
Fixed the unnecessary amount of new calls in settings, for some reason... (frmSettings)
Moved 8K to the top, it fits better there. (frmMain, Download.cs)
Not available in this version, but being worked on:
Added batch downloading (frmBatch)
Added file merging (frmMain, Covert.cs)
Those instances of future additions are not visible in youtube-dl-gui-compatible because youtube-dl-gui-compatible is a build with new additions omitted until they're completed due to the differences in the code due to .NET Framework 3.5. Consider the compatible branch a different application due to the amount of code changes.
2.0: Merge pull request #8 from murrty/rewrite
Version 2 comes with a complete code redo, because i was bored and youtube-dl-gui was pretty laughable up to now.
My main goal is to make this as accessible to as many people as possible; this means that some power-user options aren't available... exception for custom arguments, which allow you to completely set what you want up.
+added better verification
+updated error logging process
+updated settings
+converter fully works
+static youtube-dl & ffmpeg
+better converter process
+more options for converting files, check the settings.
~audio still has a single setting, sorry.
+Summaries in code (for anyone interested)
+ A compatible version of youtube-dl-gui for people who are on, at least, .NET Framework 3.5. This should ensure that it works pre-Windows 7.
Debug changes:
Fixed the custom extensions being saved and removed the custom extension removal confirmation (frmSettings.cs)
Removed WaitForExit for downloading & converting. Makes bulk downloads/conversions easier. (Download.cs Convert.cs)
Changed "* completed" to "* started" for downloading and converting. (frmMain.cs)
Added a check for v.redd.it to fix any corrupted files that may get downloaded (Download.cs frmSettings.cs Downloads.settings)
Added Force-HTTPS for downloading. (Download.cs)
Hid the debug dates & moved the last debug date to the about form (frmMain.cs frmAbout.cs).
v1.651
bug fixes
v1.65
Github depreciated TLSv1.0 + TLSv1.1, so I use TLSv1.2, which means it re-requires .NET Framework 4.5.
Older versions also work, they just can't check for updates anymore.
v1.64
Textbox Hint.
Single-instances update, it'll now focus the program if you attempt to run it a second time.
v1.63
Fixed update not parsing cloud decimal with Metric decimal point (comma)
Any bug fixes, I'm not keeping track.
v1.62
More bug fixes
v1.61
Bug fixes
v1.6
Massive code overhaul.
Settings form changed, cleaner.
About form changed, reflects new Github.
Converting should be 100% functional. Only supposed 16:9 resolutions for now, send me some resolutions and I'll add them.
Added bitrate for video conversion, lower is better quality but higher file size.
Updater updated to now use Github's API, which means...
Yay, we're back to .NET Framework 4.0. Compatibility, and all that.
Remember, I make other programs, check them out.
v1.52
Selecting "Custom" in the downloader sets the quality & format index to -1, good for people who use custom arguments
Quality and format options are now changed when you try to download a video file or audio file (Download & Converter)
Tray downloads now get sorted into the folder, if sorting downloads is enabled
Added radio button to converter, doesn't do anything except change what's in the quality & format comboboxes list
Video quality still being worked on, for now you cannot specify a custom format or quality. Will fix ASAP
New versions always get tested. Trust me. Wink.
v1.51
Fixed saving format & qualty not saving
Fixed custom arguments not saving
Changed how custom arguments are saved
New settings form, now its organized
v1.5
Added option to save download quality & format
Added option to save conversion quality & format
Begun implementing a pinging system to determine network available, may scrap
Increased version number by +0.55
v1.45
Fixed converting files. Works now.
Made the url textbox disable when not on the download tab.
Removed supported sites form, waste of space.
Added option to disable update check for people who dont want to be bothered by dumb updates (like this)
v1.441
Fixed a bug where none of the other forms would stay visible.
v1.44
Added some memory collection to minimize memory leaking... not that it was leaking already, but you know just in case.
I did something else, I can't remember what.
v1.431
debug fix
Sorry.
v1.43
An update
Disabled site checking for audio & video downloading
Updated the updater... again.
Moved settings to a separate form once again.
Added about form
Renamed "Convert Audio" to "Converter"
Changed how downloads are done backend
Changed how conversions are done backend
Made the format and quality options contain both audio & video options.
v1.42
update the updater
Updated updater
Updated update check
Fixed bugs
optional update.
update sounds weird now.
v1.41
Bug fixes
bug fixes
v1.4
OctoKit + Updater
Requires .NET 4.5 (Already bundled with Windows 10, previous versions may need to download it.)
You can still run v1.3 for Windows 2003 or higher, if you do not want this, but my old HTML "parsing" will not be supported.
v1.3
Tray edition
Adds a tray, should be great.
v1.2
C# Rewrite
Update README.md
v1.1.2
Nobody will ever read this.
@obscurename obscurename released this 13 days ago · 1 commit to master since this release
Added .webm support.
Added FLAC to convertable audio options.
Defaulted audio quality to 256k.
Fixed the downloading so it works on the new layout.
Minor updates:
~ More hovering capability to view information on the objects within the program.
~ Changed the way settings get loaded. If it's read-only, it will nnot be changable within the program, but will still be readable.
~ Changed the link label URL.
v1.1.1
Minor bugfixes
@obscurename obscurename released this on Aug 7, 2016 · 15 commits to master since this release
~Fixed the "?" hyperlink in the "Download as" section as it appeared to overlap the "custom" option on certain Windows themes.
v1.1
Updater update
@obscurename obscurename released this on Aug 6, 2016 · 24 commits to master since this release
youtube-dl-gui:
+Updated version string to not include any ".0" integers within the app version when getting the app version.
+Renamed "Convert to MP3" tab to "Convert Audio"
~Moved "Settings" button to "About" tab
~Resized "Download" button
youtube-dl-gui-updater:
-Initial upload.
-Got version checking started, matches exact application version (with the ".0" integers) with the version on the github's "UpdaterInformation" file. This file is needed for software update checking with a direct link to the new version so updating is literally one click.
-Added the starting to "Custom file name" to the program, I initially want it to be a drag-drop function (drag the old version to the updater), but I'll see what I can do with it.
-Version checking the current version. I plan on adding this to the main program, but not yet.
If the versions match, exits updater.
If the file does not exist, it downloads a fresh copy of the latest version.
If the file is outdated, it alerts the user and then the user presses "continue" or "cancel" depending on what they choose.
Change log.
To install, replace your old youtube-dl-gui.exe or download the standalone. Or download the updater to automatically download, and to check for updates every now and then.
v1.0
Initial Release
@obscurename obscurename released this on Aug 4, 2016 · 30 commits to master since this release
Allows you to download youtube videos without asking you to buy it.
This program includes:
The ability to download youtube videos, playlists, or even channels, in an audio* or video format.
Basic GUI that I believe is very user friendly.
Does not ask you to "Buy PRO for $19.99 to get features like multi-video downloading!", but multi-video downloading may come in the future.
Convert video/audio files to different audio formats with different bit rates.*
Defaults to C:UsersDownloads on Windows. (I have not tested it on Wine, and probably never will)
To install:
Download the executable, or ZIP file
Place the .exe in a folder that you won't mess with, (ie: C:youtube-dl-gui)
In places that required administrative permission to place files, run the program as admin for the first time to download the required binary file to make it work. Afterwards, you will not need to run it as administrator again, unless you prefer to update the executable, then delete the youtube-dl.exe the program downloaded and re-run it as admin to redownload.
*You will need to install ffmpeg and add it to your PATH in order to allow Audio downloading/converting to work.
Quick Q&A:
Q: Why do you not support converting to video formats?
A: idk lol
Q: Why does it say "Convert to MP3" on the conversion tab?
A: oversight, ill get to it whenever i feel like lmao
Extended batch downloader
An extended batch downloader was added to the same form of the extended downloader - saving a lot of headaches in the future. Feel free to BREAK IT and report the issues to me.
This means that the extended downloader has also been modified to accomodate this new change, which may break some things unintentionally.
You can access it through the main form under Tools -> Batch operations -> Batch extended download
Other changes that I managed to decode:
Extended downloads now support having a specific time specified. It may not be the best at the moment.
Additionally, the URL text box has been replaced with a hyperlink on the top-left of the extended form.
3 new download options - Skip unavailable fragments, Abort on error, and Fragment threads.
Version bug fix, if versa was not equal-to versb it would cause a recursion loop - this was not in use so no actual damage would have been done.
CopyData methodology changed... yet again.
Using arguments to download media will work.
Using arguments to download media while another one is in queue will throw it into that application instance and not run a new instance.
Some language grammar fixes.
Conversion checkboxes in the settings have been re-arrange visually.
Minor merger fix - output files are now quoted so it doesn't break.
Custom arguments disallow use of the pipe character '|'. Non-negotiable.
Quick downloader adds a running action item linking to itself on creation, so less room for issues.
3.2.3 Another release with love xoxoxoxoxo
Custom arguments on the main form don't block file-name restricted characters.
Custom arguments on the main form (if entered) will be copied to the extended downloader so you don't have to re-enter them.
File name schema inputs have most restricted characters blocked this time. Slashes are allowed, for sub-directories.
Updated the German localization, thanks @uDEV2019
3.2.2 More fixes for you, from me, xoxo
An exit queue has been added that will finish downloading any media when the main form closes. This should allow you to download files while an update is pending.
The default values for the video format using the quick downloader is now bestvideo+bestaudio/best (or just bestvideo if no sound is enabled). This should allow you to download videos without sound on out-of-range qualities/formats, if supported. (hint: the best option was in this category. how did i know? i found a video of a cute as fuck red panda and tried to download without the sound, despite the fact you can download just the video. i did fix it. you can thank that red panda (and not the person who added that annoying music in the background), otherwise i wouldn't have ever found out.)
The "Format download options" on the extended downloader was moved out of the formats tab. I know, I know it's weird, but it feels better this way.
Authentication now has an option for a cookies file and a cookies from browser input. It requires you know what it does to work.
Additionally, the authentication has been updated to use a SecureString instead of string. It's a little more secure, but there's genuinely no way I know of to securely transfer it to yt-dlp. If there's a way, tell me please.
CopyData has been worked on.
Logging and Exceptions have been updated, they're better now.
I still hate Culture-related parsing. Percentage parsing should work regardless of your culture. Sorry, foreigners, I don't think I will ever learn.
Internal youtube-dl updater checking is all better, now.
If you have an "estimated" download size and ETA, it should accurately display the download size and ETA.
Suppress errors works. Who would imagine that your settings work.
A good amount of back-end work. I don't remember it all, and I'm so smart that I don't explain it on commits so I can't read the summaries to copy+paste them here.
I'm also working on an "extended" batch downloader as well, to go with the main downloader. I'm not inspired to work on it at the moment, but the ground work is there for future me to finish up. I didn't exclude it from this update, that's why the size went up a lil' bit.
Updated the German localization, thanks @uDEV2019
3.2.1 Settings fix
This will actually let you change the settings if you don't have the protocol installed. That's it. That's the release patch note.
Thanks to:
@bovirus for updating the Italian localization.
I said it before, I'll say it again. If you are a userscript dev, consider helping out by creating a userscript for a website you may frequent. See the CONTRIBUTING section of the main README.md for some info.
3.2.0 Schema history editor
this release adds a new form for the settings, which will help manage the schema history. yeah.
File name schema history editor added, it's basic.
Download ETA has been added to: The progress bar on the quick downloader & the title bar on the extended downloader.
Arguments finally finished. It doesn't support queuing up another download while one is running, but I hope to add that support later.
Protocol support for the program was added, the protocol used is "ytdlgui".
If "mp4" is a selected format, it should download as MP4 now.
Fix youtube-dl verification by extracting the version from the "FileVersion" instead of "ProductVersion".
Behind the scenes: The c# langversion has been upgraded from 10 to 11.
3.1.1 Runtime fixes
Note: If the updater does not auto-run when updating; you can manually run the updater executable.
Proxy settings on the extended downloader is fixed now.
The taskbar progress is now first-come priority; new instances that are running will not display in the taskbar unless it has access to the taskbar interface. This affects the main program and the updater.
The hardest part of this program is auto-scrolling, i'm trying, honest.
The system based Hand cursor should be available everywhere, thanks to some random off-topic stack overflow post.
Custom extensions may be phased out, because they're already not used anywhere.
Some back-end stuff.
Anyways
German translation updated (thanks @uDEV2019)
Italian translation updated (thanks @bovirus)
3.1.0 Quick download form update
This version focused on the quick downloader form. It still had some issues so I just decided to update it to include download progress. It's still the only way to download playlists or full channels because the extended downloader can only focus on one video at a time. I thought about using the extended downloader for the batch downloader or similar, but I do not feel like focusing on that right now.
The settings.ini config file will be renamed to youtube-dl-gui.ini on launch. This is for parity, and your settings should not be effected. I said should.
The quick downloader was heavily updated. Visually it's got some extra stuff to play with.
The quick downloader also saves your previously closed location so it won't show up in the middle of your screen.
The updater was updated. If it was ran without youtube-dl-guis' process id or the update message handler, it'll prompt you to choose your own adventure. Either Pre-Release, Release, or Ignore. Was it ignore? I don't remember what I wrote there.
Custom arguments have been enabled for the quick and extended downloader. You can still specify custom arguments only, but this is for people who want to use additional custom arguments that I have not added as options (either yet, or do not care about).
RichTextBox controls were updated, auto-scrolling will be way smoother now. It will only auto-scroll if you are at the bottom of the text box.
Language downloader was slightly updated.
Removed youtube-dlc from the forks list. Because of this, the extended downloader was enabled everywhere because it was confirmed working with yt-dlp and to a lesser extend youtube-dl which are the only 2 forks available.
The extended downloader added a new format type: Unknown for any formats that might not have been caught. This should be the final compatibility with sites that are quite funky.
Also, there are more progress updates for embedding subtitles or metadata added to the post-processing section.
Point and Size structs are now custom designed for better verification and other stuff. I don't know why I just didn't add them as extensions, but I wanted the Point to have an InvalidPoint option to check against.
There may be other changes I did not remember.
Translations that were updated since the previous release (may not reflect new localization strings in this version):
Italian got updated (thanks @bovirus)
Simplified Chinese was updated (thanks @wcxu21)
3.0.1 Minor quality of life update
This is a minor update adding a tiny amount of changes, that started annoying me.
The extended downloader column widths for the video and audio formats are saved when closing, and loaded when loading.
The icons for the batch forms were updated to include the outline like the extended downloader form.
The about forms' text was updated. I know part of it isn't translatable, it's not meant to be translatable.
If you're one of the unlucky souls to download version 3.0.0 within 5 minutes of it releasing and have not gotten the hotfix:
Fixed long string values being loaded incorrectly causing issues when loading values such as the download path or file name schema history.
Finally, translations were updated. Consider using the language downloader to update (if it works, I haven't tried):
German translation was updated (Thanks @uDEV2019)
Simplified Chinese translation was added (Thanks @wcxu21)
Russian translation was updated (Thanks @Qwest8K)
Sorry for not keeping up with translations in the patch notes.
3.0.0 Extended downloading
Double check your youtube-dl fork setting before downloading anything, it has changed.
(Re-uploaded exe to fix download path error)
This release contains an extended downloader that gives you way more options than the quick downloader. The original downloader will be retained. You can enable using the extended downloader by default in the settings.
An extended downloader form was added.
An archive downloader was added.
A log form was added
A revamped merger form was added, for more intricate merging. It's rudimentary but I don't really have the time to keep testing something I'm not gonna use. It works, that's all that really matters.
The exception form was updated
yt-dlp will be used as the default youtube-dl provider.
An option to download ffmpeg was added to the settings form.
Additionally, first time users will be asked if they want to download youtube-dl and ffmpeg.
The default download path was changed to C:Users<user>Downloadsyoutube-dl
Updater has been updated.
There may be changes I didn't write down.
3.0.0-6 ffmpeg downloader + generic downloader form
CHANGE YOUR Youtube-dl fork SELECTION IN THE SETTINGS
yt-dlp is now the default youtube-dl fork, which means if you selected it you will have to manually change it to yt-dlp in the settings because the internal rankings for the forks have changed.
An option to download ffmpeg was added to the settings. This will use the latest release builds hosted by gyan.dev.
When running the program for the first time, you will be asked if you want to download youtube-dl and ffmpeg.
I added remux options to the extended downloader.
Added mov and remove ogg from the video re-encoding options.
aiff, alac, and ogg were added to the audio re-encoding options.
m4v was changed to m4a in the audio re-encoder.
If no video formats are available, there will be a label saying so on the video formats tab.
Same thing for the audio formats, if none are available, a label will appear saying so.
Converting and merging statuses are now relayed to the user.
Some format sanity checks. All websites should now be working with the extended downloader.
Aborting a download while the download finishes but it converts to the requested format will now kill ffmpeg as well to abort the conversion.
Yeah, I'm still not ready for a major release, how could you tell?
3.0.0-5 archive downloader
An archive downloader was added, that downloads YOUTUBE videos if they have been archived before being removed.
The duration appearance on the extended downloader has been changed, so it should always appear with a minute below 59 seconds.
The default download path is now "C:Users<user>Downloadsyoutube-dl".
I may or may not be updating this program too often.
3.0.0-4 Merger available now
The new merger form should be available to try out.
The merger form is usable now.
Some convert changes were implemented to use the conversion form for progress display.
2 more icons added for the extended downloader which are grayed out copies of the colored ones to denote that selecting a format in that list is unavailable for any reason.
The other 2 icons for the extended downloader were also changed to have an outline.
Added a saved configuration for the extended downloaders' location and size.
The quick button to the extended downloader was removed in favor of having it either toggled in the settings or selected in the drop down.
The progress bar was updated again internally to make it less of a resource hog. It may make the text look weird, but I just can't find a way to deal with it without spamming garbage collection right now.
3.0.0-3 Next preview release
What's up?
The split-buttons used within the application should look completely good and function perfectly.
The extended downloader now denotes "best" formats with a star icon, and selected formats with an arrow pointing to it.
The updater has been modified again but it isn't fully complete. It now takes 2 arguments for the process ID and handle of the messager to communicate update data between the applications. This is so that way when downloads or conversions are taking place, the updater will wait for them to finish before updating. This also means that updating may be funky while I work out any issues with it, if any get reported. I'm also trying to re-use this updater in other programs, so that would be nice.
I'm working on one last big thing before full release, which is a more intricate media merger. It's going ok.
as always, open an issue for any issues.3.0.0-2 Extended details update 2
The extended downloader form is taking shape. I should also note this is better experienced with the "Internal English" language selected due to the internal names and values being changed every (literal) hour.
There's a new tab in the "Downloader" settings tab, which allow you to set extended form options.
Youtube-dl has been enabled for this form. I won't confirm whether it will be compatible or select the best formats for you (it has not when i tested it), so you'll need to check yourself.
The extended progress bar used has been updated, and it should not flicker anymore. It also should be easier to read in certain situations.
Exception form has a tab control between the main message and extra info so it doesn't kill the main message.
Instanced classes (Language, Verification) have been converted to static classes.
Lots of unused data in resources and old configuration data has been wiped.
I don't know if that actually lowered the exe size, but something did lower the exe size.
More stuff I ended up not mentioning.
3.0.0 Extended details preview
Adds a new "extended details" form which gives more data about the video requested by the user. It currently only supports yt-dlp as the downloader.
Do note: If you get exceptions when parsing, try to update youtube-dlp before opening an issue. I've witnessed some issues on older versions of yt-dlp.
If any issue occurs, please send the exception dialog alongside the "settings.ini" file containing the saved configuration of the program.
An extended form to download specific streams from the host. Any formats marked with a (!) are the "best selected" format.
(This may include some streams that are technically invalid, but I will filter them out eventually)
This includes the substring fix and yt-dlp throttling on the original download form from the master branch
I also removed the "old.exe" ytdlgui file from the zip. Whoops.
2.3.2
Bug fixes Latest
Separate into website URL is now respected when downloading.
Version checking got fixed up a bit.
Substringing for checking a null/empty/whitespace string was fixed
yt-dlp downloads now use the form again without showing the console window. The output messages for the downloads have been throttled to prevent form thread seppuku.
2.3.2
Bug fixes Latest
Separate into website URL is now respected when downloading.
Version checking got fixed up a bit.
Substringing for checking a null/empty/whitespace string was fixed
yt-dlp downloads now use the form again without showing the console window. The output messages for the downloads have been throttled to prevent form thread seppuku.
2.31 Version schism
BE SURE TO ENABLE Portable IN THE SETTINGS BEFORE UPDATING
This update may break some things between now and the next version (2.4)
The versioning will be changed to a new format when 2.4 releases, so 2.31 will be the interim version so the updater doesn't commit die. The new format is derived from semantic versioning, but I didn't like how MS' original Version class works, so I made my own.
The Portable option was removed in favor of just using an ini file (and maybe a json file in the future) instead of supporting both.
(This also accounts for languages, it may be converted to json instead of an ini in the future.)
This was build on the C#11 Preview, and has bumped up the .NET Framework requirement to 4.7.2.
The file name schema history in the Settings form now properly saves.
The CopyData structure and methodology was changed.
The updater was updated to remove the old application if it was present during updating, to prevent exceptions.
Update checking was overhauled, instead of converting the API data into an Xml format, it just uses the Json data which is more effective.
This also applies to the internal youtube-dl updater.
(backend) A lot of merged classes have been... unmerged.
Here's the changes between 2.3 and 2.31:
Downloads using the yt-dlp fork will appear with a console window alongside the regular window. This is because yt-dlp sends a TON of data when the output is redirected, killing the ability to abort the download.
If no language is selected on startup, the program will just close. This could default to English, but whatever.
Batch conversions have been added.
Multiple batch downloads are now possible simultaneously.
Fixed yt-dl being used instead of any selected fork on startup, which may have required you to redownload your fork to get it to work.
Clipboard scanning was added to the main form and batch downloader form. Please don't copy anything sensitive to your clipboard.
Batch downloading by importing links from from a text file should work.
I am preemptively sorry if you have to manually download the next version. I don't expect you to need to, but I'm just preemptively sorry in-case you do.
2.31-pre1
this is a pre-release because it's probably not fully stable, but hey you know it fixes some stuff.
Anyone using the yt-dlp fork will see a console window instead of the regular download window. This is because if the output is redirected, it will literally spam the form thread causing it to not be responsive to abort or cancel requests.
If no language is selected on first-time, the program will just exit. (This may just default to English instead, but you never know).
Batch conversion has been added so you can convert multiple things at once.
Multiple batch downloads/conversions can now be done simultaneously.
FIxed yt-dl being used instead of forks, which required users to re-download youtube-dl to use the selected fork.
2.3 this is the last time im making this update
This is basically some patches, hopefully it fixes some problemos. I also decided (last minute) to release it as 2.3.
Pre-warning: delete the "youtube-dl-gui.old.exe" file when you successfully update, it's a backup in case something bad happens.
Update code to c# 9.0
Fixed updating youtube-dl (and forks)
changed some syntaxes for downloading qualities. this worked during tests, but if it doesn't, i dunno lol.
you now have an option to delete the updater and backup on launch.
i have removed some extra saneness from my mental state, i felt like it wasn't quite wild enough.
this is the last time im making this release. if something breaks make an issue. at least the updater works.
2.27 Conversions look better, now.
The notable change is that conversion forms look better, now.
Conversions look different. Look for yourself
Browsing for new folders now look better.
The text boxes on the forms now auto scroll when things get updated. I bet some people HATED that it didn't do it automatically. Well, now it does. (me, i am one of those people)
Update checking should be consistently working again. Culture stuff is so annoying, why can't they do it for me.
The file name schema history combo box is visible on the main form. If it seems buggy, don't worry, it won't overwrite your history, it'll just add to it. If it's funky for you, a restart should fix it.
The main form got SLIGHTLY moved around, you might not really notice.
You can run the program with arguments to auto-download (or paste it into the forms' text box) urls. I don't have much documentation on that yet, but the basics is "-v " is video and "-a " is audio. if you know what to do, you can do it most likely.
Here's some behind the scenes updates:
Changed the c# version to like 9.0 or 10.0. This shouldn't be a massive issue, but I'm not doing massive changes quite yet, just in case.
I restructured some stuff.
I added a P/INVOKE call to send data to the program to do above, which attempts to download videos. "-a" and "-audio" both download as audio, "-v" and "-video" both download as video. If you're interested, I used WM_COPYDATA (0x004A) to copy the data as a inptr param (see Win32.cs and Program.cs for more info), as well as 0x0040 to show/activate the form (currently not a valid message, i don't think, which is great for this case).
Updating now uses hashing algorithms (see below) to verify things work properly. They aren't required to work, they're just a "hey this might not be right" warning.
I also update the updater
Added a custom progress bar that has text inside with information, as well as progress states for various points.
If any exception occurs during download, you can retry the download as many times as you want, and hope it fixes the next time.
Same goes with the hashing algorithm. If it detects the download is not what was passed, it'll give you a warning. You can try again, ignore it, or abort (and retry again if you want).
Hopefully some day, I'll have a very nice way of dealing with the updater. It seems like I need to fix it every week. (I haven't worked on it for months before today, basically LOL)
All in all, this is a pretty interesting release. I expect to go to 3.0 next, which will have the c# conversion complete, as well as maybe batch conversions, but I haven't quite gotten an idea for how I want it to look. I also need to look for icons to replace my currently HIDEOUS ones.
Anyway, onto the language updates
New translations (Between last release and now, may not be 100% up to date):
Italian was updated (Thanks @bovirus)
Japanese was updated (Thanks @thr3a)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/latest, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
2.27 pre-release 3, i don't believe in the previous number
Pre-release 2 never happened, just went straight to 3.
richtextboxes in the download and convert form were changed to a special-er one, which when text gets appended will automatically scroll the text box. you can safely not have the form in the foreground to see progress, now. may cause some trouble.
culture is now put into consideration when checking for updates. why can't we all agree on one standard???????
hey
2.27 Pre-release 1
Hey it's been a bit, this is a pre-release.
Code cleanup, removing unused code stuff.
Changed the single-instance form activation when trying to open another instance, should work (tm). This doesn't activate each other between versions, this is a hard cutoff from the previous method. Not important for end users, but important if you maintain using multiple versions.
Fixed exceptions "github" button linking to youtube-dl's repo instead of mine. Sorry.
The language class got more optimized, it might be faster and use less system resources, now.
Conversion got absolutely changed. it pops up a form, like the download form. File merging should follow soon-ish.
Update checking got somewhat changed, exceptions occur with more information based on the exception.
The language file was updated for this pre-release. I don't expect to add more or change them, but i don't know. I usually prefer to release them when the new version comes out, because it's safer in case i rename something.
Anyways... yeah.
2.623, batch patch
this pretty much fixes the batch downloader.
added japanese, thanks @thr3a
2.262 more bug fixes, late night release
properly reflects the youtube-dl fork when saving (if changed)
fixed downloading audio when the best format is selected. weird.
fixed downloading thumbnails, it downloads thumbnails. forgot about it.
cancelling in-progress downloads should work. look below for some information.
if no file name schema exists (null, empty, or whitespace), it will default to the default one.
temporarily rolled back to environment.currentdirectory for program path until further notice
translation stuff
Italian got updated, thanks @bovirus
if you have issues, check https://github.com/murrty/youtube-dl-gui/issues and post a new issue if yours is unique. be prepared to send the problematic url as well as your user.config (%localappdata%/youtube-dl-gui) or settings.ini (it's easier to enable the portable ini temporarily.), or just send them in the same issue. save us all some time.
so, here's some info about the cancelling downloads in progress, it's a little technical. basically, this looks up processes using windows management, which is hilarious. this is because the two forks create multiple processes, and the tools given to us (pretty much only me) aren't good enough to find processes that are children of a single process id. this works, but i don't know how well. keep a close eye on how well this new logic works, and if you know anything about this kinda thing and want to help, feel free to review it and submit a pull request if you know better. the logic is basically in frmDownloader.cs#L641.
yeah, yeah weird format. i'm tired give me a break
2.261 bug fixes
Fixed downloading audio with different formats other than "best"
Fixed update checking for youtube-dl + forks, and this program.
2.26, an update (finally) (Hotfixed)
(Includes ffmpeg fix)
Absoutely changed how settings is handled, again. It's done this way to prevent saving the settings file just for a quick download.
You can now enable/disable using the ini file in the settings, whenver you want to disable/enable it. It'll overide the previous settings.
You can now specify what videos you want to download in a playlist, channel, before, on, or after a specific date.
The main form's minimum size was slightly increased to make room for the video selection.
The file name schema has a history. There's no way to clear or remove them without editing the settings file.
Custom arguments also have history.
Prefer ffmpeg hls is a setting instead of enforced.
You can select between forks of youtube-dl, such as youtube-dlc and yt-dlp. I don't really use forks, so I don't know if the commands will translate to them properly. Suggest any that you would like to see.
Changed reading ini files to have a larger (65535) string length instead of 255. This is useful for long strings, such as custom arguments and schema history.
Bug fixes
There's a 1 in 5000 chance that the exception form will look degenerate. You'll know it if you see it, and it overides language settings, because everyone should feel the curse.
There may be more undocumented changes, but that's my fault for not proactively writing them down.
God dang it, bobby
New translations (Between last release and now, may not be 100% up to date):
Dutch was added (Thanks @den-ali)
German was updated (Thanks @PeterNerlich)
Italian was updated (Thanks @bovirus)
Russian was updated (Thanks @Qwest8K)
Spanish was updated (Thanks @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/latest, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Feel free to create a pull request with translations if you would like to help translate. The current template file version is 1.41.
If any bugs are present or you want to request a feature; please open a new issue at https://github.com/murrty/youtube-dl-gui/issues
(I'm trying out new release formatting, it's huge)
2.26 pre-release 1
this is a pre-release of the next """"major""" version of this program, and i would like some testers. here's a list of things:
You can now specify what videos you want in a playlist, channel, before a specific date, after a specific date, or on a specific date
The main form size was slightly increased to make room for the video selection
File name schema has a history, so you can "save" specific ones you like to use. There are 2 default ones, and no way to clear it outside of editing your own settings file.
prefer ffmpeg hls is a setting instead of enforced when ffmpeg is present.
bug fixes around here, i think i seriously forgot it's been like forever and i dont want to look through all the commits to check and i'm very tired it's 5 am and i can't even see my clock it's so small because windows 10 is absolutely garbage, i want to go back to windows 7
firefox crashed when i tried to upload the files, this one's important
if you open a issue with this build, be sure to specify that it's this pre-release, it'd be awkward to look into
2.252: Restore checking github for youtube-dl versions
EFF is good.
Restored the original Github check code for youtube-dl.
Some more aspects of the program is translatable now.
The link label on the about form is on the bottom left until I can fix the centering for it for alternate languages.
New translations:
Italian was updated (Thanks @bovirus)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/latest, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
2.251, rip youtube-dl github repo
The RIAA can fuck right off. Here are some changes between this version and last:
Youtube-DL update check was temporarily changed. It will always download youtube-dl from the youtube-dl website and replace the current one by renaming the old one by adding ".old" to the end of the name. It'll be overwritten if you redownload it again, so... keep that in mind.
The internal updater was updated. Amazing, isn't it? I still can't seem to get updating perfect. Am I stupid or something?
The internal update checker was updated as well.
The exception form won't infinitely loop in some cases.
The exception form also received a new label that includes the date and time the exception occurred.
Batch downloads can be aborted at any point during the download. You'll be able to say "no i dont want to finish this batch, it's stupid" or something.
Some new strings were added, but they aren't modifiable yet.
Typos in argument generation was fixed.
The hand cursor in the about form was changed to the system one, so if you have custom cursors, it'll look the part.
Update 2.25 - You must be logged in to view this message.
TL;DR: Authentication for private videos, you don't get annoyed by the batch notice, the exception form now goes to the youtube-dl-gui repo instead of another project, preventable log issues, a protocol using "ytdl:", the language file is quicker to load (insert joke about yandere simulator)
Authentication was added. If you wanted to download something that required an account, now it's possible to do so. Quick notice, your username and password are stored in memory until it's passed through to youtube-dl, afterwards, it'll be nulled. Now, a quicker note: I don't actually use any site that requires authentication. Authentication should be straight-forward, but open an issue if any bugs appear.
Downloading using the drop-down batch option will give you options to actually ignore the same prompt.
The "Github" button on the exceptions form now properly goes to THIS repo, and not another project's repo.
A issue during logging that could have caused an infinite exception loop got fixed.
Groundwork for using the "ytdl:" protocol. If you don't know what a protocol is, it basically lets you run a program on your computer from your webbrowser. The protocol I worked on only pushes the URL to the text box on the form, but it's groundwork none-the-less.
The language file uses a switch-case system instead of if-else-end system. This isn't a game, so the logic doesn't get ran every frame, but I didn't want to be looked at like some weirdo.
New translations:
French was added (thanks @ArturiaPendragon)
Brazilian-Portuguese was added (Thanks @orezraey)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Update 2.24, actually update 2.231 but I won't admit that.
TL;DR: Downloading "best" works again, language fixes, nerfed amount of messages in batch downloading on main form, updates the cached locations of ffmpeg and youtube-dl, label modifications.
Fixed downloading best quality audio and video being one index off.
Renames the "best" string in quality and format selection to the defined one in selected language
When batch downloading on the main form, it'll now only show 1 notice and you can choose to skip it every time. I still recommend using the batch form, but I understand using the main one for quick batch downloading.
The cached location of youtube-dl and ffmpeg are updated after saving the settings, so you can see what happens
lbFormat was updated to change anchor and size, so it looks more uniform with lbQuality.
haha if there's more i forgot :)
New translations:
Italian was updated (thanks @bovirus)
Spanish was updated (thanks @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Update 2.24, actually update 2.231 but I won't admit that.
TL;DR: Downloading "best" works again, language fixes, nerfed amount of messages in batch downloading on main form, updates the cached locations of ffmpeg and youtube-dl, label modifications.
Fixed downloading best quality audio and video being one index off.
Renames the "best" string in quality and format selection to the defined one in selected language
When batch downloading on the main form, it'll now only show 1 notice and you can choose to skip it every time. I still recommend using the batch form, but I understand using the main one for quick batch downloading.
The cached location of youtube-dl and ffmpeg are updated after saving the settings, so you can see what happens
lbFormat was updated to change anchor and size, so it looks more uniform with lbQuality.
haha if there's more i forgot :)
New translations:
Italian was updated (thanks @bovirus)
Spanish was updated (thanks @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Update 2.23
TL;DR: Addresses youtube-dl not downloading properly, portable settings, some language changes, and AtomicParsley being verified for existence. (AtomicParsley is used to embed metadata into downloaded files.)
The language file was updated to include more strings. It's template version is 1.1.
Added support for verifying AtomicParsley for embedding metadata into files. It's not really doing anything, but it's verifying that it exists. That's all.
Added support for portable mode. Create settings.ini in the same directory as youtube-dl-gui. Importing and exporting coming eventually.
Fixed updating youtube-dl in the program. Now it works, despite it working before. That one time.
Removed command line parsing for verifying youtube-dl and ffmpeg. You won't notice a difference.
New translations:
Arabic (Thanks to @salehif)
Russian (Thanks to @Qwest8K & @xetrin)
Spanish (Thanks to @XanGregor)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.23, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
v2.22 More bug fixes + Translations
This mainly addresses some issues with the visual form when loading non-English languages, and Reddit-based issues.
Allow frmMain + frmSettings to be resizable
Elements of frmMain and frmSettings will change location + size based on translated strings
Reddit videos are now parsed via regex instead of weird url checks. This means any site with "https://(www.)redd.(it)(com)" in the URL could techincally be considered false positives, but I doubt it since you can't have a colon in subfolders so this'll be the way it works. unless something breaks.
"Fix vreddit" is now enforced outside of video downloads. It does help, since audio does have glitches with youtube-dl's internal hls downloader. It also is enforced if you specified custom arguments, which I'll probably fix eventually, but eh, not a high priority.
Fix frmDownloader aborting problems, it properly aborts downloads now.
New translations:
German (Thanks to @qubit72)
Italian (Thanks to @bovirus)
(Translations are not installed automatically via in-application updates, download the zip to download them along with youtube-dl-gui, or if you're in the application go to https://github.com/murrty/youtube-dl-gui/releases/tag/2.22, alternatively, you can go to https://github.com/murrty/youtube-dl-gui/tree/master/lang and download a specific language file.)
Thanks to everyone using this, and the sites I see in the insights, it's really cool that people are interested in this project. Don't forget to wash your hands and stay away from people.
v2.21 Bug fixes
Radio buttons for the downloader and converter on the mainform are fixed to relocate based on the language properly.
Relocates any eligible controls when a language has been changed.
hey, this form finally sees its first use. isn't that cool? let's see if this updater works, it did in tests.
no it doesnt, youll have to manually update if you have 2.2, but thats ok, just go here -> https://github.com/murrty/youtube-dl-gui/releases/latest
v2.2
This release updates the way downloads are handled. They are now redirected into the application. On error, it won't automatically close the window, which also means if there's a non-issue error, it'll still alert you, which is better than not being alerted I guess.
Other than that, I added batch downloading, the ability to have a different language if its been localized in the desired language, and a bunch more options, such as the ability to select the format you want, and audio VBR. I'm aware that the main form's label "lbFormat" is like that, it's funny and I'm keeping it for now. Update notifications have been beautified to include more information, the updater itself has been updated, and the error system has been reworked in a manageable way.
The backend for the downloads have also been changed, now it'll download the best of the best instead of just mp4, but because mp4 is a format option you can still download as mp4. Webm was an option, but there's an issue with youtube-dl and ffmpeg where it'll freak out if you try to save it as a webm.
I expect there to be bugs, please report them in the issues tab.
2.2 Beta release 2
fixes some aggressive download form problems, among batch download form fixes
v2.2 Beta release 1
2.2 beta 1, look at the branch for 2.2 if you're interested in the source + changes.
I don't really like UI changes, but I had to make some minor changes to forms to get everything to fit.
v2.13 - Language update notification
nothing new, just a message box about upcoming language update.
thanks for coming to my git talk
v2.12
This includes some new things, but not a minor version number change because it's fixes.
The major addition is file merging, long ago requested. I researched into it. Hopefully it works well enough. (frmMain, Convert.cs)
TrayIcon hides when exiting, so it doesn't leave a icon on the tray. (frmMain)
Some more regions.. whatever me 10 days ago means by that... (frmMain.cs)
Added debug date handling from one source (frmMain, frmAbout, Properties.Settings)
Added some arguments for downloads outside of custom downloads, primarily used for nosound (Download.cs)
Added option to download sound, keep "Sound" checked if you want sound (frmMain)
Added miscellaneous tools (frmTools)
Added some buttons on the menu (Tools, Batch download, Misc tools) (frmMain)
Fixed quality combobox not enabling if selecting custom once (frmMain)
Fixed FileNameSchema not saving properly (frmSettings)
Compatible-only changes:
Renamed "Check for updates" to "View github releases"
2.11 - can you hear me now
Fixed quality being required when downloading, causing any videos with the best quality being lower than the one selected be undownloadable without selecting "best" (Download.cs)
Fixed audio not downloading (Download.cs)
Fixed the unnecessary amount of new calls in settings, for some reason... (frmSettings)
Moved 8K to the top, it fits better there. (frmMain, Download.cs)
Not available in this version, but being worked on:
Added batch downloading (frmBatch)
Added file merging (frmMain, Covert.cs)
Those instances of future additions are not visible in youtube-dl-gui-compatible because youtube-dl-gui-compatible is a build with new additions omitted until they're completed due to the differences in the code due to .NET Framework 3.5. Consider the compatible branch a different application due to the amount of code changes.
2.0: Merge pull request #8 from murrty/rewrite
Version 2 comes with a complete code redo, because i was bored and youtube-dl-gui was pretty laughable up to now.
My main goal is to make this as accessible to as many people as possible; this means that some power-user options aren't available... exception for custom arguments, which allow you to completely set what you want up.
+added better verification
+updated error logging process
+updated settings
+converter fully works
+static youtube-dl & ffmpeg
+better converter process
+more options for converting files, check the settings.
~audio still has a single setting, sorry.
+Summaries in code (for anyone interested)
+ A compatible version of youtube-dl-gui for people who are on, at least, .NET Framework 3.5. This should ensure that it works pre-Windows 7.
Debug changes:
Fixed the custom extensions being saved and removed the custom extension removal confirmation (frmSettings.cs)
Removed WaitForExit for downloading & converting. Makes bulk downloads/conversions easier. (Download.cs Convert.cs)
Changed "* completed" to "* started" for downloading and converting. (frmMain.cs)
Added a check for v.redd.it to fix any corrupted files that may get downloaded (Download.cs frmSettings.cs Downloads.settings)
Added Force-HTTPS for downloading. (Download.cs)
Hid the debug dates & moved the last debug date to the about form (frmMain.cs frmAbout.cs).
v1.651
bug fixes
v1.65
Github depreciated TLSv1.0 + TLSv1.1, so I use TLSv1.2, which means it re-requires .NET Framework 4.5.
Older versions also work, they just can't check for updates anymore.
v1.64
Textbox Hint.
Single-instances update, it'll now focus the program if you attempt to run it a second time.
v1.63
Fixed update not parsing cloud decimal with Metric decimal point (comma)
Any bug fixes, I'm not keeping track.
v1.62
More bug fixes
v1.61
Bug fixes
v1.6
Massive code overhaul.
Settings form changed, cleaner.
About form changed, reflects new Github.
Converting should be 100% functional. Only supposed 16:9 resolutions for now, send me some resolutions and I'll add them.
Added bitrate for video conversion, lower is better quality but higher file size.
Updater updated to now use Github's API, which means...
Yay, we're back to .NET Framework 4.0. Compatibility, and all that.
Remember, I make other programs, check them out.
v1.52
Selecting "Custom" in the downloader sets the quality & format index to -1, good for people who use custom arguments
Quality and format options are now changed when you try to download a video file or audio file (Download & Converter)
Tray downloads now get sorted into the folder, if sorting downloads is enabled
Added radio button to converter, doesn't do anything except change what's in the quality & format comboboxes list
Video quality still being worked on, for now you cannot specify a custom format or quality. Will fix ASAP
New versions always get tested. Trust me. Wink.
v1.51
Fixed saving format & qualty not saving
Fixed custom arguments not saving
Changed how custom arguments are saved
New settings form, now its organized
v1.5
Added option to save download quality & format
Added option to save conversion quality & format
Begun implementing a pinging system to determine network available, may scrap
Increased version number by +0.55
v1.45
Fixed converting files. Works now.
Made the url textbox disable when not on the download tab.
Removed supported sites form, waste of space.
Added option to disable update check for people who dont want to be bothered by dumb updates (like this)
v1.441
Fixed a bug where none of the other forms would stay visible.
v1.44
Added some memory collection to minimize memory leaking... not that it was leaking already, but you know just in case.
I did something else, I can't remember what.
v1.431
debug fix
Sorry.
v1.43
An update
Disabled site checking for audio & video downloading
Updated the updater... again.
Moved settings to a separate form once again.
Added about form
Renamed "Convert Audio" to "Converter"
Changed how downloads are done backend
Changed how conversions are done backend
Made the format and quality options contain both audio & video options.
v1.42
update the updater
Updated updater
Updated update check
Fixed bugs
optional update.
update sounds weird now.
v1.41
Bug fixes
bug fixes
v1.4
OctoKit + Updater
Requires .NET 4.5 (Already bundled with Windows 10, previous versions may need to download it.)
You can still run v1.3 for Windows 2003 or higher, if you do not want this, but my old HTML "parsing" will not be supported.
v1.3
Tray edition
Adds a tray, should be great.
v1.2
C# Rewrite
Update README.md
v1.1.2
Nobody will ever read this.
@obscurename obscurename released this 13 days ago · 1 commit to master since this release
Added .webm support.
Added FLAC to convertable audio options.
Defaulted audio quality to 256k.
Fixed the downloading so it works on the new layout.
Minor updates:
~ More hovering capability to view information on the objects within the program.
~ Changed the way settings get loaded. If it's read-only, it will nnot be changable within the program, but will still be readable.
~ Changed the link label URL.
v1.1.1
Minor bugfixes
@obscurename obscurename released this on Aug 7, 2016 · 15 commits to master since this release
~Fixed the "?" hyperlink in the "Download as" section as it appeared to overlap the "custom" option on certain Windows themes.
v1.1
Updater update
@obscurename obscurename released this on Aug 6, 2016 · 24 commits to master since this release
youtube-dl-gui:
+Updated version string to not include any ".0" integers within the app version when getting the app version.
+Renamed "Convert to MP3" tab to "Convert Audio"
~Moved "Settings" button to "About" tab
~Resized "Download" button
youtube-dl-gui-updater:
-Initial upload.
-Got version checking started, matches exact application version (with the ".0" integers) with the version on the github's "UpdaterInformation" file. This file is needed for software update checking with a direct link to the new version so updating is literally one click.
-Added the starting to "Custom file name" to the program, I initially want it to be a drag-drop function (drag the old version to the updater), but I'll see what I can do with it.
-Version checking the current version. I plan on adding this to the main program, but not yet.
If the versions match, exits updater.
If the file does not exist, it downloads a fresh copy of the latest version.
If the file is outdated, it alerts the user and then the user presses "continue" or "cancel" depending on what they choose.
Change log.
To install, replace your old youtube-dl-gui.exe or download the standalone. Or download the updater to automatically download, and to check for updates every now and then.
v1.0
Initial Release
@obscurename obscurename released this on Aug 4, 2016 · 30 commits to master since this release
Allows you to download youtube videos without asking you to buy it.
This program includes:
The ability to download youtube videos, playlists, or even channels, in an audio* or video format.
Basic GUI that I believe is very user friendly.
Does not ask you to "Buy PRO for $19.99 to get features like multi-video downloading!", but multi-video downloading may come in the future.
Convert video/audio files to different audio formats with different bit rates.*
Defaults to C:UsersDownloads on Windows. (I have not tested it on Wine, and probably never will)
To install:
Download the executable, or ZIP file
Place the .exe in a folder that you won't mess with, (ie: C:youtube-dl-gui)
In places that required administrative permission to place files, run the program as admin for the first time to download the required binary file to make it work. Afterwards, you will not need to run it as administrator again, unless you prefer to update the executable, then delete the youtube-dl.exe the program downloaded and re-run it as admin to redownload.
*You will need to install ffmpeg and add it to your PATH in order to allow Audio downloading/converting to work.
Quick Q&A:
Q: Why do you not support converting to video formats?
A: idk lol
Q: Why does it say "Convert to MP3" on the conversion tab?
A: oversight, ill get to it whenever i feel like lmao