Topic: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Устаревшая информация, в SVPtube 1.2.0 решено более удобно,
ранняя версия скрипта отсюда удалена


О чем эта тема: к SVPtube 1.1.5 можно применить костыль, основанный на запуске скрипта, склеивающего аудио и видео дорожки с помощью ffmpeg.

0. Скачать, запустить SVPtube
1. Скачать ffmpeg, если еще нет. Качать можно оттуда, самое простое - скачать static-версию (можно 64-х битную), и из скачанного архива вытащить только один файл - "ffmpeg.exe".
2. Положить ffmpeg.exe куда-то, запомнить путь ИЛИ дописать этот путь в PATH
3. Скачать скрипт из этого сообщения, положить еще куда-то (можно туда же, куда ffmpeg)
4. Запустить скрипт (просто enter-ом из проводника), он скажет что "установился"
5. Открыть скрипт в текстовом редакторе, посмотреть в самом начале на три параметра:

videoPlayerPath - туда надо написать полный путь к плееру. Для примера там уже написан путь к mpc-hc, установленному его родным инсталлятором.
ffmpegPath - полный путь к ffmpeg.exe, запомненный на шаге 2. Если путь указывался в PATH, то можно ничего не менять
downloadPath - папка, куда клась скачиваемое. Если равно пустой строке, то будет скачивать в папку, в которой лежит сам скрипт.

Во всех путях каждая косая палка должны быть двойной: "C:\\video\\download\\...."

6. Перезапустить SVPtube, попробовать открыть какое-нибудь видео.

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

При запуске просмотра из SVPtube сначала появится вопрос - "смотреть или качать". ДА - смотреть, НЕТ - качать.
При ответе НЕТ откроется окно консоли с работающим ffmpeg, по окончании оно само закроется.
Появится вопрос - "смотреть ли скачанное?", и полный путь к получившемуся файлу.

Ограничения

Скрипту не известно название видео, поэтому имя файла равно текущей дате-времени, например: "yt-201444-17579.mp4"

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Ghostlamer
На ютубе нельзя скачать видео больше 720p

да ладно  big_smile

3 (edited by Ghostlamer 14-05-2014 13:42:19)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Chainik, я имел в виду через всякме плагины к браузерам в бол.случаев со звуком реально только 720p, а всё что выше уже без звука, т.к они чего-то поменяли и видео выше 720p хранится раздельно, отдельно видеоряд, отдельно звук, в разных местах.

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

да не может быть smile

5 (edited by NightFox 21-05-2014 21:01:19)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Ghostlamer, всё отлично качается, правда звук и видео качаются отдельными файлами, а дальше делаем так:

ffmpeg -i audio.m4a -i video.mp4 -acodec copy -vcodec copy finalvideo.mp4

Я сделал себе для удобства такой батник:

%~dp0ffmpeg -i "%~dpn1.m4a" -i "%~dpn1.mp4" -acodec copy -vcodec copy "%~dpn1_finalvideo.mp4"

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

6 (edited by Ghostlamer 20-05-2014 18:09:51)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

NightFox, мне как буд-то делать нехрена, как качать с ютуба по отдельности файлы и потом муксить, я могу замуксить, но но но...
Когда я хочу скачать с yt файл в высоком качестве,  нормально - ткнул -  скачал в 1440p со звуком - всё, без дополнительного муксинга из разделных частей. smile

А вообще вы по старнике делали, по отдельности скачали - замуксили.
Наткнулся на спец.скачивальщик http://www.4kdownload.com/ru/products/p … downloader , он 1080p и выше, сразу целиком со звуком качает.
Может пригодится кому, не всем же охота каждый раз с yt муксить два файла.

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Ghostlamer
сразу целиком со звуком качает

да щас
точно так же сначала скачивает два файла, потом ffmpeg-ом муксит


даже можно батник придумать, прикручиваемый к SVPtube, что бы тоже самое делал smile
SVPtube батнику два URL отдает, а дальше дело техники
наверняка ffmpeg-у можно прямо URL-ы подсунуть...

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

С пол-пинка не получилось, надо как-то очень хитро эскейпить url-ы, что бы они правильно оказались внутри батника, т.ч. с имеющейся версией svptube не выйдет.

9 (edited by Ghostlamer 20-05-2014 22:07:23)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

да щас
точно так же сначала скачивает два файла, потом ffmpeg-ом муксит

Факт в том что на выходе сразу же один файл получаем, а этого удобней, чем вручную муксить(после скачки) ffmpeg-м два.

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Chainik
даже можно батник придумать, прикручиваемый к SVPtube, что бы тоже самое делал smile SVPtube батнику два URL отдает, а дальше дело техники
Было бы неплохо.

11 (edited by NightFox 21-05-2014 21:00:34)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Chainik
С пол-пинка не получилось, надо как-то очень хитро эскейпить url-ы, что бы они правильно оказались внутри батника, т.ч. с имеющейся версией svptube не выйдет.
Кавычки не помогли? У меня оно тупо не даёт скачать, пишет  [http @ 00000000041df960] HTTP error 403 Forbidden и потом Input/output error. Видимо там надо мудрить с user-agent.
Тут кстати нашёл youtube-dl, оно не умеет само сшивать, но зато даёт скачать так же без сторонних сайтов и костылей, просто введя ссылку и указав качество (для лучшего качества видео можно указать «-f bestvideo», а для аудио «-f bestaudio»).

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

на "&" хорошо действует "^", на "=" - вообще ничего
ну и после любой первой же операции строка разваливается по "&"

плюнул, надоело  big_smile
зато с wscript хорошо получается smile

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

если сделать файл "mpc-hc.wsf", и указать его в HKCU/SVP/SVPtube  big_smile,
то как-то так:

<job id="svptube">
<script language="JScript">

var videoURL,audioURL;
switch(WScript.Arguments.length)
{
case 3: audioURL=WScript.Arguments(2);
case 1: videoURL=WScript.Arguments(0); break;
default: WScript.Echo("Check the script argumets!");
}

var cmd = "ffmpeg -i \""+videoURL+"\" ";
if(audioURL) cmd += "-i \""+audioURL+"\" ";
cmd += "-acodec copy -vcodec copy result.mp4";

var shell=WScript.CreateObject("WScript.Shell");
shell.Run(cmd,1,true);

</script>
</job>

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

lol

см. первое сообщение

15 (edited by NightFox 21-05-2014 22:37:29)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Chainik
на "&" хорошо действует "^", на "=" - вообще ничегону и после любой первой же операции строка разваливается по "&"плюнул, надоело   

Равно всегда нормально экранируется, а вот амперсанд в некоторых случаях нет.

Может кому пригодится:

echo ^=>> ^=.log
echo ^=^=>> ^=^=.log

:: проценты не экранируются через ^
echo %%>> %%.log
echo %%%%>> %%%%.log

echo ^(^)>> ^(^).log

echo "^&">> "^&".log
echo " &">> " &".log
:: он тупо не хочет создавать когда идёт первым знаком, вот так создаст:
echo ^&>> %~dp0^&.log
echo ^&^&>> %~dp0^&^&.log
echo ^=^&>> ^=^&.log

echo ^^>> ^^.log
echo ^^^^>> ^^^^.log

echo ^" " ">> ''.log
echo " "" ">> ''.log
echo ^" " " " ">> ''.log

pause

16 (edited by NightFox 22-05-2014 00:28:13)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Chainik, можно добавить ещё 1440p? (Preferred resolution)

Кстати батником всё равно не получилось бы:

Слишком длинная входная строка.

Cтрока выходит больше 8185 знаков.
А жаль, батник вышел короче.

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Батник короче, а скрипт гибче. Сюда можно в начало воткнуть вопрос "смотреть или качать", тогда будет вообще красиво.

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

В первом сообщении красивый юзабельный вариант.

19 (edited by NightFox 23-05-2014 14:20:09)

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Chainik
Батник короче, а скрипт гибче. Сюда можно в начало воткнуть вопрос "смотреть или качать", тогда будет вообще красиво.
В батнике тоже можно. Есть команда CHOICE. Ну ладно, это уже не важно.

Советую кстати для ffmpegPath сделать то же самое что и для downloadPath, чтобы если ffmpeg.exe лежит рядом со скриптом не надо было ему путь указывать.
По умолчанию путь к проигрывателю можно прочитать отсюда «HKEY_CLASSES_ROOT\Applications\mpc-hc.exe\shell\open\command» (если не указан путь вручную).
Ну или читаем «HKEY_CLASSES_ROOT\.avi» дальше переходим в «HKEY_CLASSES_ROOT\_считанное_значение_\Shell\Open\command» и получаем путь к проигрывателю.

Ещё видео можно обзывать согласно данным после ?v= и добавить качество. Получается что-то типа xXxXxXxXxXxX_720p.mp4

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

NightFox
Тут кстати нашёл youtube-dl

а, думаешь, автор каждого очередного "скачивальщика" сам все страницы разбирает и код рожает?  big_smile
youtube-dl - центр всех знаний человечества по теме выдергивания ссылок на онлайн видео на всех 100+ популярных сервисах
жаль что я узнал это так поздно  roll

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Только вот я не до конца понял. Когда скачиваю с помощью загрузчика (Internet Download Manager из Хрома), видеофайл сохраняется в контейнере WebM и с кодеком VP9. А когда с помощью данного скрипта, то видео выходит в mp4 и кодек AVC, и размер видео почти в 2 раза больше, чем у WebM. Выходит, ffmpeg перекодирует, а не ремуксит?
Или при использовании данного скрипта ютубу подставляется другой юзер-агент, который "типа не понимает WebM и VP9", и ютуб отдает ему mp4 и AVC. Тобишь, выходит, ютуб хранит все видеозаписи, помимо разного разрешения и качества, еще и в разных форматах и кодеках?

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Похоже, я сам правильно ответил на свой предыдущий вопрос. В Хроме видео идет через HTML5, соответственно WebM и VP9, а в других браузерах Flash и AVC. Тогда назревает новый вопрос. У какого кодека качество роликов выше. По логике, если ютуб не хранит исходников заливаемых роликов (а скорее всего, так и есть), то старые ролики он переконвертирует из AVC в VP9, что понятным образом даёт потерю в качестве. А новые ролики параллельно конвертирует в VP9 и AVC (хочется надеяться, ведь может тупо Исходник -> AVC -> VP9), то если верить хвалебным одам VP9, в теории, качество новых VP9 может быть выше.

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

У VP9 на ютюбе битрейт тупо в два раза ниже чем у AVC. Надо качество сравнивать...

Re: Проект закачки файлов со звуком через SVPtube, УСТАРЕЛ

Устаревшая информация, в SVPtube 1.2.0 сохранение видео решено более удобно + есть субтитры.