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 ) Анти- Орёл и решка.

How to return your 3dprinting back: quick step guide

Быстрый возврат к печати:
1. Фиксируем высоту в миллиметрах или номер слоя (осторожно, если есть поддержка — там мешанина с количеством слоёв), печатаемый исходник;
2. Открываем исходник, считаем высоту, не забывая коррекцию (в самом начале что-то типа: G1 Z0.550 F6000.000), ищем строчку с первой записью «Zxx.xxx» по подсчитанной высоте;
3. Выше этой строчки обязательно должна быть запись «G92 E0». Оставляем всё, что ниже, включая эту запись;
4. Перезапускаем хост, нагреваем хотенд (!!!ВАЖНО, если он остыл, иначе всё порвёт!!!), стол, кулер, скорость печати в рабочий режим;
5. Калибруем x y z. Вставляем G-code начиная с «G92 E0». Поехали!

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