Использование Media Capture API в браузере

Автор: admin от 4-08-2015, 20:19, посмотрело: 373

Предлагаю читателям «Хабрахабра» перевод статьи «Using the Media Capture API in the Browser» авторства Dave Voyles.

Использование Media Capture API в браузере

Сегодня я хочу поэксперементировать с Media Capture и Streams API, разработанные совместно в Web Real-Time Communications Working Group из W3C и Device APIs Working Group. Некоторые разработчики могут знать их как getUserMedia — главный интерфейс, который позврляет веб-страницам получать доступ к таким девайсам, как веб-камеры и микрофоны.

Категория: Программирование » Веб-разработка

 

Игнорируем лишние аргументы функции на C++

Автор: admin от 4-08-2015, 17:31, посмотрело: 233

Привет, хабр.

Как-то раз, одним прекрасным воскресным днём писал я код одного своего проекта. Код выглядел как-то так, если упрощать:
const bool exists = WithObject (objectId,
        [] (const Media::IAudioSource*, const QModelIndex&) { return true; },
        [] (const QModelIndex&) { return false; });

WithObject пытается найти некоторый объект по его ID и выполняет первый функтор, если он найден, иначе выполняет второй функтор, если объект не найден. При этом возвращается значение, которое вернул выполненный функтор (подразумевается, что возвращаемый тип второго функтора приводим к типу первого). Функторам при этом передаётся всякая разная полезная информация, полученная в ходе поиска (например, сам объект).

Вышеприведённый код, соответственно, просто проверяет существование объекта, и аргументы, которые WithObject передаёт функторам, оказываются не нужны. Так вот, подумалось мне, неплохо было бы написать такую функцию DropArgs(), чтобы вот такой код
const bool exists = WithObject (objectId,
        DropArgs ([] { return true; }),
        DropArgs ([] { return false; }));
был корректным. Или, что то же самое, чтобы можно было писать DropArgs ([] { return false; }) (0, 3.14, "foobar");.
А если нужны только первые N аргументов, остальные тоже можно было не указывать: DropArgs ([] (int n) { return n; }) (0, 3.14, "foobar");.

Категория: Программирование

 

Транспортная очередь Exchange 2013 больше не является единой точкой обработки почтовых сообщений

Автор: admin от 4-08-2015, 17:14, посмотрело: 367

Транспортная очередь Exchange 2013 больше не является единой точкой обработки почтовых сообщенийМного лет транспортная очередь была тем местом, где обрабатывался весь почтовый поток Exchange. В Exchange 2013 даже отказались от локальной доставки почтовых сообщений для того, чтобы весь поток почты прошел через транспортную очередь и был проверен на предмет спама, вирусов, требований политик и так далее.

Но теперь появились исключения из этого правила — новый транспортный агент в CU9 ведет себя совсем не так, как ожидается, а служба Clutter в Exchange Online втихую добавляет сообщения напрямую в почтовые ящики. Не уверен, что это хорошая тенденция.

Когда в июне 2015 вышло очередное кумулятивное обновление CU9 для Exchange 2013, я думал, что с ним не будет сюрпризов. Честно говоря, CU9 выглядел как очень взвешенное, выверенное обновление. Но только до тех пор, пока вы не заинтересуетесь, что за мистика происходит с письмами, используемыми Health Service для мониторинга баз данных.
Опять что-то сломали?

Категория: Системное администрирование, Microsoft

 

Табы сверху? Развитие нового интерфейса Яндекс.Браузера

Автор: admin от 4-08-2015, 16:36, посмотрело: 974

Мы продолжаем дорабатывать новый интерфейс Яндекс.Браузера и постепенно двигаемся к варианту, который можно сделать доступным для всех. Делаем мы это внимательно, изучая отзывы пользователей на то, что уже было сделано. Сегодня – новая бета-версия, получившая название Калипсо и основанная на наиболее удачных решениях из проекта Кусто.

Табы сверху? Развитие нового интерфейса Яндекс.Браузера


В конце прошлого года мы показали публике (в том числе на Хабре) альфа-версию нового дизайна и попросили помочь с тестированием. Благодаря этому, нашей команде удалось проверить идеи в реальных условиях, разделить их на те, которые понятны людям, и те, которые нуждаются в дальнейшей доработке. Калипсо — это объединение привычных решений из классического интерфейса с хорошими идеями из Кусто. Среди них видеофоны, прозрачный интерфейс, поиск с богатыми ответами, обновленные инфобары и многие другие.

Категория: Веб-разработка, Яндекс

 

Старкон 2015 глазами инди-разработчика

Автор: admin от 4-08-2015, 15:40, посмотрело: 274

На прошедших выходных в Питере отгремел Старкон — крупный фестиваль фантастики, комиксов, игр и прочих развлечений.

Старкон 2015 глазами инди-разработчика

Несмотря на то что ассоциируется у многих он в первую очередь с косплеерами и комиксами, для игрового разработчика там тоже оказалось кое-что полезное, о чем я и хочу рассказать.

Категория: Программирование » Game Development

 

Релиз InterSystems Ensemble 2015.1 и 2015.2

Автор: admin от 4-08-2015, 14:30, посмотрело: 316

Релиз InterSystems Ensemble 2015.1 и 2015.2
В июле состоялся релиз интеграционной платформы InterSystems Ensemble 2015.2. В этой статье обзор основных улучшений 2015.2 и 2015.1.

Главное: поддержка push-уведомлений для iOS и Google-устройств, оптимизация архитектуры баз данных для Ensemble продукций, оптимизация «сквозных» (pass-through inproc) операций.
Подробности под катом

Категория: Программирование » Веб-разработка

 

Разработка приложений с использованием NexStreaming NexPlayer SDK

Автор: admin от 4-08-2015, 14:06, посмотрело: 246

Разработка мобильного приложения-проигрывателя – дело непростое. Нужно обеспечить поддержку множества форматов видео, звука, субтитров. Придётся реализовать воспроизведение файлов, которые хранятся локально и в Интернете. Если вспомнить о том, что результат всех этих трудов будет исполняться в среде, к ресурсам которой следует относиться бережно, придётся заняться оптимизацией. Как подступиться к созданию качественного, быстрого и экономичного проигрывателя для Android? Ответить на этот вопрос поможет NexPlayer SDK.

Разработка приложений с использованием NexStreaming NexPlayer SDK

Категория: Веб-разработка, Android

 

Событийно-ориентированный бэктестинг на Python шаг за шагом. Часть 2

Автор: admin от 4-08-2015, 14:03, посмотрело: 257

Событийно-ориентированный бэктестинг на Python шаг за шагом. Часть 2


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

Категория: Программирование » Веб-разработка

 

Взаимодейтсвие Java и Shell-скриптов в Android

Автор: admin от 4-08-2015, 13:31, посмотрело: 500

Так сложилось, что в моём текущем проекте необходимо было реализовать выполнение shell-скриптов прямиком из кода.

Для того, чтобы войти в курс дела, советую вам прочитать эту статью: Shell-скриптинг в среде Android

В ней очень хорошо описаны возможности языка Shell, однако мне помимо самих скриптов нужно было выполнять методы Java.

Категория: Веб-разработка, Game Development, Android

 

Первый код под HoloLens

Автор: admin от 4-08-2015, 13:29, посмотрело: 376

Признаться, я не был удивлен почти полному отсутствию статей по данной тематике. Так уж сложилось — людей, которые имели возможность поработать с HoloLens, едва ли наберется десяток на всю страну. Тем не менее, в рамках Imagine Cup в Редмонде, принять участие в котором мне довелось, был проведен один из первых тест-драйвов средств разработки данной платформы.

Первый код под HoloLens

HoloLens overview


HoloLens – всерьез засекреченный проект Microsoft, который был начат аж в 2012 году. С тех пор компании удалось разработать прототип, который был представлен прессе в январе этого года. С достаточно сносным обзором можно ознакомиться, к примеру, здесь.

Категория: Веб-разработка, Game Development, Microsoft

 
Назад Вперед