php:youtubedlproxy
Youtube-dl Proxy
Minimal (very dirty) script executing youtube-dl and displaying video in the web browser. Place in folder with the “youtube-dl” binary (non included), and open in web browser like this:
http(s)://domain.tld/watch?v=aqz-KE-bpKQ
(note: video is actually downloaded server-side, so make sure to have enough disk space and PHP script execution time while youtube-dl processes the video)
- .htaccess
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
- index.php
<?php if(!isset($_GET['v'])) die; exec('rm *.webm'); //purge previous videos // prepare URL and download WebM file format (highest→lowest quality) $id = $_GET['v']; $url='https://www.youtube.com/watch?v='.$id; exec('./youtube-dl -o "'.$id.'" -f 303+251/248+251/302+251/247+251/244+251/243+251/242+251/278+251/248+249/247+249/244+249/243+249/242+249 "'.$url.'" '); ?> <!DOCTYPE html><!-- <!DOCTYPE HTML PUBLIC> --> <html> <head> <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"> <meta http-equiv="Cache-Control" content="no-store"> <style type="text/css"> body { font-family:sans-serif;} video { max-width:70%; } </style> <body> <video src="<?php echo $id; ?>.webm" controls autoplay></video> <br><a href="<?php echo $url; ?>">video URL</a> </body> </html>
php/youtubedlproxy.txt · Dernière modification : 2020-11-12 18:09 de mitsu