Моргенштерн 24/7 - 100 часов online

Моргенштерн 24/7 - 100 часов online Программирование, Компьютерная графика, Программист, IT, Командная оболочка bash, Ffmpeg, Видео, Длиннопост


Вступление.


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

Не так давно создал канал для своего творчества. Так сложилось что в лекции Анны Виленской мне понравился один момент и я выложил у себя его на канале.. В итоге это понравилось не только мне, но и еще более 600 человек. Больше 18к просмотров и 60 комментариев.. Действительно квартер здОрово сыграл!

Так сложилось что моя деятельность давно в какой-то степени связана с трансляциями и я решил запустить стрим в поддержку квартета.

Теперь по теме.

Запустил трансляцию на базе Orange pi zero 2

У меня на ней работает Home Assistant и node red с домашней автоматизацией.

Дополнительная трансляция по нагрузке ресурсов почти не заметна, поэтому мне совершенно не сложно ее содержать))

Моргенштерн 24/7 - 100 часов online Программирование, Компьютерная графика, Программист, IT, Командная оболочка bash, Ffmpeg, Видео, Длиннопост

И вот сечас уже 100 часов непрерывного воспроизведения записи квартета)



Технологии.


1. Сначала я в figma нарисовал графику

Моргенштерн 24/7 - 100 часов online Программирование, Компьютерная графика, Программист, IT, Командная оболочка bash, Ffmpeg, Видео, Длиннопост

2. Потом в Davinci Resolve смонтировал статический видик, во Fusion добавил минимальную анимацию

Моргенштерн 24/7 - 100 часов online Программирование, Компьютерная графика, Программист, IT, Командная оболочка bash, Ffmpeg, Видео, Длиннопост

3. Далее я использовал wkhtmltoimage для получения картинки с о страницы патреон

wkhtmltoimage --crop-h 84 --crop-w 255 --crop-x 387 --crop-y 1139 --format png https://www.patreon.com/San4eZMusic patreon.png

4. Для рассчета количества часов использовал обычные возможности bash и для отрисовки числа использую gm convert (GraphicsMagick)

#!/bin/sh
st=1641823547
cur=$(date +%s)
sec=$(($cur-$st))
hours=$(($sec/60/60))
gm convert -size 280x170 xc:white -font "/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf" -pointsize 100 -fill red -gravity center -draw "text 0,0 \"$hours\"" h_count.png

5. И последнее - ffmpeg для склейки видео и картинок + стрима в youtube



Вывод.


Очень легко организовать стрим с минимальными затратами ресурсов.

Еще раз инструменты которые я использовал:

1) Orange pi zero 2

2) Figma

3) Davinci Resolve 17

4) wkhtmltoimage

5) GraphicsMagick

6) ffmpeg


Если вам интересна эта тема и вы не знакомы с какими-то из этих инструментов - очень рекоммендую с ними познакомиться)

Если будут какие-нибудь вопросы или предложения - пишите, с радостью обсудим))



P.S. Если вы программист или у вас просто хороший доход, пожалуйста, поддержите музыкантов) они стараются для нас и они действительно это очень круто делают! https://www.patreon.com/San4eZMusic

Лига программистов

1.5K постов11.4K подписчика

Добавить пост

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества