LINUX.ORG.RU

vlc & youtube

 , ,


1

2

день добрый!
не очень давно, возможно неделя-две ютуб что-то нарсрулил так, что vlc теперь не кажет (уточняю - vlc до этого нормально показывал ролики)
набег на ошибки - ни чего не дал
кто как выкручивается?! в смысле, смотрит ютуб на чем-то «альтернативном» (на моем ThinkPad T460 ютуб смотреть невозможно, пробовал всяко нарулить, подключал/отключал/настраивал/обратно удалял всевозможные плагины, ад-блоки итд для оперы - все тщетно)
- slackware-15.0
- vlc-3.0.19
- opera-89.x

если будут нужны выхлопы/подробности - будут позже
спасибо

★★★★

Надо настроить аппаратное ускорение и на всём ютуб смотреть будет возможно.

Ну а с VLC вариант

vlc `yt-dlp -g -f 137 $url` --input-slave `yt-dlp -g -f 140 $url`

damix9 ★★★
()

У тебя вроде четыре звезды, а информации ты дал как новорег… Я как использовал mpv+yt-dlp так и использую на x230, «кажет» нормально. Единственное где есть проблема - это видео с vk. Там по умолчанию видео запускается в максимальном качестве и в какой-то момент происходит рассинхрон видео и звука. Помогает перемотка на 5с вперед, но вскоре проблема повторяется.

anonymous
()
Ответ на: комментарий от anonymous

Там по умолчанию видео запускается в максимальном качестве

$ cat ~/.config/mpv/mpv.conf
ytdl-format=bestvideo[height<=?360]+bestaudio/best
geometry=40%x40%
anonymous
()

Похоже это не частный случай и проблема действительно существует. Во всяком случае она озвучена на forum.videolan.org, как недавно возникшая. Но решения там нет.

krasnh ★★★★
()
Ответ на: комментарий от krasnh

вот что значит друг! он в беде не бросит и протянет руку! :о)

sunjob ★★★★
() автор топика
Ответ на: комментарий от anonymous

вроде четыре звезды, а информации ты дал как новорег

ну правда, а?!

если будут нужны выхлопы/подробности - будут позже

если что нужно - спрашивайте, обязательно отвечу, дополню и поясню!

времени нет описывать все дотошно, а проблема есть, появилась недавно (и это точно закрутка гаек со стороны ютуба), кто в теме/пользуется «этим» - тот в курсе

по поводу связки mpv+yt-dlp - есть ихь у меня, но как-то со временем отвалилась/не пользуюсь (причины уже не помню, видимо, были) - и остался удобный/привычный vlc (вот что еще может быть удобнее?! без всяких доп.зависимостей, пихтоновских наворотов и пр.пр.пр... :о)

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

p.s. удачки :о)

sunjob ★★★★
() автор топика
Ответ на: комментарий от anonymous

тоже вываливает с ошибкой

mpv https://youtu.be/NDXZHdYi1-k
[ffmpeg] https protocol not found, recompile FFmpeg with openssl, gnutls or securetransport enabled.
[ffmpeg] Protocol not found. Make sure ffmpeg/Libav is compiled with networking support.
Failed to open https://youtu.be/NDXZHdYi1-k.
[ffmpeg] https protocol not found, recompile FFmpeg with openssl, gnutls or securetransport enabled.
[ffmpeg] Protocol not found. Make sure ffmpeg/Libav is compiled with networking support.
Failed to open https://

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 1)
Ответ на: комментарий от damix9

проверил, выдает кучу ошибок, но в конечном итоге vlc запускается и начинается показ

спасибо

sunjob ★★★★
() автор топика

как промежуточный итог
- vlc - поломан свой механизм «хитрой загрузки»
- ytdl - в связке с vlc работает нормально
(видимо, ютуб еще не добрался до нее)

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 1)
Ответ на: комментарий от sunjob

А что выдает?

Можно прописать в файле /usr/local/bin/yt-vlc

#!/bin/bash
url=$1
vlc `yt-dlp -g -f 137 $url` --input-slave `yt-dlp -g -f 140 $url`
А потом поставить в браузер расширение «Open With» и в качестве команды ему указать yt-vlc.

damix9 ★★★
()
Ответ на: комментарий от sunjob

Если бы речь шла об одном vlc, то можно было бы говорить об его проблемах с ютубом, но то, что не воспроизводит и на mpv, это уже надо разбираться или с системой или с версиями mpv и yt-dlp. Потому-что и у меня и наверно у всех, он воспроизводит.

krasnh ★★★★
()
Ответ на: комментарий от damix9

А что выдает?

WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] HTTP Error 400: Bad Request. Retrying (1/3)...
WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] HTTP Error 400: Bad Request. Retrying (2/3)...
WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] HTTP Error 400: Bad Request. Retrying (3/3)...
WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] Unable to download API page: HTTP Error 400: Bad Request (caused by <HTTPError 400: Bad Request>); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] HTTP Error 400: Bad Request. Retrying (1/3)...
WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] HTTP Error 400: Bad Request. Retrying (2/3)...
WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] HTTP Error 400: Bad Request. Retrying (3/3)...
WARNING: [youtube] YouTube said: ERROR - Precondition check failed.
WARNING: [youtube] Unable to download API page: HTTP Error 400: Bad Request (caused by <HTTPError 400: Bad Request>); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
VLC media player 3.0.19 Vetinari (revision 3.0.19-0-g32b50de2a28)
[0000000001061290] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[00007f80403003a0] mp4 demux: Fragment sequence discontinuity detected 1 != 0
[00007f8024006b70] gl gl: Initialized libplacebo v5.264.1 (API v264)
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
[00007f8024006b70] glconv_vaapi_x11 gl error: vaInitialize: unknown libva error
[00007f8024006b70] gl gl: Initialized libplacebo v5.264.1 (API v264)
[00007f8024006b70] gl gl: Initialized libplacebo v5.264.1 (API v264)
[00007f80404b9a10] mp4 demux: Fragment sequence discontinuity detected 1 != 0
[00007f80406a5740] gnutls tls client error: Error in the pull function.
[00007f80406a5740] gnutls tls client error: Error in the push function.
[00007f80400c4b50] gnutls tls client error: Error in the pull function.
[00007f80400c4b50] gnutls tls client error: Error in the push function.

у меня свой стиль :о)

#!/bin/sh

YT_DL=yt-dlp_linux-2023.10.13
URL=$1

if [ -z "${URL}" ]; then
echo "URL - is void, exit..."; exit 1
fi

echo "### youtube downlod & vlc ###"
#vlc $(yt-dlp -g -f 137 $URL) --input-slave $(yt-dlp -g -f 140 $URL)
vlc $($YT_DL -g -f 137 $URL) --input-slave $($YT_DL -g -f 140 $URL)
beep_ok

sunjob ★★★★
() автор топика
Ответ на: комментарий от krasnh

и наверно у всех

за всех не надо :о)

а по поводу «поломки» - вам-же говорят что это «ютуб подкрутил». следите за новостями! :о)
p.s. ну или пошушукайте по новостям, почитайте, сделайте выводы сами (так оно и надежнее)

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 2)
Ответ на: комментарий от damix9

именно так и запускал в начале... :о)

все равно не будет уметь играть full hd, а yt-dlp умеет

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

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 1)
Ответ на: комментарий от sunjob

вам-же говорят что это «ютуб подкрутил». следите за новостями!

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

damix9 ★★★
()
Ответ на: комментарий от sunjob

это «ютуб подкрутил»

Ютуб постоянно это делает, поэтому лучшее средство - пользоваться приложениями использующими yt-dlp, который в режиме 24/7 ) отлавливает изменения, правится и обновляется.

krasnh ★★★★
()
Ответ на: комментарий от damix9

ой... не дай бог... :о)
я жестко держусь за «стабильные релизы» (в ковычки взял спецом)... работаю на старом/проверенном до тех пор пока можно не обновляться (ну, вы меня поняли, наверное), да и не люблю когда софт сам-от-себя обновляется (это моя прерогатива - на своих раб. станциях сам рулю/обновляю/ставлю/удаляю)... ну так... в 2х словах :о)

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 1)
Ответ на: комментарий от damix9

ну это я товарищу krasnh писал...
ну так-то да... :о)

sunjob ★★★★
() автор топика
Ответ на: комментарий от krasnh

вот тут то и проблема - обновлять на автомате это малость «безумие» (спорить и продолжать не буду, но преценденты/ссылки есть), поэтому выбирается «золотая середина»...
все основывается на опыте/наработках

sunjob ★★★★
() автор топика
Ответ на: комментарий от sunjob

Я тоже живу по принципу «работает - не трожь». Но качалки и сторонние плеера ютуба не бывают стабильными, они должны обновляться как только, так сразу, иначе очень с большой вероятностью перестанут работать. Десятилетиями актуальной может быть какая-нибудь программа для физических расчетов типа Coil64.

damix9 ★★★
()
Ответ на: комментарий от damix9

yt-dlp_linux-2023.10.13

Это похоже сборка с питоном. Там есть уже новее версия https://github.com/yt-dlp/yt-dlp/releases/download/2024.05.27/yt-dlp_linux.

krasnh ★★★★
()
Ответ на: комментарий от sunjob

Дык суть не в последовательном скачивании и скармливаии файла плееру, а в том, что при установленном yt-dlp ты просто отдаёшь ссылку на видео mpv и смотришь сразу.

Grapow ★★
()
Ответ на: комментарий от sunjob

Ну, все же там есть выбор, с питоном yt-dlp_linux (27.2 MB) или без - yt-dlp (2.8 MB). И, честно говоря, сборки редко кто берет, можно сказать это событие на ЛОРе. )

krasnh ★★★★
()
Ответ на: комментарий от krasnh
cat yt-dlp 
-->
#!/usr/bin/env python3

да, теперь вижу :о)

sunjob ★★★★
() автор топика
Ответ на: комментарий от sunjob

Да и вообще, нафига тебе «сборка»? (фи, какая мерзость). Если нет возможность поставить родной для для дистрибутива пакет,

pip install yt-dlp

и все дела.

Grapow ★★
()
Последнее исправление: Grapow (всего исправлений: 2)
Ответ на: комментарий от Grapow

фи, какая мерзость

таки не пользуйтесь уже, кто вас заставляет есть эту рыбу?!
если по делу, то давайте развернутый ответ «сборка vs несборка», плюсы, минусы, хреньки-мандреньки
мне пофих на фобии: работает? заверните, пожалуйста! и точка! :о)

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 1)
Ответ на: комментарий от Vilicus

Которое почему-то не умеет показывать ролики в 1080?

Grapow ★★
()
Ответ на: комментарий от Grapow

прям беда с вами, с молодыми! :о)
бидон - это как «болото», тут можно постоять (какое-то время), а тут можно и сразу «зачерпнуть» да и утонуть...
спасибо, продолжать не будем?! :о)

p.s. сборка уже тем хороша, что то болото, кот. находится в этой самой сборке, не выплескивается наружу и не портит жизнь всем животинкам :о)

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 3)
Ответ на: комментарий от Vilicus

Crystal - он-же компилируемый?! как собирать не нашел (ладно, подглядим у арча)

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 2)
Ответ на: комментарий от sunjob

Хочешь сказать, что в твоей системе нет питона, ты его всячески избегаешь, поэтому хочешь сам скрипт и его зависимости огородить?

Grapow ★★
()
Ответ на: комментарий от damix9

потестил, получается какое-то 50х50 (что-то кажет, что-то нет, причем ошибка валят те-же самые...)

sunjob ★★★★
() автор топика
Ответ на: комментарий от sunjob

Ну у этой команды есть недостаток, она качает только то, где есть указанные форматы. Можно так попробовать

vlc `yt-dlp -g -f bestvideo $url` --input-slave `yt-dlp -g -f bestaudio $url`
Вообще посмотреть, какие форматы есть
yt-dlp -F <ссылка>

damix9 ★★★
()
Ответ на: комментарий от damix9

Но я считаю, что писать свои скрипты и вообще смотреть (не качать) ютуб сторонними программами - XY problem. Необходимость этого - побочный эффект от использования Линукса, на котором не работает аппаратное декодирование. Надо решать конечную задачу, а не обходить ее.

damix9 ★★★
()

Да не кажет, гугл апи видать опять обновил.

alll81
()
Ответ на: комментарий от damix9
#!/bin/bash
url=$1
vlc `yt-dlp -g -f 137 $url` --input-slave `yt-dlp -g -f 140 $url`

Зачем 2 раза запускать yt-dlp? это же дольше, можно за раз получить ссылки на видео и аудио:

#!/bin/bash
url=$1
u=($(yt-dlp -g -f 137+140 $url))
vlc ${u[0]} --input-slave ${u[1]}
yandrey
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.