LINUX.ORG.RU

Я создал youta: TUI для Ютуба, ЯндексМузыки, локальных файлов/аудиокниг (запоминает где играл), радио (показывает текущий трек), подкасты

 , , , ,


2

2

Люблю Ютуб, и обычно перед сном слушою его. На старом ноутбуке. Где от обычного Ютуба - включается вентилятор. Спасался юзерскриптом который оставлял только аудио. Пробовал разные TUI для Ютуба - везде было чтото не то. И вот решил попробовать через LLM сгенерировать себе то что хочется. А с LLM знаете как - вместо записи в TODO новой функциональности - можно ему сказать - и он сделает. Так что обросла моя youta многими полезными кнопками.

Audio-only. Играет через mpv. В фоне - yt-dlp. Также используется API Ютуба - для комментариев.

Помимо Ютуба - поддерживаются и многие другие онлайн площадки.

Гетерогенные плейлисты - это значит можно составлять из разных источников - то есть например сначала играет с Ютуба, потом с ЯндексМузыки, потом локальный файл, потом ещё откуда то.

Такая же гетерогенная история.

Реклама пропускается - если в таймкоде написано «Реклама» и через SponsorBlock. Альтернативный заголовок показывает рядом - через DeArrow.

Codex, Rust. Стартует моментально. Экономит CPU, RAM, батарею. Один исполняемый файл - около 20 мегабайт. Есть Gentoo ebuild - в том числе bin. Есть i686 сборка - чтобы ваш древний компьютер приносил пользу.

Знакомый аудиофил рассказывал что у них Gentoo считается лучшей системой - потому что можно использовать alsa и убрать лишнее - так что возможно тут и этот кейс.

Можно оставлять локальные «комментарии»-заметки.

Интегрирован с AcoustID - когда по горячей клавише - делает отпечаток - и находит Викиданные - не по метадате - а по звуку.

Есть горячие клавиши для перехода между главами Ютуба.

Можно показать QR для локального файла, папки, канала Ютуба - и получить podcast xml в свой телефон. Без промежуточного сервера - генерируется LAN ссылка.

Можно скачать весь Ютуб канал.

Шортсы показывает по умолчанию - но есть кнопка отключения.

По подписке - может на старте автоматически скачивать новые аудио.

Синхронизации с подписками Ютуба нету.

Можно дать линк на любую страницу - и youta вынимет оттуда то что можно проиграть.

Есть загрузка в Wikimedia Commons, Evernote. Саммари из LLM можно получить - для этого скачиваются captions.

Доступна и GUI версия на веб технологиях - мой друг добавил - не нравится ему TUI.

На выходе проверяет - если ~/.config/youta/ под гитом - делает коммит и пуш - чтобы сохранить подписки, историю, заметки.

Использую в TTY. Нравится.

MIT.

https://github.com/vitaly-zdanevich/youta

Рассказывал на митапе о нём https://www.youtube.com/watch?v=swzZX4Y30Ak



Последнее исправление: vitaly-zdanevich (всего исправлений: 4)

Заглянул по ссылке на гитхаб. Это что за словесный понос в ридми?

troizet ★
()
Последнее исправление: troizet (всего исправлений: 1)
curl -s https://raw.githubusercontent.com/vitaly-zdanevich/youta/refs/heads/main/Cargo.lock | grep package | wc -l
698

Почти 700 пакетов зависимостей. Извините, а вы хоть примерно понимаете что у вас в программе происходит? У меня в дистрибутиве сейчас установленных пакетов меньше 😐

Я создал

Неа, у вас написано что всё сделали Codex и Claude 😛

anonymous
()

У меня есть проект в тг лекции для сна - https://t.me/mp3dreams

Youtube периодически банит yt-dlp, разные способы обхода добавляют, но самый надежный юзать куки из браузера - но тут минус - могу аккаунт побанить. У меня на 2 месяца банили. А ты как качаешь с ютуба? potoken юзаешь?

pi11 ★★★★★
()

через LLM сгенерировать себе

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

amd_amd ★★★★★
()
Ответ на: комментарий от vitaly-zdanevich

Друг захотел GUI - сделал pull request - так что тут два фронтенда.

кажется пришло время разделять проект на 3 части: бэкенд/либу и 2 фронтенда(tui и gui)

cobold ★★★★★
()

На старом ноутбуке. Где от обычного Ютуба - включается вентилятор.

есть легковесный gui для просмотра ютуба https://fltube.sourceforge.io/

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

приветствуется код написаный человеком

Добро пожаловать в новую эпоху, где правит Цифра и ИИ, товарисч луддит. 🙂

Подобного теперь будет много, где код не написан человеком. И это и есть реальность нашего и будущего времени.



Как пример, девушка, заменившая собой целую киностудию(!) и снявшая фильм по мотивам «Царевна-лягушка» на полтора часа.
(Возможно, про автора слышал кто, если видели вирусный ролик «Снегурочка», давший ей миллион подписчиков в инсте)

Да, с помощью ИИ. Но если кто-то думает, что задача подобных проектов определяется задачей «ИИ, ну-ка, сделай мне хорошо», то он глубоко ошибается. Удивительным образом, чтобы получить не очередную поделку, а Шедевр, где есть живые эмоции и душа, от человека требуется Талант, как ни странно.


https://vkvideo.ru/video25498538_456239248
(не требуется заходить на вк, достаточно перетащить ссылку на mpv)
Фильм с двуязычной озвучкой - en, ru.

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

Неа, у вас написано что всё сделали Codex и Claude

Мы пахали - я и трактор.

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

приветствуется код написаный человеком

У меня бы ушло года два full time это разрабатывать :(

А с LLM - часов 40.

vitaly-zdanevich
() автор топика
Ответ на: комментарий от vitaly-zdanevich

(пример из будущего)

https://vkvideo.ru/video25498538_456239248

Как пример

девушка, заменившая собой целую киностудию(!)

снявшая фильм по мотивам «Царевна-лягушка»

на полтора часа.

Да, с помощью ИИ.

Удивительным образом, чтобы получить не очередную поделку

а Шедевр

где есть живые эмоции и душа

требуется Талант

(но я в прошлом, у нас тут тяп-ляп, 3 ляма дойчмарки, толпы кожаных, и вот вам всратая Беги Лола, Беги)

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

Youtube периодически банит yt-dlp, разные способы обхода добавляют

Они на использование deno и node перешли, чтобы костыли для JS не подставлять.

Radjah ★★★★★
()

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

Не вижу проблемы использования ИИ в проектах. а) Он позволяет решать задачи в одиночку там, где раньше требовалась группа спецов. б) Качество продукта, уровня «Шедевр», все равно зависит от вложенных усилий человека, и никак иначе. Никакие самые совершенные электронные мозги никогда не заменят человека-Творца. Это лишь инструмент, удобное подспорье.


Имхо, ошибочны утверждения, что теперь достаточно просто нажать кнопку «сделать мне красиво» и на выходе «вау», типа, больше и думать не надо. В результате подобных примитивных действий, ии-шлаком забит доверху весь интернет.
Выше я пытался на примере конкретного видео показать, что есть поделки и их тьмы и тьмы, где как раз просто нажали кнопку. А есть единичные видео, где автор очень капитально вложился и финансовыми средствами, и человеко-часами, и собственной энергией, кропотливо, до последней запятой, буквы, ноты и пуговицы на одежде, добиваясь реализации своего проекта так, как задумал и держит в голове. ИИ в таких случаях становится высококачественным профессиональным инструментом творца, которым в одиночку можно свернуть горы.

«На его создание ушло около трёх месяцев работы и более 700 тысяч рублей только на генерацию сцен. Каждая локация, каждый герой, каждый кадр создавались практически с нуля. Помимо этого были сценарий, музыка, монтаж, озвучка и огромное количество доработок.
Это мой первый полнометражный фильм и самый масштабный творческий проект, который я когда-либо делала.»

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

Не надо говорить «фу» ИИ коду в проектах!

Да вообще без разницы, как написан код, руками или машиной.

Надо говорить «фу» - быдлокоду!

Нет проблемы кроме быдлокода, и нейрослоп - разновидность его!

В сабжевом случае, к сожалению, это оно…

James_Holden ★★★★★
()

Интересно. Разработчики головой пишут «Я написал программу». Хайп-кодеры пишут «я создал программу».

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

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

Как пример, девушка, заменившая собой целую киностудию(!)

Современную киностудию, которые давно снимают компьютерный шлак. Уже лет 20-30 фильмы выглядят нереалистично, они забиты компьютерной графикой и выглядят как сцены из компьютерных игр.

mky ★★★★★
()
Ответ на: комментарий от vitaly-zdanevich

Кстати не думал сделать вместо того что сделал, сделать расширение для браузера вроде Video Download Helper, которое бы связывалось с хостом, тогда бы можно было бы много кода выбросить с youta в том числе и зависимость от yt-dlp и экспертность свою применить. Но конечно желательно в там случае youta переписать просто чтобы ИИшка заглядывала на кодовую базу youta. Но так реально можно много кода просто убрать, оставив тот же функционал и возможности. Связь наверное лучше через wss.

Также сейчас есть obscura поэтому в рамках чисто десктопного приложение, наверное логично через нее делать и будет более изящно, если на себя брать тот же ютуб

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

Youta началась с того, что я хотел через tty слушать Ютуб - чтобы вентилятор ноутбука не включался от загрузки. Существующие решения имели проблемы.

vitaly-zdanevich
() автор топика
Ответ на: комментарий от vitaly-zdanevich

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

vitaly-zdanevich
() автор топика
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария