Youtube-DL for handling of web-videos...

Adam Albrec's Avatar

Adam Albrec

20 Jan, 2014 11:16 PM

Dear Cameron and the bunch:

I'm almost done with my final big PPC Applescript app, and will send you the link once it is done. It turns out that the web-video python applet youtube-dl, is completely workable in 10.4, and since it works clear back to Python 2.6, should be usable with updates for years to come. Anyway, have created a G.U.I. for it that prompts for a URL of a page with the desired video, then has three buttons below, "Download Video", "Stream to QuickTime" (With Perian obviously) and "Check for Updates".

All modules work great, though terminal windows are still needed to show download progress, but the good news is that it not only works for Youtube, but over 150 different websites, including some like DailyMotion, and the Vevo videos on Youtube, and plays very fast. for both the "Download" and "Stream to QuickTime" buttons, a followup list appears asking for the desired resolution and includes 480p FLV, 480p MP4, 720p MP4, 1080p MP4, and both SD and HD WebM varieties. Additionally, for the download link, have worked out a terminal script to use ffmpeg to automatically convert the downloaded video to HQ 256Kb MP3 and delete the video once done.

A few nice extras is that the script will remove all the underscores and other random characters and the resulting download is titled the way and actual human would. Also all the random, extra text that Youtube often ads to the end of the URLs, is automatically removed using a SED interpreter so that the user doesn't have to selectively copy the URL.

The update button will check for a new version, download it if it exists and then prompt for a password to make it executable in one motion.

Will send a link so you can check it out. Might be a good place to look to keep T.F.F. web-video friendly for years to come. Also, since it isn't limited to Youtube, might really open up the scope of the program.

My script will be done tomorrow, will send a link then.

  1. Support Staff 1 Posted by Cameron Kaiser on 21 Jan, 2014 01:33 AM

    Cameron Kaiser's Avatar

    That certainly sounds very compelling, but how does it integrate with TenFourFox? Did you design an add-on to connect the pieces? Have you thought about using something like Platypus to add a GUI overlay to the progress indicator?

  2. 2 Posted by Adam Albrec on 04 Oct, 2017 09:47 PM

    Adam Albrec's Avatar

    CK: just made a FoxBox to work on a Wordpress site for a customer (works
    great still), but even under the new 1.0.1 Wordpress is giving me the
    "Outdated Browser" spiel.

    No biggie - just reporting it.

  3. 3 Posted by Adam Albrec on 11 Mar, 2018 09:00 PM

    Adam Albrec's Avatar


    Have been brainstorming with the guy over at Sevan.Mit and he thinks if we do a /usr/pkg install of OpenSSL and Python we can bypass a lot of problems with new TLS.
    Things has got me thinking however about NTP. Even TenFourFox relies on NTP to do its job. He has a newer version of it too, that I'm testing. But since Apple's time-servers are probably hard-coded in, do you know what bash command framework I would start with?

    To deal with the security exploit you observed a while back, my set uses an invisable process that runs COMMAND=/usr/sbin/ntpdate -u every hour, and has worked great. Is it possible to do something similar calling his new version of NTP with an explicit time-server address? Would their be any security things to worry about??

    All ideas welcome.


  4. Support Staff 4 Posted by Cameron Kaiser on 11 Mar, 2018 10:55 PM

    Cameron Kaiser's Avatar

    No, there shouldn't be any issues with a specific timeserver address as long as it's a public one. I would recommend using multiple servers instead of just one to avoid overreliance on any one system (i.e., pass multiple server names), and the public servers you prefer should be stratum 1 or 2.

    In my case, I now have a hardware GPS-based stratum 1 time server on my own network, so I no longer have a need for public time sources.

    FWIW, the TenFourFox Downloader contains its own version of OpenSSL. The library is statically compiled into the curl binary it uses, so there is no need to install anything in /usr/pkg. I think this would be preferable to avoid breaking other binaries which may not be ABI-compatible.

  5. 5 Posted by Adam Albrec on 11 Mar, 2018 11:04 PM

    Adam Albrec's Avatar

    That's what I was hoping for!!


    On 3/11/18 3:55 PM, Cameron Kaiser wrote:

  6. Support Staff 6 Posted by Cameron Kaiser on 11 Mar, 2018 11:06 PM

    Cameron Kaiser's Avatar

    Note that I would use hostnames, not IP addresses, since some may be pool addresses or round-robins.

Reply to this discussion

Internal reply

Formatting help / Preview (switch to plain text) No formatting (switch to Markdown)

Attaching KB article:


Attached Files

You can attach files up to 10MB

If you don't have an account yet, we need to confirm you're human and not a machine trying to post spam.

Keyboard shortcuts


? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac