Как стать автором
Обновить
5
0

Пользователь

Отправить сообщение

Регистратор на Bash для камер с rtsp

Время на прочтение3 мин
Количество просмотров13K
Всем привет!

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

Но денег не особо много, чтобы покупать какие-то специализированные решения, поэтому решено было поскрести по завалам хлама в серверной и с разрешения руководства утащить домой IP-камеру Xblitz iSee P2P IP WiFi.

image

Камера Xblitz iSee P2P IP WiFi
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии38

Переводчик с языка, на котором нельзя говорить и писать

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров9.5K

Привет, Хабр! Это Александр Капитанов и Александр Нагаев из Sber Devices. Мы занимаемся задачами компьютерного зрения: генерацией, матированием и редактированием изображений, сегментацией, портретной гармонизацией, заменой лиц, распознаванием жестов. А с недавних пор ещё и распознаваниtv русского жестового языка.

Поговорим о том, что заставило нас решать данную проблему. Затронем теорию жестового языка — подозреваю, что мало кто с ней знаком. Расскажем, как мы собирали собственный датасет для распознавания русского жестового языка и затронем тему обучения моделей для решения данной задачи. Также поделимся с вами результатом и немного расскажем про семейство наших моделей signflow. 

Читать далее
Всего голосов 24: ↑24 и ↓0+29
Комментарии2

Отменяем операции правильно на примере корутин

Время на прочтение17 мин
Количество просмотров14K

Всем привет! Меня зовут Павел, я Android-разработчик в Delivery Club. Моя команда разрабатывает функциональность доставки продуктов из магазинов. Я расскажу о подходе к написанию кода, подразумевающем, что любые долгие операции могут быть отменены. На примере корутин рассмотрим сферы применения такого подхода.

Читать далее
Всего голосов 19: ↑17 и ↓2+17
Комментарии7

Как сделать свои наушники

Время на прочтение16 мин
Количество просмотров27K

В СНГ (и не только) существуют крупные сообщества энтузиастов, которые развивают тему самостоятельного изготовления электроакустической аппаратуры, в том числе и наушников. В этой области накопилось большое количество материала, так что пришла пора собрать в одном месте все основные наработки и выводы. В статье раскрываются вопросы конструирования: с чего всё начинается, какие существуют технологии, рассмотрены типичные проблемы и то, как они решаются. Статья предназначена для тех, кто желает собрать свои наушники с нуля, но также будет полезна всем тем, кто просто хочет больше понимать в звуке.

Читать далее
Всего голосов 29: ↑29 и ↓0+29
Комментарии55

Рекомендуемое сопротивление наушников для усилителя

Время на прочтение9 мин
Количество просмотров35K
Для усилителей часто можно увидеть такую характеристику, как «рекомендуемое сопротивление наушников» в виде диапазона сопротивлений.



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

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

Эту характеристику можно вывести и посчитать, если подойти к такой задаче от исходного смысла характеристики и обобщить данные от производителей. Если у производителей эти данные взяты субъективно, то их можно посчитать эмпирическими и сделать некой точкой отсчета. Понимая же алгоритм расчета, всегда можно сделать необходимую поправку.
Читать дальше →
Всего голосов 16: ↑14 и ↓2+12
Комментарии39

Справочник по синхронизаторам java.util.concurrent.*

Время на прочтение14 мин
Количество просмотров279K
Целью данной публикации не является полный анализ синхронизаторов из пакета java.util.concurrent. Пишу её, прежде всего, как справочник, который облегчит вхождение в тему и покажет возможности практического применения классов для синхронизации потоков (далее поток = thread).

В java.util.concurrent много различных классов, которые по функционалу можно поделить на группы: Concurrent Collections, Executors, Atomics и т.д. Одной из этих групп будет Synchronizers (синхронизаторы).



Синхронизаторы – вспомогательные утилиты для синхронизации потоков, которые дают возможность разработчику регулировать и/или ограничивать работу потоков и предоставляют более высокий уровень абстракции, чем основные примитивы языка (мониторы).
Читать дальше
Всего голосов 45: ↑41 и ↓4+37
Комментарии15

Преобразование Фурье в действии: точное определение частоты сигнала и выделение нот

Время на прочтение12 мин
Количество просмотров233K
последняя редакция статьи доступна на сайте makeloft.xyz

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

Когда музыкант играет композицию, то он поочерёдно или одновременно зажимает и отпускает клавиши, в результате чего несколько синусоидальных сигналов накладываются друг на друга образуя рисунок. Именно этот рисунок воспринимается нами как мелодия, благодаря чему мы без труда узнаём одно произведение, исполняемое на различных инструментах в разных жанрах или даже непрофессионально напеваемое человеком.

image

Читать дальше →
Всего голосов 74: ↑72 и ↓2+70
Комментарии49

Dagger 2.11 & Android

Время на прочтение8 мин
Количество просмотров49K

В данной статье рассматривается использование специализированного модуля Dagger 2 под android и подразумевается, что у вас есть наличие базовых знаний по Dagger 2.


В Dagger 2.10 был представлен новый модуль специально для Android. Данный модуль поставляется как дополнение, состоящий из дополнительной библиотеки и компилятора.
В версии 2.11 были некоторые небольшие изменения, в частности некоторые классы, были переименованы, поэтому будет использоваться именно эта версия.

Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии12

Функции шума и генерирование карт

Время на прочтение21 мин
Количество просмотров34K


Когда я изучал обработку аудиосигналов, мой мозг начал проводить аналогии с процедурным генерированием карт. В статье излагаются принципы, связывающие обработку сигналов с генерированием карт. Не думаю, что открыл что-то новое, но некоторые выводы были для меня в новинку, поэтому я решил записать их и поделиться с читателями. Я рассматриваю только простые темы (частоту, амплитуду, цвета шума, использование шума) и не затрагиваю другие темы (дискретные и непрерывные функции, фильтры FIR/IIR, быстрое преобразование Фурье, комплексные числа). Математика статьи в основном связана с синусоидами.

Эта статья посвящена концепциям, начиная с самых простейших и заканчивая более сложными. Если вы хотите перейти сразу к генерированию рельефа с помощью функций шума, то изучите другую мою статью.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии6

Audio over Bluetooth: most detailed information about profiles, codecs, and devices

Время на прочтение24 мин
Количество просмотров308K
XKCD comic. How standards proliferate. SITUATION: there are 14 competing standards. Geek: 14?! Ridiculous! We need to develop one universal standard that covery everyone's use cases. Geek's girlfriend: yeah! SOON: Situation: there are 15 competing standards.

This article is also available in Russian / Эта статья также доступна на русском языке

The mass market of smartphones without the 3.5 mm audio jack changed headphones industry, wireless Bluetooth headphones have become the main way to listen to music and communicate in headset mode for many users.
Bluetooth device manufacturers rarely disclose detailed product specifications, and Bluetooth audio articles on the Internet are contradictory and sometimes incorrect. They do not tell about all the features, and often publish the same false information.
Let's try to understand the protocol, the capabilities of Bluetooth stacks, headphones and speakers, Bluetooth codecs for music and speech, find out what affects the quality of the transmitted audio and the delay, learn how to capture and decode information about supported codecs and other device features.

TL;DR:

  • SBC codec is OK
  • Headphones have their own per-codec equalizer and post processing configuration
  • aptX is not as good as the advertisements say
  • LDAC is a marketing fluff
  • Voice audio quality is still low
  • Browsers are able to execute audio encoders compiled to WebAssembly from C using emscripten, and they won't even lag.

Всего голосов 24: ↑23 и ↓1+22
Комментарии8

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность

Специализация

Mobile Application Developer
Senior
Git
Java Spring Framework
Java
Database
SQL
Linux
English
Software development
Object-oriented design
Algorithms and data structures