<?php
$youtubeUrl = $_GET['url'];
$content = shell_exec("youtube-dl -j $youtubeUrl ");
$meta=json_decode($content);
$file= $meta->{'_filename'};
$fileWithoutExtension = explode(".",$file)[0];
$extension = ".m4a";
$file = $fileWithoutExtension . $extension;
header("Content-Disposition: attachment; filename=\"$file\"" );
header("Content-Type: application/octet-stream");
// $fize = shell_exec("youtube-dl -f 141 --get-size $URL");
// header("Content-Length: " . $fsize);
passthru("youtube-dl -f 140 -o - $youtubeUrl");
?>
Увидеть закомментированные строки. я нуждаюсь те два линий. Остальная часть кода работает нормально. Этот файл загружает аудио с YouTube. Но я не могу видеть ни размер файла во время загрузки
Поскольку у youtube-dl нет опции для отображения размера, вы можете посмотреть на ytdl
вместо этого он может дать вам все метаданные, например, размеры файлов.
установить:
$ pip install pafy
...
$ ytdl [url]
Stream Type Format Quality Size
------ ---- ------ ------- ----
1 normal webm [640x360] 21 MB
2 normal mp4 [640x360] 24 MB
3 normal flv [320x240] 19 MB
4 normal 3gp [320x240] 15 MB
5 normal 3gp [176x144] 5 MB
...
Других решений пока нет …