Guest User

Untitled

a guest
Jun 30th, 2022
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Markdown 10.75 KB | None | 0 0

Универсальный способ, как делать клипы с twitch/wasd/goodgame стримов/водов с помощью mpv + yt-dlp + ffmpeg. Подсосов Мэда тред эдишн.

Сразу стоит приготовиться к тому, что гайд немного пердольный. Но по сравнению с другими способами он имеет преимущества.

Проблемы с функционалом сайта:

  • клип долго создаётся и его нужно ещё сохранить к себе на комп, чтобы запостить,
  • не всегда сайт даёт это сделать (например wasd),
  • если прозевал момент, то уже не получится отмотать и сделать (goodgame).

Проблемы с записью экрана:

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

Соответственно способ предложенный ниже позволит создавать клипы быстро, мгновенно их сохраняя с любого сайта + будут доступны для перемотки последние ~30 минут онлайна стрима, что позволит комфортно выбрать рамки клипа. Никаких онлайн сервисов, только локальные программы.

Установка

Речь будет идти о Windows 10. Те у кого Linux сами думаю смогут разобраться. Все программы ниже standalone и portable - скачал, распаковал и сразу можно запускать без установки.

mpv

Это видеоплеер с легковесной оболочкой, но огромными возможностями для найстроки через конфиг. Скачиваем отсюда самую свежую версию https://sourceforge.net/projects/mpv-player-windows/files/64bit/ (ссылка отсюда https://mpv.io/installation/). Распаковываем куда удобнее (лично у меня папка с mpv лежит в папке юзера C:\Users\<username>).

yt-dlp

Программа которая позволяет скачивать видео, открывать стримы с множества сайтов (её удобство вы ещё оцените, когда понадобиться скачать клип с твича например или видео с ютуба). Скачиваем отсюда https://github.com/yt-dlp/yt-dlp/releases yt-dlp.exe и кладём в распакованную папку mpv. Получится, что mpv.exe и yt-dlp.exe находятся в одной папке.

ffmpeg

Комбайнер по работе с видео/картинками. Скачиваем отсюда https://github.com/BtbN/FFmpeg-Builds/releases (ссылка отсюда https://ffmpeg.org/download.html#build-windows) посленюю версию ffmpeg-master-latest-win64-gpl.zip. Распаковываем куда удобнее (опять же у меня лежит в C:\Users\<username>).

Добавляем в переменные среды.

Для удобства добавляем в переменные среды, чтобы можно было в любом месте из консоли вызывать бинарнии. Поиск - win + r: "Изменение переменных среды текущего пользователя". В открывшемся окне в верхнем поле нажимаем на Path и после кнопку "изменить" и после кнопку "создать". Вписываем в поле путь до папки с mpv.exe (у меня C:\Users\<username>\mpv-x86_64-20191027-git-8e50d7a\). Аналогично делаем для ffmpeg.exe (у меня это C:\Users\<username>\ffmpeg-20191028-68f623d-win64-static\bin). Сохраняем, закрываем.

Теперь проверяем, что всё работает. Нажим win + r (я так кстати абсолютно все программы на компьютере открываю) в поиске вбиваем PowerShell. В окне консоли по очереди вбиваем mpv, ffmpeg, yt-dlp. Каждую из них он должен видеть.

Настройка mpv

В папке с mpv.exe создаем два текстовых файла input.conf (файл с биндами), mpv.conf (файл с настройками плеера).

В mpv.conf вставляем опции:

script-opts=ytdl_hook-ytdl_path=yt-dlp

cache=auto
demuxer-max-bytes=500000000
demuxer-seekable-cache=auto
demuxer-readahead-secs=360000

Как можно понять из названия опций они регулирует размер кэша плеера для онлайн видео. Чем больше вы сделаете цифры, тем больше стрима будет деражать в оперативке плеер. Редактируйте исходя из размера вашей оперативки. У меня 16гб, 500000000 байтов это 500 мегабайт. Можно было бы выставить гораздо больше, но на практике и этого хватало.

В input.conf добавляем строчку:

D ab-loop-align-cache; ab-loop-dump-cache "cache_dump.mkv"
В ab-loop-align-cache; ab-loop-dump-cache "cache_dump.mkv"
l ab-loop
д ab-loop

Теперь при нажатии на shift + d плеер будет дропать выставленный отрезок кэша. Что и нужно

Использование на практике

Итак всё готово к использованию. Создаем какую-нибудь папку, куда будут сохраняться клипы. Открываем её в проводнике. Нажимаем правой клавишей с зажатыи shift по пустому пространству. Выбираем "открыть окно powershell здесь".
Дальше варианты могут быть следующие:

https://www.twitch.tv/guit88man # если онлайн стрим на твиче
https://wasd.tv/guitman # оонлайн стрим на васде
https://hls.goodgame.ru/hls/191540.m3u8 # онлайн стрим на гудгейме. К сожалению yt-dlp не умеет в гудгейм, а значит ссылку на стрим нужно достать из консоли разработчик -> сеть -> филтр m3u8
https://www.twitch.tv/videos/1518354588 # вод на твиче
https://wasd.tv/guitman/videos?record=1043398 # вод на васде 
https://www.youtube.com/watch?v=MYto_2FP6G8 # любой видос на ютубе включая стрим

Берем соотвествующую нужную нам ссылку и вписываем в консоли:

mpv <URL>

Откроется плеер с этим видосом. Как это работает? mpv через yt-dlp достает видео с сайта и шлет поток в mpv. Поэтому <URL> в общем-то может быть любым из этого списка https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md

Итак у нас открылся плеер. Полоса посередине таймлайн бара внизу означает, что эта часть стрима находится в кэше среди неё мы можем свободно перемещаться через стрелочки (просто стрелочки - обычный прыжок, шифт + стрелочки - маленький прыжок).

Мы приметили кусок стрима, который хотим сохранить. Перематываемся в начало отрезка - жмём l. Перематываемся на конец - снова жмём l. После этого плеер зацикливается на этом отрезке (следующее нажатие l уберёт это). Теперь жмём shift + d - и в папку сохраняется cache_dump.mkv с этим отрезком.

Дальше открываем ещё одно окно PowerShell в этой папке и пишем:

ffmpeg -i cache_dump.mkv -c copy 1.mp4

ffmpeg просто без кодирования мгновенно перекладывает видеопоток в нужный нам формат mp4.

Всё. Можно клип постить на сосач.

Advanced

Любые вопросы по гайду или в целом по mpv или другим любым видеоплеерам можно задавать в соответствующем треде в /s (последний на момент написания https://2ch.hk/s/res/3150125.html)

Что можно ещё сделать дополнительно к этому гайду:

  • в mpv бинды зависят от раскладки, при этом в винде10 в мпв не получится нажатием клавиш сменить раскладку, так как mpv перехватит это нажатие. Можно либо дублировать бинды на русском, либо сменить мышкой раскладку, либо можно зафиксировать чтобы mpv запускалось с английской раскладкой вот так https://2ch.hk/s/res/3150125.html#3158215
  • научиться юзать плагины для mpv. соотвественно пригодятся следующие:
  • разобраться в настройках mpv (их оч много).
Add Comment
Please, Sign In to add comment