Hacker News new | past | comments | ask | show | jobs | submit | rg3's comments login

Thanks, I've reported that to the current maintainers.


Note in C you can get the correct result if you use long doubles, which normally go to 80 bits[1]:

printf("%Lf\n", 9999999999999999.0L - 9999999999999998.0L);

In my x86_64 computer it breaks when you add enough digits. At this point it started outputting 0.0 as the difference:

printf("%Lf\n", 99999999999999999999.0L - 99999999999999999998.0L);

With 63 bits for the fraction part you more or less get around 19 decimal digits of precision, and the expression above uses 20 significant digits.

[1] https://en.wikipedia.org/wiki/Extended_precision#x86_extende...


Thanks for your kind words on behalf of the current team.[1]

[1] http://rg3.name/201408141628.html


Actually, the project started as far back as 2006 and moved to git in 2008, hence the first commit having that date. I don't remember the exact day I started the project, but on freshcode (formerly freshmeat), the first listed version is 2006.08.08.


thank you. I was careful to word my sentence to not imply that the project was necessarily started in 2008.


youtube-dl -F VIDEO_URL will give you a list of formats in YouTube, that you can choose using the -f option. DASH streams contain only video or only audio normally.


If your phone supports OGG and you're downloading from YouTube, you can download format 171 (-f 171) and change the container to OGG with ffmpeg. That way you won't lose any quality.


If your music player supports OGG, you can also use youtube-dl -f FORMAT VIDEO_URL and give a numeric format that corresponds to a DASH webm audio-only stream, with vorbis audio (e.g. format 171 these days). The container is webm but it can be trivially changed to OGG with ffmpeg, which you can call via --exec automatically.

Edit: I mentioned that because you don't lose any quality reencoding.


As it was pointed out the first time youtube-dl was on Hacker News, our user base seems to be split regarding that behavior. When you copy a URL from a playlist, the URL includes both the video id and the playlist id.

Some people want to download the whole playlist when passing a URL from one of the videos (because otherwise it's hard to get an URL that contains just the playlist). Some other people just want to download the video they are currently watching.

That's why we have the --no-playlist option, which you can use and even stick in the configuration file. There's also --yes-playlist to override the configuration file if you need to.


Why not drop to a "did you want the playlist, or just this video?" prompt?

Side-benefit: force care to be taken to be explicit if used in a script.

Personally, without reading any docs the first thing I did was paste in just a video ID (i.e. not the entire URL) so it seems natural to me that including both would be ambiguous.


> Why not drop to a "did you want the playlist, or just this video?" prompt?

Introducing breaking changes like this are no longer an option once your program has more than 5 users.

In addition, well-behaved command line programs aren't supposed to gratuitously prompt for input anyway.


That was indeed the original purpose.


Awesome! Not long ago I switched to mpv from mplayer. mpv being able to use youtube-dl without any glue script would be fantastic.


Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: