Обновить
8
Андрей Григорьев@eigrad

Linux, Python

23
Подписчики
Отправить сообщение
Интерестно было бы прочитать статью про Sage в сравнении с ними :-)… Я бы помог, но у меня та же фигня :-).
Я не спорю, что в современном Linux с физическим устройством работает обычно ALSA (как вы и сказали, исключая BT и FW, хотя и в этом случае ALSA может быть задействована).

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

Тому же gstreamer'у приложение может сказать «делай ресемплинг в 44100», и «отправляй в alsa» в которой 48000 (а в реальной жизни может так случиться что между gst и alsa висят ещё jackd и pulseaudio, в которых нерадивый пользователь оставил дефолты :-) ). Конечно, куда же ещё абстрактнее :-).

Согласен, что API не хуже. Но на счет единообразия это вы зря :-).
Да, стрелочки там искревлены как раз чтобы подчеркнуть запутанность, но это не умаляет факта что библиотек дофига и много раз поднимался вопрос о решении этой проблемы. Но в последнее время вроде неплохо стало уже, дошло до народа, что половину из указанного на графе действительно не стоит использовать в новых проектах. Остался так сказать, минимально необходимый зоопарк. Для мультимедийных приложений — Gstreamer или Phonon, для проф. софта — Jack, для игр и простеньких приложений — OpenAL или canberra. Напрямую в alsa/pulseaudio/oss вроде уже никто не лезет, и поэтому ситуация не так уж и плоха :-).
> Назовите же десяток, если можете.

Взгляните на граф, и скажите что это не очевидно, что там гораздо больше 10 комбинаций (сарказм). Из вывода не через ALSA (и не через Bluetooth или Firewire) — pulseaudio по сети, oss. Только вот я не заметил момента когда мы вообще перешли на драйвера к оборудованию и отбросили половину устройств?

> Какие именно ошибки?

Имеется карточка Edirol UA-25 работающая в режиме 48000x24. При воспроизведении в totem (->gstreamer) аудио 48000x24 FLAC через ALSA с настройками по умолчанию производится ресемплинг в 44100x16 и обратно. alsa собранная неделю назад из git, totem 2.32.0, gstreamer 0.10.32.
Эм. Ну и в чем отличие «аудиоподсистемы» Pulseaudio от «библиотеки для вывода звука» NAS, ESD, Jack?? В чем несоответствие тому что у вас написано по уровням? На схеме всё точно так же :-).
Вы думаете для Linux нет этих «фильтров»? Они не учитываются на схеме, там даже не указано ни одного из механизмов для их работы (LADSPA, LV2… вы ведь VST и DSSI имели ввиду?). Я не спорю, что под Windows тоже достаточно большой зоопарк библиотек для работы со звуком, но едва ли смогу сходу назвать больше 5 способов вывода звука. Под Linux же без труда можно набрать десяток даже не пользуясь той наглядной схемой.

> OSS никто не использует.

Да ну?) Никто не использует OSS под Linux'ом, возможно. И то не правда :-).

Ничего такого я нигде не утверждал, вы что-то путаете. :-)

Я всего лишь напоминаю про ряд ошибок которые приводили к ненужному ресепмлингу и портили звук, так же как описывается в посте. Ошибки в настройках распространяемых с дистрибутивами. Ошибки в alsa, pulseaudio, gstreamer (думаю на многие другие библиотеки это тоже распространялось, но привожу только то, с чем сам сталкивался). Ошибки в приложениях воспроизводящих звук. Неужели не встречались?
Говорить что Pulseaudio и Jackd это надстройки над ALSA не справедливо. Обилие звуковых подсистем имеет место быть — практически все из указанных на графе систем всё ещё где-то да используются, про фактические ошибки я вас не совсем понял. OSS не устаревшая, просто в Linux захотели свой велосипед, по ряду причин, и велосипед получился очень даже не плохой и полезный. Косяки — да хоть тот же самый, ненавистный топикстартеру, ресемплинг, который всё ещё попадается в некоторых дистрибутивах из коробки.
Ну вы тролль :-). Никогда не слышали про Pulseaudio и Jackd? OSS? Да ладно, что там мелочиться…

Статические анализаторы кода несомненно вещь полезная, жалко что не все разработчики OpenSource проектов ими пользуются. От ошибок не застрахован никто.
— И что же главное? — спросил Нео.
— Тестов не существует, — ответил мальчик.
Спасибо за статью, не знал раньше про Chaco и Mayavi.
А я думал что это только линуксоиды маятся с обилием разных аудио подсистем и их косяками :-).
Не так уж и много страницы весят, основной объем всё равно приходится на CSS, скрипты и графику. А голый HTML весит мало, даже на здоровых страницах. Парсинг на серверной стороне имеет смысл, если результаты обработки сервером одной страницы будут отдаваться множеству клиентов. Ну или хотя бы если эта самая «серверная сторона» вообще имеется в наличии.
Сделали, спасибо :-).
Я джва года хочу такую игркарту!!!
он имел ввиду -f
Ура! Ждем поддержки Py3k в следующих версиях :-)
Я джва года хотел такую фичу с планом!!! :-)

Информация

В рейтинге
Не участвует
Откуда
Лимассол, Government controlled area, Кипр
Дата рождения
Зарегистрирован
Активность