Вы скорей всего из тех, кто «не смотрит телевизор». Но вы потребляете телевизионный контент, просто через другие каналы — например YouTube.
Значительную часть этого контента составляют новости, интервью, радиоэфиры, лекции, подкасты, стримы, музыка и т.д. — то есть то, что смотреть вовсе не обязательно — главное слушать.
Кого слушать — дело ваше.
AudioTubeBot — Telegram бот, который загрузит аудио дорожку с YouTube, обрежет лишнее, разобьет на части.
Я написал его для себя 2 месяца назад, изучая python. Он изменил мою культуру потребления контента.
Под катом — описание обновленной версии 2.0
Типичный юзкейс
Возьмем для примера видео по неврологии/нейробиологии
youtu.be/BY9v5jOr4BY
В нем, 2 части: первая очень интересная, вторая — нет (как физик говорю).
Первую часть вы скорей всего захотите переслушать.
Обрезаем лишнее — добавляем к ссылке (hh:mm:ss-hh:mm:ss)
И в таком виде скидываем боту:
youtu.be/BY9v5jOr4BY(00:30-21:01)
формат достаточно свободен — можно по 1 цифре указывать, не указывать конец или начало:
от начала до 21:01 — (-21:01)
от 3мин 5сек до конца — (3:5-)
и т.д.
Разбивка на части
Боты ограничены размером пересылаемого файла 50мб. Изначально — разбивка на части была способом загружать большие аудиозаписи. Но оказалось, что разбивка в принципе удобна — быстрее получаете первую часть и начинаете слушать, не нужно грузить разом весь файл в память и т.д.
192к .aac концерт / 96к .mp3 лекция
Разбивка зависит от битрейта —
соответственно куски до 50/40/30мин для битрейтов 96k/128k/192k
Размер файла — до 1.5гб
Воу, воу — а откуда тогда на скрине 120мб концерт?
Это — основное нововведение этого месяца — в принципе за счет Telegram API можно значительно расширить возможности ботов — пересылать большие файлы, создавать чаты и каналы, добавлять в них пользователей — в общем, практически то, что может делать обычный пользователь!
Переключение между разбивкой и загрузкой целиком делается вот этой кнопкой в настройках.
Загрузка видео
Также можно загружать видео в 360p, до 50мб — можно вырезать нужный кусок, как для звука — указав таймкоды
Переключаемся между загрузкой аудио/видео —
кнопкой с микрофоном/кинохлопушкой
Индексация, NoSQL база
Запросы теперь сохраняются в базе данных и индексируются — если запрос с заданными параметрами(формат, битрейт и т.д.) уже обрабатывался когда либо ботом — вы получите записи мгновенно, так как они уже хранятся на серверах Telegram.
Как можете заметить — при этом не используется хеш функция по каждому файлу(они могут быть большими) — вместо этого используется строка входных параметров — битрейт, формат, начало, конец, флаги и т.д. Кроме того — если частей несколько — они тоже сохраняются, запрос с разбиением на части, и запрос целого файла — разные запросы.
«Плейлист»
Пока в кавычках — так как только что стало понятно как можно реализовать с помощью Telegram API это как задумывалось, а пока — просто отделить аудио от мусора, но скоро будет полноценный плейлист.
Создается приватный канал, в него добавляется бот администратором. Бот транслирует в канал только аудиозаписи. Главное то, что бот имеет контроль над всеми сообщениями канала, а не только над своими — в личном чате с ботом — он не может «подчистить» запросы, которые ему отправляются, в канале можно хоть перемешивать треки, сортировать и т.д.
Роскомнадзор и т.д
Кроме того — приватные каналы по политике Telegram — не подлежат никакому регулированию. Точка. Смекаете?
Если бот предоставляет публичный доступ к какому то спорному контенту — могут теоретически сделать атата, если бот будет присылать результат в приватный канал, то «на этом наши полномочия — всё».
Бот может получать ссылки в чате, а результат отправлять в приватный канал. Так что формально — в публичный доступ никакого контента не выкладывается. Бот принимает ссылки — это не запрещено, а что там приходит кому в приватный канал — не наше дело.
Ну основное вроде написал)
Если кого интересует техническая часть — дайте знать, могу написать не рекламную статью по API
- t.me/AudioTubeBot — Бот собственно
- storebot.me/AudioTubeBot — в бот стор, не забудьте оставить отзыв
- Заметки Славика — мой канал в телеграме — туда иногда делаю небольшие посты, которые не тянут на статью, но могут быть полезны
- t.me/audiotube_chat чат по боту + флудилка
Если кто чем помочь хочет, предложить идею, задать вопрос и как то поучаствовать — велкам в чат/комменты
Комментарии (16)
redpax
29.01.2018 18:47Давно пользуюсь, ибо платить за ютуб ред желания нет, а заблокировать телефон хочется, так как нужно только аудио для прлслушивания научных лекций. Единственный минус это, то, что видео не созраняется в своей истории как подсмотренное.
Да и разбивка на части раздражает, так, как когда первая часть закончилась вторая не проигрывается автоматически, а проигрывается одна из старых записей уже имеющаяся в плеере телеграма.
Раздумываю о покупке подной версии но както пока жаба душит :)
Да и дайте возможность сделать битрейт еще ниже, 96 слишком много.
SlavikMIPT Автор
29.01.2018 18:52- opus добавлю скоро — голос в 16кбит — почти не отличить от mp3 в 96Кбит
- не проигрывается — так вы почитайте /faq — вам нужно просто сменить порядок воспроизведения в плеере телеграма
- чтобы сохранить как просмотренное — нужно авторизацию делать
D4RKV01D
29.01.2018 18:57Славик умный парень: выучил питон, написал отличный бот для телеграма, но не осилил выучить как правильно называть свой пост
SlavikMIPT Автор
29.01.2018 19:01я экспериментирую — понятно что можно было не так провокационно назвать, но мне интересна реакция — любая, даже пусть негативная — от меня особо не убудет — нужно же куда то тратить карму) Если не пытаться выйти за границы — ты их не найдешь
Rambalac
29.01.2018 19:26+1Засекаем сколько Ютубу понадобится всё это забанить.
welcomerooot
Сомнительный заголовок для geektimes.
SlavikMIPT Автор
Заголовок привлек ваше внимание, кроме того — заставил проявить активность — вы оставили коммент, значит не такой уж и сомнительный)
maxzh83
Думаю, за комментом еще и минус прилетит, а от кого-то минус прилетит и без комментария )
SlavikMIPT Автор
ну значит так будет — что уж поделать, я вот свои голоса и инвайты не знаю куда девать просто — так что кому то повод дам потратить)
Boctopr
Проявил активность тебе в карму!
alexhott
Ну видимо все-таки сомнительный раз вы его заменили
SlavikMIPT Автор
я хоть попытался, хотя бы попробовал.
Интересно — похоже что здесь боты, которые триггерятся по ключевым словам, а не люди