Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/urantij/twitchrecords
Создание клипов на твиче
https://github.com/urantij/twitchrecords
telegram twitch
Last synced: 12 days ago
JSON representation
Создание клипов на твиче
- Host: GitHub
- URL: https://github.com/urantij/twitchrecords
- Owner: Urantij
- Created: 2023-08-27T17:26:43.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-10-02T06:29:27.000Z (over 1 year ago)
- Last Synced: 2024-11-14T06:45:35.325Z (2 months ago)
- Topics: telegram, twitch
- Language: C#
- Homepage:
- Size: 38.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
## Что
Небольшое приложение для создания клипов на твиче с последующей загрузкой их в тг канал.
По большей части я просто скопировал код из другого своего проекта, но впихнул это всё в DI на базе асп нета, чтобы можно было потом веб панельку сделать.
## Как запустить
Для работы потребуется заполнить конфиг файл.
Имя канала и его айди. В теории можно было бы через твич апи брать айди, но мне лень, его можно найти за полминуты.Твич апи это приложение, регистрируемое в консоли твича.
Твич чат заполнять не обязательно. Просто бот будет отвечать в чате, если есть аккаунт.В конверсии нужно указать путь до *папки*, в которой лежат ffmpeg и ffprobe. Если не указано, будет пытаться просто запускать их без пути, что сработает, если система сама их может найти.
Для телеграма нужно создать своё приложение, указать айди и хеш.
Номер телефона аккаунта, через который будет идти загрузка.
Айди канала, куда будет загружаться видео.При первом запуске программы на аккаунт придёт уведомление, что происходит вход через приложение. Нужно будет ввести код в консоль программы.
## Как использовать
В чате модераторы и владелец трансляции имеют следующие команды:
=старт [текст]
Начинает считать сегменты и запоминает указанный текст. Если текст не указан, ничего позже написано не будет.
=стоп [текст]
Заканчивает считать сегменты через 15 секунд, после чего загружает их в указанный тг канал. Если текст указан, перезапишет тот, что был указан при старте. Если не указан, оставит тот, что был при старте.
=снимок [текст]
Берёт все текущие живые сегменты и загружает их в тг канал. С текстом, если он указан.
На данный момент есть проблема, что для отслеживания используются уже скачанные сегменты. То есть после команды старт начнут отслеживаться только будущие сегменты. Длина одного сегмента примерно 2 секунды.
## Чуть подробнее про что
Программа постоянно опрашивает твич на предмет наличия стрима через пабсаб и апи.
Если стрим обнаружен, его сегменты загружаются в файлы в папке кеша.Хранятся сегменты до достижения определённой длительности, после чего старые сегменты удаляются, и они не занимают слишком много места.
1 секунда 1080п60 стрима весит чуть больше мегабайта. По умолчанию программа хранит сегменты на пять минут, то есть примерно три сотни мегабайт.Твич присылает фрагменты в формате .ts, что можно грузить в тг, но тогда не будет доступен предпросмотр. ffmpeg берёт сегменты, конвертирует их в .mp4 формат, делает тамбнейл, и это уже загружается в тг.
Если сегменты нужны для команды старт, они не удаляются, пока не будет написан стоп. Лимита на запись нет, так что если забыть, будет записан весь стрим.
Ещё в тг есть ограничение на размер файлов. В 1080п60 за раз можно залить примерно полчаса. Программа не делит слишком большие сегменты, такое использование не предполагается.
При запуске программы файлы в папке кеша удаляются по умолчанию.