Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » youtube-dl | yt-dlp (Часть 1)

Модерирует : gyra, Maz

Maz (17-02-2024 09:09): youtube-dl | yt-dlp (Часть 2)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203

   

jasonliull



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Текущая версия: 2021.12.17


youtube-dl - бесплатная консольная программа для скачивания видео с YouTube и множества других сайтов.
Сейчас проект практически не развивается, скорость скачивания с YouTube не выше 100 кБ/сек - рекомендуется использовать yt-dlp.
официальные ночные сборки
 

 
youtube-dl с фиксом скорости, не требует SSE2
youtube-dl с фиксом скорости (другой вариант)
неофициальные ночные сборки youtube-dl  
 
 
 






yt-dlp - активный форк youtube-dl, рекомендуется к использованию.
Цели проекта: добавление новых функций, исправление известных проблем. Есть различия в поведении от основного проекта.
 
ytdl-patched - пока не понятный форк yt-dlp
 
yt-dlp для Windows XP x86
форк yt-dlp, есть вариант для Windows XP x86
примеры для начинающих (англ)
некоторые шаблоны и в чем-то более детальная документация, чем на оф-сайте (англ)
 
 
Графические интерфейсы

  • MediaDownloader (2023)
  • Metube (web-UI)
  • Tartube (2023)
  • Videomass (2023)
  • Vividl (2023)
  • youtube-dl-gui (murrty, 2022)
  • youtube-dl-gui (oleksis, 2023)
  • Stacher (2023)
     
    Полезное

  • ffmpeg.exe - yt-dlp/FFmpeg-Builds
  • BAT-ник от DeZz
  • кнопки от notinthewoods
  • BAT-ник, Downloader, расширения от 351878
  • Youtube Format IDs  
     


  • Всего записей: 2537 | Зарегистр. 05-08-2012 | Отправлено: 13:44 05-03-2018 | Исправлено: Maz, 09:07 17-02-2024
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Для воспроизведения видео с VK (ВКонтакте) с помощью плейера VLC.
    Скрипт PowerShell (расширение файла .ps1):

    Код:
    $url = Read-Host "URL"
    $vlc_exe = "C:\Program Files\VideoLAN\VLC\vlc.exe"
    $usag = ":http-user-agent=`"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36`""
    $link = & yt-dlp -g $url
    if ($LASTEXITCODE -ne 0) {
        Write-Host ""
        Write-Host "This video is unavailable" -ForegroundColor Red
        Write-Host "========================="
        Read-Host "Press Enter to exit"
        exit
    }
    #Write-Host $link
    #Read-Host "Press Enter to play"
    Start-Process "$vlc_exe" -ArgumentList "$link", "$usag"

    Примечание. Если видео по каким-то причинам недоступно, то получите сообщение типа:

    Цитата:
    URL: https://vk.com/video-213521124_456239723
    ERROR: [vk] None: Access to this video has been restricted by the community's managers
     
    This video is unavailable
    =========================
    Press Enter to exit:

    *****
    Адрес папки, где находится yt-dlp.exe, прописан в Переменные среды в переменную Path.

    Всего записей: 494 | Зарегистр. 31-01-2015 | Отправлено: 20:08 10-05-2023 | Исправлено: notinthewoods, 20:11 10-05-2023
    Nikolay1963

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Спасибо всё работает, а сохранить воспроизводимое видео можно?

    Всего записей: 135 | Зарегистр. 07-04-2021 | Отправлено: 06:15 11-05-2023 | Исправлено: Nikolay1963, 06:16 11-05-2023
    insorg



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nikolay1963
    Запрос форматов
    Код:
    yt-dlp.exe -F https://vk.com/video-##################
    Скачивание лучшего
    Код:
    yt-dlp.exe https://vk.com/video-##################
    Скачивание конкретного
    Код:
    yt-dlp.exe -f hls-900 https://vk.com/video-##################
    Циферки в hls-900 выбрать свои исходя из вывода доступных форматов.
    Циферки в ссылке видео вместо #### - тоже, естественно, свои из адресной строки при тыке по видео.

    Всего записей: 16744 | Зарегистр. 04-11-2010 | Отправлено: 17:16 11-05-2023
    Nikolay1963

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    insorg
    Спасибо, теперь понял.

    Всего записей: 135 | Зарегистр. 07-04-2021 | Отправлено: 17:56 11-05-2023
    greeple

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Цитата:
    Для воспроизведения видео с VK (ВКонтакте) с помощью плейера VLC.
    Скрипт PowerShell (расширение файла .ps1):

    а для чего так прописывать? из за юзерагента?
    можно же вот так

    Код:
    yt-dlp.exe -o - https://vk.com/video-25380626_456283287 | "C:\Program Files\VideoLAN\VLC\vlc.exe" -

    ну и юзер агент так же прописать сразу в запрос vlc, не особо понятен смысл расписывания переменных и т.д.
    хотя вариантов много не бывает. Лучше больше, чем вообще ничего

    Всего записей: 4241 | Зарегистр. 11-02-2020 | Отправлено: 19:09 11-05-2023
    FiLinX



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Цитата:
    Адрес папки, где находится yt-dlp.exe, прописан в Переменные среды в переменную Path.

    кстати, а чего в шапке то про это нету пошагового мануальчика?  
    многим ж так удобнее было бы, как с ффмпэг)
     
    упс.. а оно есть там оказывается)
    и как ручками прописать, 5-м пунктом там в  -  кнопки от notinthewoods
    и рег файлом в  -  BAT-ник, Downloader, расширения от 351878
    млин, не заглянув ляпнул(

    Всего записей: 1773 | Зарегистр. 05-05-2010 | Отправлено: 21:36 11-05-2023 | Исправлено: FiLinX, 22:06 11-05-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    greeple

    Цитата:
    yt-dlp.exe -o - https://vk.com/video-25380626_456283287 | "C:\Program Files\VideoLAN\VLC\vlc.exe" -

    Попробуйте подставить вместо прямой трансляции ссылку на сохраненное видео, например:
    https://vk.com/video-54140256_456240849
    и вы убедитесь, что у вас не будет работать перемотка ни вперед, ни назад. Потому что будет тупо идти прямое скачивание контента пофрагментно.
     
    1. Используя мой скрипт, можно мотать видео куда угодно и без тормозов. Работают горячие клавиши VLC для перемотки на короткий, средний, длинный шаги.
    2. Окно скрипта автоматически закроется, как только начнется воспроизведение видео в окне плейера.
    3. Окно с воспроизведением видео будет активным (т.е. сразу доступным для горячих клавиш) и поверх всех других открытых окон.
    *****
    Nikolay1963

    Цитата:
    Спасибо всё работает, а сохранить воспроизводимое видео можно?

    Помимо уже указанных способов, можно одновременно и смотреть и сохранять видео в плейере VLC. Если в меню Вид стоит галочка на "Доп. элементы управления", то на панели управления VLC есть кнопка "Запись".
    Указать папку сохранения: Меню - Инструменты - Настройки - Ввод/кодеки - Каталог для записей - Сохранить

    Всего записей: 494 | Зарегистр. 31-01-2015 | Отправлено: 22:08 11-05-2023
    FiLinX



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Цитата:
    можно мотать видео куда угодно

    вот это полезно!
    а кстати, может тогда через этот .ps1 и старт воспроизведения с нужного тайминга возможен, указанного в урле?  
    пример:  https://vk.com/video-176294899_456239776?t=25m20s
     
    а ещё вопрос в тему  -  если я в переменные среды путь пропатчую, и там будет всегда свежая ночнушка лежать, но мне нужно будет задействовать отдельно изменённую yt-dlp.exe, то вот если я консольную команду буду испольнять или батник, мне полным путём надо прописывать до того правленного yt-dlp.exe, или достаточно коротким с расширением но чтоб он в этой же папке был?
    ну то есть, чтоб не исполнялось системным патчем.

    Всего записей: 1773 | Зарегистр. 05-05-2010 | Отправлено: 00:47 12-05-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    FiLinX
    Легко же самому проверить:

    Код:
    yt-dlp -g https://vk.com/video-176294899_456239776?t=25m20s

    Получив direct_link, вставить в командной строке CMD:
    "C:\Program Files\VideoLAN\VLC\vlc.exe" "direct_link" :http-user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36"
    Надо полагать, yt-dlp игнорирует в данном случае ?t=25m20s
     
    Насчет разных версий yt-dlp. Проще указать в сценарии полный путь к исполняемому файлу, если используется не основная его версия:

    Код:
    ...
    $link = & "D:\47\yt-dlp_modified.exe" -g $url
    ...

     
    Добавлено.
    Впрочем, сейчас проверил, добавил файл yt-dlp_modified.exe в ту же папку, где лежит обычный yt-dlp.exe - скрипт работает и при таком раскладе:

    Цитата:
    $link = & yt-dlp_modified -g $url

    Раз названия разные, то и запустится соответствующий файл.

    Всего записей: 494 | Зарегистр. 31-01-2015 | Отправлено: 01:26 12-05-2023 | Исправлено: notinthewoods, 01:52 12-05-2023
    greeple

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Цитата:
    Попробуйте подставить вместо прямой трансляции ссылку на сохраненное видео, например:
    https://vk.com/video-54140256_456240849
    и вы убедитесь, что у вас не будет работать перемотка ни вперед, ни назад. Потому что будет тупо идти прямое скачивание контента пофрагментно.

    тогда тоже самое для potplayer, только путь надо поменять, у многих он портабл

    Код:
    $url = Read-Host "URL"
    $pot_exe = "путь до \PotPlayerMini64.exe"
    $usag = "/user_agent=`"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36`""
    $link = & yt-dlp -g $url
    if ($LASTEXITCODE -ne 0) {
        Write-Host ""
        Write-Host "This video is unavailable" -ForegroundColor Red
        Write-Host "========================="
        Read-Host "Press Enter to exit"
        exit
    }
    #Write-Host $link
    #Read-Host "Press Enter to play"
    Start-Process "$pot_exe" -ArgumentList "$link", "$usag"

     
    Добавлено:
    notinthewoods
    Цитата:
    Надо полагать, yt-dlp игнорирует в данном случае ?t=25m20s

    может он имел ввиду в ps1 у урла проверять после ? если есть время, то добавлять в старт процесс к вызову vlc еще и время старта видео, там же наверно есть такой флаг?
     
    Добавлено:
    типа такого :start-time=

    Всего записей: 4241 | Зарегистр. 11-02-2020 | Отправлено: 02:13 12-05-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    greeple
    Да, спасибо за подсказку.
    Как вариант:

    Код:
    $url = Read-Host "URL"
    $time = Read-Host "Enter start time in seconds or enter 0 to play from beginning"
    $start_time = "--start-time=$time"
    $vlc_exe = "C:\Program Files\VideoLAN\VLC\vlc.exe"
    $usag = ":http-user-agent=`"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36`""
    $link = & yt-dlp -g $url
    if ($LASTEXITCODE -ne 0) {
        Write-Host ""
        Write-Host "This video is unavailable" -ForegroundColor Red
        Write-Host "========================="
        Read-Host "Press Enter to exit"
        exit
    }
    #Write-Host $link
    #Read-Host "Press Enter to play"
    Start-Process "$vlc_exe" -ArgumentList "$start_time", "$link", "$usag"

    Конкретно, для t=25m20s это будет выглядеть так при запуске:

    Цитата:
    URL: https://vk.com/video-176294899_456239776
    Enter start time in seconds or enter 0 to play from beginning: 1520

     
    Добавлено:
    или так:

    Цитата:
    URL: https://vk.com/video-176294899_456239776?t=25m20s
    Enter start time in seconds or enter 0 to play from beginning: 1520

    Всего записей: 494 | Зарегистр. 31-01-2015 | Отправлено: 03:03 12-05-2023
    greeple

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    я pwsh не знаю, но можно же проверить в if есть ли в ссылке ? и если есть, то взять время из t= и подставить в старт, там еще высчитывать секунды надо и потом подставлять в секундах, так же можно?
     
    Добавлено:
    секунды получить можно вроде так
    New-TimeSpan
       [-Days <Int32>]
       [-Hours <Int32>]
       [-Minutes <Int32>]
       [-Seconds <Int32>]
       [-Milliseconds <Int32>]
       [<CommonParameters>]
     
     
    (New-TimeSpan -Minutes $min -Seconds $sec).TotalSeconds
     
    и тут только надо подставить минуты и секунды из ссылки (ну и часы) в if каким нибудь способом типа regexp
    есть https://learn.microsoft.com/ru-ru/powershell/module/microsoft.powershell.core/about/about_switch?view=powershell-7.3 switch с regexp
    есть https://learn.microsoft.com/ru-ru/powershell/module/microsoft.powershell.utility/select-string?view=powershell-7.3 тут вроде без, но какие то шаблоны есть
    есть -match https://learn.microsoft.com/ru-ru/powershell/module/microsoft.powershell.core/about/about_regular_expressions?view=powershell-7.3 тут тоже вроде должны быть

    Всего записей: 4241 | Зарегистр. 11-02-2020 | Отправлено: 03:26 12-05-2023 | Исправлено: greeple, 03:45 12-05-2023
    santias



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Порекомендуйте, пожалуйста, актуальную на сегодня YT-DLP GUI (в сборке) для WinXP, работающую без наличия установленных в ОС .NetFramework (обязательно) и VisualStudio (желательно), так как места для них на HDD очень мало.

    Всего записей: 698 | Зарегистр. 12-04-2016 | Отправлено: 12:07 12-05-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ///Обновленная версия///
    Для воспроизведения видео с VK (ВКонтакте) с помощью плейера VLC.
    Скрипт PowerShell (расширение файла .ps1):

    Код:
    $url = Read-Host "URL"
    $vlc_exe = "C:\Program Files\VideoLAN\VLC\vlc.exe"
    $usag = ":http-user-agent=`"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36`""
    $regex = "(?<=\?t=)\d{1,2}h?\d{0,2}m?\d{0,2}s?"
    if ($url -match $regex) {
        $t = $matches[0]
    } else {
        $t = "0"
    }
    $hours = [int]([regex]::Match($t, '\d+h').Value.TrimEnd('h'))
    $minutes = [int]([regex]::Match($t, '\d+m').Value.TrimEnd('m'))
    $seconds = [int]([regex]::Match($t, '\d+s').Value.TrimEnd('s'))
    $time = ($hours * 3600) + ($minutes * 60) + $seconds
    $start_time = "--start-time=$time"
    $link = & yt-dlp -g $url
    if ($LASTEXITCODE -ne 0) {
        Write-Host ""
        Write-Host "This video is unavailable" -ForegroundColor Red
        Write-Host "========================="
        Read-Host "Press Enter to exit"
        exit
    }
    Start-Process "$vlc_exe" -ArgumentList "$start_time", "$link", "$usag"

    Запустить скрипт, вставить URL видео, нажать Enter.
    Можно использовать ссылки вида:
    https://vk.com/video-176294899_456239776
    или с указанием времени начала воспроизведения, например:
    https://vk.com/video-176294899_456239776?t=25m20s
     
    1. Используя скрипт, можно перематывать видео без тормозов вперед-назад. Работают горячие клавиши VLC для перемотки на короткий, средний, длинный шаги.
    2. Окно скрипта автоматически закроется, как только начнется воспроизведение видео в окне плейера.
    3. Окно с воспроизведением видео будет активным (т.е. сразу доступным для горячих клавиш) и поверх всех других открытых окон.
    4. Можно одновременно смотреть и сохранять видео в плейере VLC. Если в меню Вид стоит галочка на "Доп. элементы управления", то на панели управления VLC есть кнопка "Запись".
    Указать папку сохранения: Меню - Инструменты - Настройки - Ввод/кодеки - Каталог для записей - Сохранить.
     
    Примечание. Если видео по каким-то причинам недоступно, то получите сообщение типа:

    Цитата:
    URL: https://vk.com/video-213521124_456239723
    ERROR: [vk] None: Access to this video has been restricted by the community's managers
     
    This video is unavailable
    =========================
    Press Enter to exit:

    *****
    Адрес папки, где находится yt-dlp.exe, прописан в Переменные среды в переменную Path.
    Как это сделать - см. п.5 в Примечание:
    http://forum.ru-board.com/topic.cgi?forum=5&topic=49719&start=1360#15
    *****
    Спасибо за помощь greeple, FiLinX

    Всего записей: 494 | Зарегистр. 31-01-2015 | Отправлено: 12:15 12-05-2023 | Исправлено: notinthewoods, 20:40 12-05-2023
    Nikolay1963

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    А для potplayer можите сделать скрипт?

    Всего записей: 135 | Зарегистр. 07-04-2021 | Отправлено: 18:24 12-05-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nikolay1963
    Я не пользуюсь potplayer, поэтому не смогу убедиться в правильной работе скрипта.

    Всего записей: 494 | Зарегистр. 31-01-2015 | Отправлено: 20:32 12-05-2023
    greeple

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Цитата:
    Попробуйте подставить вместо прямой трансляции ссылку на сохраненное видео, например:
    https://vk.com/video-54140256_456240849
    и вы убедитесь, что у вас не будет работать перемотка ни вперед, ни назад. Потому что будет тупо идти прямое скачивание контента пофрагментно.

    оно и вот так работает кстати, если передать ссылку, а не вывод, будет тоже самое (и в cmd и в pwsh, в cmd только & не нужна)
    yt-dlp.exe -g $url | & "путь\vlc\vlc.exe" - :http-user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36"
    вот еще сократил для себя (можно наверно ещё сократить циклами типа foreach, но лень, да и не так уж сильно сократится) нет смысла в проверке ошибки, если видео не воспроизведется, то в плеере ты ошибку увидишь
     

    Код:
    $url = Read-Host "URL"
    if ($url -like "*?t=*") {
        $hms = $url | Select-String -Pattern "(?<=t=)(\d{1,2})h?(\d{0,2})m?(\d{0,2})s?" -AllMatches
        $1 = $hms.Matches.Groups[1].Value
        $2 = $hms.Matches.Groups[2].Value
        $3 = $hms.Matches.Groups[3].Value
        if ($hms.Matches.Value -like "*h*") {$time = (New-TimeSpan -Hours $1 -Minutes $2 -Seconds $3).TotalSeconds}
        elseif ($hms.Matches.Value -like "*m*") {$time = (New-TimeSpan -Minutes $1 -Seconds $3).TotalSeconds}
        else {$time = $1}
    }
    yt-dlp.exe -g $url | & "путь до\vlc\vlc.exe" - :http-user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36" --start-time="$time"

     
    Nikolay1963
    Цитата:
    А для potplayer можите сделать скрипт?

    потплеер из командной строки раз через раз нормально запускает, я вот целый вечер пытался даже просто из cmd запустить видео по прямой ссылке с юзерагентом, ничего не получается, и один раз с реферер запустилось и потом второй раз уже нет, и теперь никак не запускается  
    тот который без времени работает нормально  

    Код:
     
    $url = Read-Host "URL"
    $pot_exe = "путь до \PotPlayerMini64.exe"
    $usag = "/user_agent=`"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36`""
    $link = & yt-dlp -g $url
    if ($LASTEXITCODE -ne 0) {
        Write-Host ""
        Write-Host "This video is unavailable" -ForegroundColor Red
        Write-Host "========================="
        Read-Host "Press Enter to exit"
        exit
    }
    #Write-Host $link
    #Read-Host "Press Enter to play"
    Start-Process "$pot_exe" -ArgumentList "$link", "$usag"

    время воспроизведения так же в секундах может быть /seek=24, у меня не получилось переделать, может у меня глюки какие то с ним

    Всего записей: 4241 | Зарегистр. 11-02-2020 | Отправлено: 03:28 13-05-2023 | Исправлено: greeple, 03:32 13-05-2023
    notinthewoods



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    greeple
    Ваш скрипт неправильно установит время начала воспроизведения, если подать, например:
    https://vk.com/video-176294899_456239776?t=1h8s
     
    Насчет отсутствия смысла в проверке ошибки - ну такое...
    В моем скрипте, где есть эта проверка, в случае ошибки - не запускается лишний процесс - vlc.exe

    Всего записей: 494 | Зарегистр. 31-01-2015 | Отправлено: 04:05 13-05-2023
    greeple

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    notinthewoods
    Цитата:
    Ваш скрипт неправильно установит время начала воспроизведения, если подать, например:

    у меня правильно воспроизводит 1час 8 секунд, в чем конкретно ошибка? ошибку понял
    Nikolay1963
    По потплееру сегодня еще раз посмотрел, не работает нифига. Потом взял ссылку из браузера (там просто в конце ссылки bytes диапазон убираешь и видео воспроизводится\скачивается) вставил и запустилось, и даже с того места которое вписал в /seek="150". Потом посмотрел различия с тем что выдает yt-dlp, отличия были только в адресе vkvd232.mycdn.me/ vkvd50.mycdn.me/, думал может в этом проблема, оказалось нет, и тот который только что работал, перестал работать, и теперь опять никакие не работают, короче странно он как то работает с vk
     
    Добавлено:
    так должно быть правильно  

    Код:
    $url = Read-Host "URL"
    if ($url -like "*?t=*") {
        $hms = $url | Select-String -Pattern "(?<=t=)(\d{1,2})h?(\d{0,2})m?(\d{0,2})s?" -AllMatches
        $1 = $hms.Matches.Groups[1].Value
        $2 = $hms.Matches.Groups[2].Value
        $3 = $hms.Matches.Groups[3].Value
        if (($hms.Matches.Value -like "*h*") -and ($hms.Matches.Value -like "*m*")) {$time = (New-TimeSpan -Hours $1 -Minutes $2 -Seconds $3).TotalSeconds}
        elseif (($hms.Matches.Value -like "*h*") -and ($hms.Matches.Value -notlike "*m*")) {$time = (New-TimeSpan -Hours $1 -Seconds $2).TotalSeconds}
        elseif ($hms.Matches.Value -like "*m*") {$time = (New-TimeSpan -Minutes $1 -Seconds $3).TotalSeconds}
        else {$time = $1}
    }
    yt-dlp.exe -g $url | & "путь до\vlc\vlc.exe" - :http-user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36" --start-time="$time"

    Всего записей: 4241 | Зарегистр. 11-02-2020 | Отправлено: 11:29 13-05-2023 | Исправлено: greeple, 11:49 13-05-2023
    Nikolay1963

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    greeple
    Спасибо!!!

    Всего записей: 135 | Зарегистр. 07-04-2021 | Отправлено: 13:49 13-05-2023
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203

    Компьютерный форум Ru.Board » Компьютеры » Программы » youtube-dl | yt-dlp (Часть 1)
    Maz (17-02-2024 09:09): youtube-dl | yt-dlp (Часть 2)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru