(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

KLANG - проект новой аудиоподсистемы для ядра Linux и FreeBSD

Источник: linux
ins3y3d

Некий разработчик объявил о запуске проекта KLANG по созданию новой аудиоподсистемы для ядра Linux и FreeBSD. KLANG должен предоставить пользователям профессиональное качество работы с аудиоматериалом, минимальные задержки и минимальную загрузку ЦП при обработке звука.

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

Что не устраивает автора проекта в существующих аудиосистемах?

  • ALSA не имеет поддержки микшировавния, даже при использовании dmix.
  • JACK слишком сильно загружает ЦП.
  • PulseAudio все еще требует RealtimeKit для работы.
  • ESD - не для обычного домашнего использования.
  • OSS не поддерживает MIDI-синтезаторы, слишком быстро расходует батарею. Зато имеет прекрасный API.

Почему аудиосистема помещена внутрь ядра? Во-первых, это единственный благоразумный вариант. Для аудиопотока наиважнейшим параметром является время задержки. Даже при коротких на первый взгляд задержках восприятие такого звука ухом неприятно. Например, для видеосистемы задержки даже в 20 мс трудно различимы, а для звука уже 4 мс - это слишком много.

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

Существующая аудиоподсистема ALSA позволяет прямо воздействовать на аудиоустройство с пользовательского уровня. Представьте, что подсистема по работе с сетью передает на пользовательский уровень пакеты в сыром виде, которые обрабатывает либо демон, либо отдельный процесс, целиком и полностью обладающий правами на единоличное использование интерфейса. Нужна ли вам такая система?

API разрабатываемой аудиоподсистемы будет изначально подразумевать правильную работу со звуком:

  • open(2) - обращение к одной из конечных точек;
  • ioctl(2) - конфигурация работы с конечной точкой;
  • write(2) - запись аудиоданных;
  • read(2) - получение аудиоданных.

Очень сильно напоминает OSS. Да, подобный OSS-совместимый API будет предоставлен KLANG для пользовательского уровня. Данный API, конечно, ни для кого не станет открытием, но он достоин повторного использования и дальнейшего расширения.

На данный момент KLANG еще слишком нестабилен для внедрения и опробования. И разработчик не собирается выпускать его для всех на слишком ранней стадии. По адресу вскоре можно ожидать появления дополнительной информации и официального баг-трекера проекта.

>>> Подробности

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 03.08.2012 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Zend Studio Commercial License 1 Year Free Upgrades
IBM Domino Utility Server Processor Value Unit (PVU) License + SW Subscription & Support 12 Months
ARCHICAD 21, локальная лицензия на 12 месяцев
Symantec Endpoint Encryption, License, 1-24 Devices
TeeChart Standard VCL/FMX 2 developer license
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
Реестр Windows. Секреты работы на компьютере
Один день системного администратора
Все о PHP и даже больше
ЕRP-Форум. Творческие дискуссии о системах автоматизации
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100