LINUX.ORG.RU

Сообщения pejuto

 

Хочу чего-то вроде LADSPA/VST, но для графики и кроссплатформенно

Форум — Development

К примеру, написал я портилку звука, оформил ее в LADSPA и мою портилку звука могут использовать все в куче разного софта.

А вот если я написал портилку картинок, в какое API ее обернуть, дабы было не жалко выкидывать?

Вопрос имеет не только идеало-альтруистические корни, сейчас пытаюсь сделать некий конвертор графики, в котором можно будет последовательно применять фильтры (к примеру, изменение яркости, контраста, гаммы и т.д.), уже сейчас выстраивается потребность в интерфейсе к ним: инициализация/удаление из цепочки, изменение настроек, генерация превью. Какие параметры у фильтров? Самые разные - поэтому нужен интерфейс для интроспекции объектов и генерации гуя (как это можно делать с LADSPA). Хотя с другой стороны, возиться с GUI мне лениво (он всегда был моей болью) и в этом плане VST выглядит красивше. В общем, я отправился в полет фантазий и что-то не вижу когда я напишу хоть какое-то API для этих фильтров. На горизонте маячит изменение параметров во времени, маски, изменение параметров в пространстве (к примеру, blur, сила которого зависит от нарисованной маски, а но не как в гимпе - где сначала блюрится, а получившаяся сопля смешивается по маске), генерация этих масок другими фильтрами и вообще. В общем, может есть что-то готовое?

 ,

pejuto
()

Одна библиотека с разным API - как правильно сделать костыль?

Форум — Development

Есть библиотека librtmp, у нее грубо говоря есть 2 версии: релиз и транк. Релиз был еще в 2010 году, поэтому транк переделан хоть и сильно (с поломаным апи), но #define RTMP_LIB_VERSION 0x020300 в обоих версиях одинаковый.

Грубо говоря, в одной версии: someFunc(int a, int b, int c);

А в другой версии someFunc(int a, int b, int someNewParam, int c);

Как бы мне правильнее сделать поддержку обоих версий? Можно конечно попробовать найти левый #define который есть в новой версии, но это совсем костыль.

 

pejuto
()

Ищу webdav-сервер, но не apache и не nginx

Форум — Admin

Хоть какой-нибудь, только бы максимально поддерживающий стандарт. Желательно на сишке.

К апачу испытываю предубеждения, а вот nginx в силу своего дизайна передает управление webdav-модулю только после полного завершения аплоада файлов, вклиниться на ранних стадиях никак нельзя (можно грязно поправить код в кишках, но это надо будет держать еще один инстанс «кривого» нгинкса). Что бы еще попробовать?

pejuto
()

Посоветуйте кодек для видео, что-то между mjpeg и h264

Форум — Development

Задача простая - сжимать кинцо, скажем 320х240, но при ограниченных ресурсах. libx264 штука хорошая, но слишком много кушает cpu, особенно если отключить сборку с ясмом.

mjpeg - есть енкодеры с целочисленной арифметикой, можно даже дропнуть цветоразностную информацию - кодировать еще меньше, затраты на кодирование гораздо меньше, но на выходе битрейт высокий, при сохранении битрейта будет 1 fps или меньше

Вот может есть что-то среднее между этими двумя вариантами? Я не специалист по кодекам и не могу оценить их сложность

pejuto
()

Блеклист для потенциально-опасных GET-запросов

Форум — Security

К примеру, по моему сайту прошлись каким-то веселым сканером и в логах осело много интересного вроде:

GET /invalid../../../../../../../../../../etc/passwd/././././././././././././././././././././.

GET /?f=unexisting/../../../../../../../../../../windows/win.ini.\x5C.\x5C.

GET /index.php?pid=12345&showtopic=12345&st=0%26%27%20or%20%28sleep%284.4%29%2b1%29%20limit%201%20--%20

(конечно, никакого index.php на сервере и в помине нет)

Но дело не в этом. На сайте есть функционал, который долбится к чужим ресурсам и пытается получить с них данные, пользователь может запостить ссылку вида «example.com/index.php?id=2‘; DROP TABLE login; #», бот пойдет по такой ссылке и поломает чужой сайтик. Ну или пойдет постить запросы как выше. Когда разгреб свои логи, то сильно задумался, что меня могут использовать в роли прокси вот для таких гадостей.

Выпиливать фичу жалко (бот проверяет отпощенные ссылки), думаю сделать словарик вроде «DROP », «etc/passwd» - если в ссылках есть такие слова, то бот по ним не пойдет. Остается вопрос - где найти таких слов для блеклиста?

 

pejuto
()

Отладка падения на вызове free

Форум — Development

В общем-то дело ясное, запускаем gdb, ловим сегфолт на вызове free. Смотрим значение указателя - gdb пишет что там есть строка, которую и надо освободить, значит указатель не битый и уже этот сегмент освободили. Надо искать где уже осводили.

Но вот как найти место, где оно освобождается прежде чем надо? В голову приходит модификация free, дабы по старому адресу он записал какую-то метку, что из треда N было обращение сюда. Но что-то это пахнет написанием велосипеда.

Брейки на запись ставить не вариант - записей много. Как еще такое дебажить?

 ,

pejuto
()

XMPP Jingle и транспорт аудиопотока по TCP - как?

Форум — Development

В спецификации говорят, что:

A Jingle RTP session SHOULD use a datagram transport method (e.g. Jingle Raw UDP Transport Method [4] or the «ice-udp» method specified in Jingle ICE-UDP Transport Method [5]), but MAY use a streaming transport if the end-to-end link has minimal latency and the media negotiated is not unduly heavy (e.g., it might be possible to use a streaming transport for audio, but not for video).

Однако я никак не могу найти подходящий документ, где было бы описано как использовать TCP для подключения. Скачал libjingle, от mediasessionclient_unittest.cc у меня встают волосы, но пользы это не принесло. Пытался читать спеку по RTP/AVC, а там еще страшнее:

Under special circumstances, it may be necessary to carry RTP in protocols offering a byte stream abstraction, such as TCP, possibly multiplexed with other data. The application MUST define its own method of delineating RTP and RTCP packets (RTSP [23] provides an example of such an encapsulation specification).

Но ведь обещали работу по TCP! Задача то элементарная: в TCP-соединение отдаем PCMU (RTP type=0), осталось понять как к этому прикрутить XMPP.

 , ,

pejuto
()

Чем откомментировать фильм?

Форум — Multimedia

Есть ролик (avi, mp4, flv), при его проигрывании надо вставить голосовые комментарии. Т.е. я что-то говорю в микрофон, оригинальный звук приглушается, а когда я перестаю говорить, то звук восстанавливается.

Внимание, мне не нужен видео/аудио редактор, роликов очень много, дабы каждый обрабатывать отдельно в редакторе. Нужна именно потоковая обработка.

pejuto
()

А есть небольшой загрузочный образ для тестирования железа?

Форум — Linux-hardware

Закатать на флешку, вставить в тестируемую машину и все?

Просто сейчас в юношеском лагере осваиваемся с новыми компьютерами и есть сильные подозрения, что поставщики решили детям спихнуть всю некондицию.

pejuto
()

Какого софта не хватает на десктопе?

Форум — Development

Привет всем, мы проводим летом занятия по программированию для школьников и студентов. Если интересно, то можете почитать о нас: http://issps.org.ua/index.php?id=1

В программе занятий будет много упражнений на создание GUI, но писать калькулятор в 500 раз уже всем надоело, да и коллективной работы не добьешься. Написать «еще один клевый плеер» можно, но хотелось бы что-то более полезное, но и не очень сложное. Зачем выбрасывать труды школьников, если их можно довести до ума всем коллективом, а потом выложить на гуглокод?

Сейчас на рассмотрении следующие варианты: аудиоредактор, видеоредактор, приложение для аудио/видео связи (транслирование занятий через интернет), текстовый редактор, быстрое создание скринкастов, работа с интерактивной доской, оболочка для системы (детям интересно, как работают привычные вещи, а оконный менеджер + таскбары написать и не слишком сложно, и много работы с GUI).

pejuto
()

RSS подписка на новые темы