Loess.ru

having fun

Текст про Иран, или что ждёт Россию

https://shapito.d3.ru/soobshchenie-bylo-polucheno-otvet-otpravlen-1905360/

Антиглобализм он для населения своей страны, ну и для школьников с хипстерами из других стран. Сам тиран живет за счет глобальной экономики и пользуется всеми ее благами – медициной, техникой, интернетом, западным образованием, едой и поварами, климат–контролем, самолетами, автомобилями и так далее и тому подобное. И тиран, и его дети, и дети его детей, и все его ближние и их дети, и дети их детей — все живут в рамках глобальной экономики и сверхпотребления ее благ. Потому что в рамках антиглобальной экономики жить бедно и хуево. А население под сказки об антиглобализме последний хуй без соли доедает.

https://www.youtube.com/watch?v=G9a_O371hQM
Арестован в Иране. (Full HD Video ) Анти- Орёл и решка.

ffmpeg+hls picture and audio streaming

Появилась задача — из говна и палок собрать переключение по расписанию
с видеопотока
на картинку+радиопоток
и обратно, и транслировать это в hls.

В первом приближении задача решена так:
cron поочерёдно запускает два скрипта:

killall -9 ffmpeg
find /mnt/ramdisk/ -mindepth 1 -mtime +1 -delete
/usr/bin/ffmpeg -stream_loop -1 -i /path/to/slide.ts \
-re -i http://audio.mp3.ip.address:8000/sample128 -bufsize 1920k -vf scale=w=720:h=576:force_original_aspect_ratio=decrease \
-c:a aac -b:a 128k \
-c:v libx264 -crf 21 -preset veryfast -pix_fmt yuv420p \
-hls_time 4 -hls_list_size 3 -hls_flags delete_segments+discont_start+append_list /mnt/ramdisk/video.m3u8 &>/dev/null &

при этом slide.ts собран ффмпегом из картинки (-i ‘/path/to/image.jpg’), ну просто потому что -i image.jpg работал крайне нестабильно при переключении потоков и вообще не работал в firefox:

/usr/bin/ffmpeg -y -f image2 -pattern_type glob -framerate 25 -i '/path/to/slide.jpg' -an -aspect 16:9 -qscale 2 -g 50 -f mpegts -pix_fmt yuv420p -r 25 /path/to/slide.ts

второй скрипт:

killall -9 ffmpeg
find /mnt/ramdisk/ -mindepth 1 -mtime +1 -delete

/usr/bin/ffmpeg -i http://video.mpeg2ts.ip.address:port/stream -bufsize 1920k -vf scale=w=720:h=576:force_original_aspect_ratio=decrease \
-c:a aac -b:a 128k \
-c:v libx264 -crf 21 -preset veryfast \
-hls_time 4 -hls_list_size 3 -hls_flags delete_segments+discont_start+append_list+temp_file /mnt/ramdisk/video.m3u8 &>/dev/null &

Опции для потоков сделаны специально одинаковыми, дабы минимизировать разницу между ними. Вторая строка удаляет лишние ts-файлы, которые остаются после каждого убийства ffmpeg.
Работает как говно, если честно, бывает, циклит ещё раз старые чанки, зато задачу свою выполняет довольно стабильно. Примерно это и требовалось, у меня больше нет желания заниматься экспериментами =@. Если будешь тюнить — имей в виду, что любая опция важна и может покрашить всё к чертям, и заставить браузерный hls-плеер тупить даже в те моменты, когда он тупить не должен.

https://ffmpeg.org/ffmpeg-formats.html#Options-5

Суверенность подвезли

Пока — только на бумаге. Многие ломали голову — «как можно огородить весь рунет?» — вот и ответы:


via @usher2

.. ведь существуют же где-то гондоны, знающие, как всё устроено и дозволяющие вытворять эдакое.

Alternate data stream (ads)

В современных файловых системах существует такая особенность, как запись метаданных к любому файлу. При этом не изменяется его содержимое. Называется в разных фс по-разному, в NTFS — Alternate data stream, или ещё один уровень — extended attributes, в Linux-based ФС — xattr, но по сути — это одно и то же.
Например, самое безобидное применение — перед запуском скачанного из интернета бинарника винда показывает предупреждение:

или в метаданные файла могут быть вписаны абсолютно любые данные, при этом дополнительный поток может быть произвольного размера, в том числе может превышать размер основного файла, а запустить на выполнение такие данные удивительно просто, этим нередко и пользуются всякие зловирусы.
Мало того, у этих streams, как минимум в NTFS, есть несколько слоев и не все они прямо доступны. Но, судя по всему, помочь избавиться от подобной метадаты может простая архивация.
Всегда имейте это в виду, когда сохраняете цопе из браузера хром =)

Cпецслужбы заблокировали себе анус, оказалось — не тот


Чтобы не принимать сообщения о минированиях, фсб попросило МТС блокировать MX protonmail:
https://habr.com/ru/company/tm/blog/443222/ (pdf)
https://roskomsvoboda.org/45587/ (pdf)
, a в итоге заблокировало себе не то и не туда:

Ожирение софта

Спустя ещё два года после «ожирения сайтов» https://loess.ru/ожирение-сайтов/ и ряда катастроф (например, npm и leftpad, M.E.Doc и NotPetya и т.п.), ещё кто-то всё понял:
«Windows 10 takes 30 minutes to update. What could it possibly be doing for that long? That much time is enough to fully format my SSD drive, download a fresh build and install it like 5 times in a row.»
http://tonsky.me/blog/disenchantment/
https://habr.com/post/423889/ (pdf)
деффективный менеджмент и кинопоиск

А вывод прост и очевиден: «не строить софт на базе огромной кучи дерьма, которую поставляют современные инструменты.» А чтобы это делать, надо хорошо учиться и много знать =)