войти зарегистрироваться

ПрограммированиеMP3 MusicID по аудио отпечатку файла в своей программе на С# из песочницы

Недавно у меня возникла такая необходимость — использовать распознавание музыки в собственной программе. Программа разрабатывалась на C#, это сортировщик коллекции mp3 файлов, заточенный под себя. В двух словах скажу, что к примеру, он умеет распознавать по ID3 тэгам принадлежность произведения к классической музыке, и соответственно раскладывать по папкам на диске не /Исполнитель (год-год)/Альбом (год)/Произведение, а /Композитор/Альбом/Произведение.

Изначально, мне пришла в голову идея использовать для этой цели Winamp, так как он неплохо справляется с задачей распознавания ID тэгов по отпечатку аудио. Есть идея — есть реализация! В списке треков появилась кнопочка, которая создает в %TEMP% m3u список и запускает Winamp передавая ему m3u как параметр, а приложение отслеживает ChangeFileNotification и если тэги были обновлены в Winamp — автоматом обновляет информацию в своих окошках. Однако спустя некоторое время я понял, что это неудобно, непонтово и решил вживить в код такую же фичу, как в Winamp.

СофтWindows 7 и Music Player Daemon

Небольшая заметка о том, как я запускал Music Player Daemon на Windows7 и что из этого получилось…
MPD — это совсем крошечный аудио-проигрыватель-демон, который управляется через сетевой интерфейс и умеет транслировать аудио поток самыми разнообразными и легко конфигурируемыми способами.
Установка оказалась довольно проста.

Веб-разработкаChrome в dev-версии получил поддержку WebRTC

Анонсированная в начале мая прошлого года технология Web Real-Time Communications (WebRTC) интегрирована в dev-версию Chrome и, по всей видимости, официально появится в одном из следующих релизов браузера.

WebRTC представляет собой открытый фреймворк, попавший в ведение Google после покупки ей компании Global IP Solutions, и реализующий собой технологию передачи в реальном времени видео и аудио напрямую между браузерами. Фактически это означает, что Chrome сможет выполнять те же самые функции, которые сейчас выполняет Skype или другие подобные ему плагины (Google talk), причем с точки зрения разработчиков создание таких приложений будет представлять собой простое использование некоторого JavaScript-API, посмотреть которое можно здесь. Интересно то, что Mozilla Foundation предлагает свой вклад в WebRTC — спецификацию MediaStream Processing, позволяющую программно смешивать аудио-потоки или отслеживать движение в передающемся онлайн видео.

Ключевым понятием в WebRTC API является объект MediaStream, который является общим JavaScript-интерфейсом для взаимодействия с аудио- и видео-потоками. Для того, что разработчик смог организовать взаимодействие с ними, он должен иметь инструмент доступа к микрофону и web-камере пользователя — для этой цели служит функция getUserMedia. В случае, если эта функция завершилась успешно и доступ к камере и микрофону был получен, разработчику возвращается экземпляр класса MediaStream, представляющий из себя, собственно, интерфейс для работы с мультимедиа-данными.

Беспроводные технологииIntel патентует новый способ подключения Wi-Fi устройств к беспроводным сетям

Желая еще больше упростить жизнь пользователям, которые активно используют беспроводные сети, Intel запатентовала новый способ, позволяющий подключать Wi-Fi-устройство к роутеру без ввода паролей и подходящий, преимущественно, для домашнего использования. Правда, есть некоторая оговорка — и подключаемое устройство и роутер — должны обладать аудиовозможностями.

DIY или Сделай СамHifidiy A20. Собираем усилитель мощности


*Местами используются стоковые фото, по причине отсутствия своих в надлежащем качестве. Осторожно! На фото присутствует ковер, коврофобам не смотреть :) Очень много больших фото, трафик!

Приветствую! Как и обещал, расскажу о том как я мощник для акустики собирал. Так как промышленные варианты меня не устраивали, я нацелил свой выбор на diy варианты. Усилитель будет использоваться с полочной высокочувствительной акустикой, я решил что буду собирать усилитель мощностью 15-30 ватт, обязательно в A классе ( Да, да, вместо обогревателя ). Перебрал очень много проектов, остановился на клоне Krell KSA 50 — HifiDIY A20. Он полностью меня устроил, мощностью, габаритами, комплектующими. И я принялся за сборку.

DIY или Сделай СамDIY предусилитель в A классе. Клон Lehmann BCL


Приветствую! После покупки наушников стал назревать вопрос о качественном усилении для них и я стал выбирать подходящие варианты, заводские решения отбросил сразу, по причине завышенной цены и достаточно дешевой элементной базы. Выбор пал на DIY варианты. Потом стал необходим предусилитель для усилителя мощности и я принялся за сборку. Мой выбор остановился на клоне Lehmann BCL, оригинальная версия достаточно известна, обладает достойным звуком, большое количество людей на заграничных форумах повторили эту конструкцию. Но усилитель очень чувствителен к качеству элементной базы, поэтому компоненты были использованы самые лучшие, до каких только смог дотянуться. Весь усилитель собран из деталей купленных на ebay. Прошу меня простить, но некоторые фото немного устарели, под ними я напишу что изменилось на сегодняшний день, начнем!

Разработка под AndroidПорт SoX для Android или попытка создать идеальный плеер

Здравствуй, Хабраюзер!

Несколько месяцев назад у меня появилась идея создания плеера под Android с огромным количеством эффектов. Единственным на то время (не знаю как сейчас:) плеером, с хоть какой-то обработкой звука, был PowerAMP, но количество аудио-эффектов в нем было мягко говоря скудным. Я попробовал реализовать эту идею. Из этого мало что вышло, но то, что получилось я расскажу в этом топике. Итак, кого заинтересовало, прошу под кат.

ЖелезоКак собрать домашнюю медиа-систему начального уровня? Выбираем телевизор, плеер, аудио из песочницы

Здравствуйте!

У меня появилась возможность и назрела необходимость (или наоборот?) обзавестись большим телевизором. Одновременно потребность трансформировалась в мысль «большой телевизор такой, с 3D чтобы и звук многоканальный. И чтобы диски не покупать».

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

Я не буду сыпать терминами и рассказывать про «чересстрочную развертку» и прочие «Технологии Sub-Field Driving», а попытаюсь на «пальцах» описать, как же выбирать.
Конкретных рекомендаций в стиле «купите ХХХ и не ошибетесь» давать не буду, все чисто субъективно.
Итак, если ты собираешься купить домашний кинотеатр\медиасистему, или уже купил и хочешь поделиться дельными отзывами, прошу под кат.
Осторожно, будет много букв.

ЖелезоКакая конфигурация аудио подключена к вашему основному домашнему компьютеру?

Проголосовало 1253 человека. Воздержался 41 человек.

Работа со звукомAviSynth + VirtualDub: Извлекаем аудио в командной строке

Мне как-то потребовалось извлечь аудио из *.FLV файлов. Графические видеоредакторы мне показались для этой цели слижком уж неподходящими, поэтому я решил написать свою собственную утилиту, делающую извлечение звука из любых медиафайлов, в командной строке.
Я пользовался только опенсорсными продуктами.

Итак, что нам потребуется:
  • набор кодеков, такой как K-Lite Codec Pack
  • видеоредактор Virtual Dub
  • AVISynth


Шаг 1. Устанавливаем K-Lite Codec Pack, Virtual Dub и AVISynth.

Шаг 2. Пишем вот такой скрипт на BAT-языке командного процессора cmd.exe:

@echo off
@rem © danx
set VD=VirtualDub.audio.
echo VirtualDub.Open(VirtualDub.params[0],"",0); > 1.jobs
echo %VD%SetSource(1); >> 1.jobs
echo %VD%SetMode(1); >> 1.jobs
echo %VD%SetInterleave(1,500,1,0,0); >> 1.jobs
echo %VD%SetClipMode(1,1); >> 1.jobs
echo %VD%SetConversion(44100,0,1,0,1); >> 1.jobs
echo %VD%SetVolume(); >> 1.jobs
echo %VD%SetCompression(); >> 1.jobs
echo %VD%EnableFilterGraph(0); >> 1.jobs
echo %VD%filters.Clear(); >> 1.jobs
echo VirtualDub.SaveWAV(VirtualDub.params[1]); >> 1.jobs
echo VirtualDub.Close(); >> 1.jobs
FOR %%i IN (*.*) do (
  if not exist %%~ni.wav (
    echo.
    echo Re-compressing %%i
    echo c = DirectShowSource^("%%i"^) > 3.avs
    echo AudioDub^(BlankClip^(length=c.FrameCount^), c^) >> 3.avs
    "C:\Program Files\VirtulDub\vdub.exe" /i 1.jobs 3.avs %%~ni.wav >nul
  )
)
del /q /s 3.avs >nul 2>&1
del /q /s 1.jobs >nul 2>&1