to post messages and comments.

Ну кстати о winpthreads.

Полез я смотреть в реализацию.

Наткнулся на реализцию condition variables.

И что там вижу? Вырвиглазный треш. Реализацию через семафоры. Которая, как известно, тормозная и не совсем всегда работает. birrell.org

Нет, смысл, так то, примерно понятен. На винде до Vista — не было нативных condition variables.

Но вышла Vista, минуточку, ровно 10 лет назад. Почему бы не дропнуть поддержку XP и прочего говна мамонта, и не сделать нормально? Для меня это загадка.

Случилось чудо. Не прошло и полгода, как мне наконец удалось собрать ffmpeg под win64 со всеми зависимостями, кроме GPL-нутых, проприетарных, и сломанных. Т.е. с LPGL-v3 лицензией.

Собрать в .dll, но притом все зависимости в него вконпилены статически, чтобы сразу было готово к использованию.

Кроме того, билд даже немного круче официального — там в частности поддерживается ускорение с помощью DirectX 11.

Вот полный дистрибутив, лицензии там тоже есть. Ну и README.

static.lovesan.ru

А вот типа пример, как с помощью нехитрых приспособлений(типа, еще с SDL2), libav* можно превратить в аудио/видео плеер:

gist.github.com

Ебаное прыщеговно.
CMake это просто ссака, блядь.

Дано — собираем openjpeg2. Он зависит от LibTIFF. Она же — зависит от LZMA и Jpeg, потому что собрана с ними.
Но собирается все статически.
Естественно, блядь, openjpeg2 ниче не знает про LZMA, и в итоге в программках там все валится к хуям от undefined symbols.
CMake тоже не знает, и никак не может решить эту проблему, потому что 1) Он не смотрит .la файлы 2) У него нет никакого аналоги LIBS

Блядь, пиздец просто. Прыщеподелие ебаное.

Между прочим, у Libresignal уже примерно полгода верификация фингерпринтов несовместима с обычным Signal. Тупо формат другой, и ручных (hex vs decimal) и QR-кодов. Есть об этом хоть одно упоминание в интернетах? Нет.
Это все, что вам надо знать о верификации фингерпринтов мессенджерах.

Значит такое.
Мне на следующем проекте надо будет работать с мультимедиа и стримингом.
Что я первым делом подумал — а, подумал, наверное, это всё хуйня, все давно решено, особенно в опенсорсе.
Хуй там плавал. И давайте не будем вспоминать грустные вещи про RTSP и про цены на Erlyvideo, давайте начнем с базы.

База это транскодинг и проигрывание. Особенно на винде. Что я сразу подумал? Я подумал, а, говно вопрос — FFmpeg же есть.
Вопрос, действительно оказался говно, и это мягко сказано. Собственно, ключевая мультимедиа-библиотека всего опенсорса — это сраный треш.

Мне стоило две недели, чтобы разобраться и написать нижеследующую простенькую программку, которая умеет играть музыку и показывать видео:
gist.github.com
Код тут говно, и кое-где есть мемори-лик, плюс он почему-то не совсем умеет проигрывать Mp3, но тем не менее.

Что я узнал:
1) Ни один из туториалов в сети не является валидным.
2) Половина API задепрекейчено, и собственно, не особо работает.
3) Breaking changes в нем случаются где-то каждую минорную версию.
4) Вся документация — сигнатуры функций, автоматически сгенеренные из сорцов.
5) На тему работы и интеропа с SDL2 вообще нет ничего.
6) Под винду все еще хуже чем кажется.

Это ёбаный пиздец. И это, повторяюсь, ключевой опенсорсный набор библиотек для мультимедиа! Сраный треш.

∞ e2fsck -a -b 32768 /dev/sdb1
/dev/sdb1: Superblock needs_recovery flag is clear, but journal has data.
/dev/sdb1: Recovery flag not set in backup superblock, so running journal anyway.
/dev/sdb1: recovering journal
/dev/sdb1: Inode 322624 extent tree (at level 1) could be shorter. IGNORED.
/dev/sdb1: Directory inode 469171, block #0, offset 0: directory corrupted


/dev/sdb1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
∞ yes | e2fsck -b 32768 /dev/sdb1
e2fsck 1.43.1 (08-Jun-2016)
e2fsck: need terminal for interactive repairs

А вот хрень такая, busybox — она вообще зачем в 2016 году?

Ну я понимаю, тяжелое детство, деревянные игрушки, запуск с дискеты, два МЕГАбайта оперативной памяти включая рамдиск и squashfs, вот это вот все.

А сейчас какой смысл держать этого ублюдочного кастрата на современных устройствах с гигабайтом и более оперативной памяти?

А что, в этом вашем awesome нарисовать вертикальный wibox без ебли с пляской никак? А то с мелким экраном 2.1:1 в эту щель еще статусбар засовывать по горизонтали как-то глупо.

написал в гитхаб багу "давайте conversations не будет вываливать юзеру OTR-сообщения которые не может расшифровать", в ответ получил ушат помоев "это у вас кривые другие клиенты и кривые серверы, перестаньте спамить наш багтрекер". Опенсорс такой опенсорс.

По словам экспертов издания, исследования показали, что многим пользователям больше нравится работать со сложным и неопнятным для сторонних наблюдателей интерфейсом, поскольку это позволяет им испытывать гордость за то, что они смогли разобраться с таким сложным инструментом. habrahabr.ru

Gnome-keyring охуенен. Внезапно написал, что для разлочки какого-то там пароля (кажется, от redhat bugzilla) ему нужен мой login password, но не тот который сейчас, а тот который он КОГДА-ТО запомнил. Кривоукие дебилы, лучше бы даже не пытались.