А я читаю, что вывод работает, а ввод нет. А мне нужен ввод, ютубчик я и на телефоне послушаю.
Ну точнее я преувеличиваю лично себя, у меня не USB звуковуха. Просто это пример того, что для pro-audio это не годится.
Но не только поэтому. OSS это замена ALSA, то есть реализация дврайверов. А pipewire это звуковой сервер, он дает более высокоуровневые возможности. Извиняюсь за капитанство.
все верно, кроме того, что OSS замена ALSA. OSS создавалась коммерчески, а ALSA - это опенсорсная (неполноценная) попытка ее заменить. поэтому OSS уже имеет возможности по микшированию каналов.
OSS both as API and as software has been criticized by some developers, such as Paul Davis (of JACK Audio Connection Kit) and Lennart Poettering (of competing PulseAudio).[11][12] Most of these criticisms were either specific to the Linux implementation and not to the OSS API itself, or have been addressed in OSS version 4.
Так а разница, либо устаревший jack вкорячивать, с которым работает по сути только pro-audio софт а для остального адовые костыли, либо более лучший, совместимый и с jack и со всем остальным, имеющий больше возможностей и более удобный pipewire.
Таже проблема что и с alsa, нет утилит позволяющих его хоть как-то, пусть бы и криво, настроить и получить хоть какой-то звук.
Как следствие не видно и рабочего миксера.
Для освоения массовым пользователем очень важно наличие таких стартовых возможностей.
OSS же можно и в линуксе воткнуть, по крайней мере по арчу в вики есть гайд. Только лично для себя я не вижу смысла, потому что все равно нужен pipewire.
нельзя. OSS - это ядерная подсистема. из линукса ушла в 2.4
все равно нужен pipewire.
я только хотел заметить, что OSS изначально создавалась более мощной, с возможностью микширования звуковых потоков через virtual_oss. посмотри мануал, оцени возможности:
оно пока вообще не работает. там не инсталируется ../etc/pipewire, т.е. конфиги. вот если бы ты поразбирался, что там нужно поправить, чтобы оно заиграло… а то конфигов дохрена просто… мне так нравится sndio за свою простоту, а тут опять полеты в космос.:(((
вот так выглядят образцы конфигов. может оценить количество.:(((
FreeBSD contains an independently developed implementation of the OSS API, which includes, among other things, in-kernel resampling, mixing (vchans), equalizer, surround sound, and independent volume control for each application. It also supports bit-perfect mode.
везде, кроме голой альсы, - ты имеешь ввиду большие софтины в юзерспейсе?? так очевидно, что в ядре задержки будут меньше для тех, кому это профессионально надо. поместить что-то в ядро означает сделать это суппер быстрым.
Я имею в виду звуковые серверы во всех ОС. Типа пульсы, pipewire, CoreAudio в маке и то непотребство что в винде.
так очевидно, что в ядре задержки будут меньше для тех, кому это профессионально надо
С чего это вдруг очевидно? Я вообще не вижу как ресемплер влияет напрямую на задержки. Тем более, что у тех «кому это профессионально надо», в цепочке обработки навешано на два порядка более тяжелых, чем ресемплер, преобразований (эквалайзеры, компрессоры, лимитеры, конвольверы, сатураторы, эмуляторы лампового усилителя и т. д.). И они никак не могут делаться в режиме ядра, потому что это прикладной софт делает. То есть ресемплинг тут вообще незаметен.
поместить что-то в ядро означает сделать его суппер быстрым.
С чего это вдруг? Вообще непонятно. Скорость исполнения кода, делающего арифметические вычисления, в kernel space и в user space одинакова.
я не буду с тобой спорить за проф. работу со звуком, так как вообще в этом ничего не понимаю, но отвечу за ту область, в которой работал
С чего это вдруг? Вообще непонятно. Скорость исполнения кода, делающего арифметические вычисления, в kernel space и в user space одинакова.
при разработки сетевых сервисов, код размещенный в ядре не совершает переключений контекста и вцелом выполняется заметно быстрее. именно по этой причине в ядро включили TLS.
Я ведь говорил. Технология новая. Этот pipewire только недавно стал более-менее стабильным в Линуксе…я бы посоветовал тебе вникнуть в oss. Там возможности с ней большие. А на пшш аудио и пипевире забить болт.
вот если бы ты поразбирался
Извини, но нет, не буду разбираться. Тут нужно с сорцов собирать, компелять, устанавливать и разбираться, что к чему. И еще репортить проблемы нужно. Нет, я этим заниматься точно не буду. Так как этим не пользуюсь. И да. Я презираю новые технологии. От них больше проблем, чем пользы. Можешь меня называть пещерным человеком :)
тогда нужно выкидывать sndio, потому что они вместе не работают. пару месяцев назад мне удалось завести через virtual oss микрофон в скайпе. но теперь почему-то не работает ничего. может, апдейт -> 12.4 повлиял. не работает звук в браузере никак.
Ну, тогда может ты и прав. Я раньше использовал 12.1. Вот там у меня звук трещал (при сильных нагрузках). А в 13.1 такого не наблюдаю. Так что фиг знает, что они там улучшили. Но улучшили. И это факт.
я хз, как я должен вникать вот в такие портянки. и это даже не конфиг! это cmd line такой! при этом я не вижу, как при помощи OSS сконвертировать stereo в mono.
Извини, думал ты сам найдешь. Если лень искать, то вот
dev.pcm.%d.[play|rec].vchanformat
Format for VCHAN mixing. All playback paths will be converted to
this format before the mixing process begins. By default only 2
channels are enabled. Available options include:
s16le:1.0
Mono.
запустить /usr/local/sbin/virtual_oss -T /dev/sndstat -Q 0 -C 1 -c 1 -S -r 48000 -b 24 -s 1024 -O /dev/dsp3 -R /dev/dsp4 -d dsp -t vdsp.ctl, то появляется /dev/dsp, без которого звука нет вообще даже в mplayer.
собраться ff без pa
сделать sysctl hw.snd.default_unit=0
то ff всеравно просит доступ к микрофону (unit 3), то есть
ff игнорирует настройки sysctl
ff неправильно определяет сам микрофон
в итоге основной звук заикается, а микрофон не работает.
вцелом, как ты и сказал, я решил перейти на OSS/virtual_oss. у меня mixer теперь не может работать с /dev/mixer. вроде как устройство занято. из скрипта громкость не поменяешь.
Он и в линуксе глючный, а в FreeBSD с ним проблем еще больше. Одним словом это геморой. На форуме FreeBSD читал. Многие пользуются Firefox, хотя и он не идеален.
я замучался на фряху багрепорты отсылать года два назад. реально там, как из рога изобилия. ну напишешь. вот, ко мне фикс прилетел через 2-3 года. ну и нафиг это надо?
на лоре тесты проводили. то, что раньше жрало 25 мб озу, на гтк4 жрет 125. в общем я решил, если переходить на фрибзд и отказываться от редхата, то и максимально на qt переходить. вот тут пересборка из исходников позволяет не ставить лишнее.
у офисного пакета важен парсер. у LO юзербаза больше, парсер куда качественнее. ну и я вообще проектам из стада KDE не доверяю. они всегда глючные. сейчас okular запустил на пробу - не открываются настройки, виснет.:(
я теперь полностью разочаровался в cow-fs:( в частности zfs. только для хранения бекапов и все. поэтому можно было бы перейти обратно на linux+xfs, потому что на freebsd какая-то проблема с производительностью на рейде, но лень.
мне в идеале от zfs на обычной машине нужны только контроль четности и снапшоты. это все можно в lvm.
хипстерство какое-то. нелепый командный интерфейс, неразвитые утилиты работы с фс, слабая интегрированнось в систему… продукт выкинут на рынок бажным и тормозным, с тем чтобы тестировать на сообществе и допиливать походу… raid0/1 допилили, raid5/6 так и забросили… плюс все обычные недостатки cow.
ext4 - почему нет? они добавили контрольные суммые для метаданных. очень хорошо. если брать многопоточные сервера с БД, то XFS лучше справляется с нагрузкой.
а я на фряхе поставил UFS и считаю, что традиционные фс не умерли. они сохраняют линейную производительность при 99% заполнении, что очень важно дома. они вообще быстрые.
функции контроля четности у меня выполняет хардварный рейд.
всеравно у меня звук на FreeBSD лагает:( фиг знает, в чем дело.
У меня чистая oss. И машина слабая. При сильных файловых нагрузках, ничего не лагает. Хочу отметить, что вся моя конфигурация сводилась к загрузке в ядро всех драйверов, и назначению звуковой карты по умолчанию.
у меня же вообще машина висла при нагрузке на raid+geom. что-то там у них узко в ядре. стало получше только при kern.bio_transient_maxcnt=8192 и то по-моему уронить можно.
сейчас я поменял приоритет плеера на real priority и стало ок. а вот изменение renice не влияло.
кстати, если ты не в курсе, у нас еще два молодых лоровца бздешника (mordod и clockwork) на https://bindev.net/ и у них есть irc.libera.chat:6697 (TLS) #bindev
но у них там какая-то своя модерация (модераторов примерно столько же, сколько пользователей) вроде есть. по крайне мере сообщение про лт они мне с первого раза забрили:)
ну, может, тебе интересно с ними будет по теме freebsd.
вот на EL9, карточка проброшена в виртуальную машину.
localhost ~ # alsamixer
ALSA lib confmisc.c:855:(parse_card) cannot find card '0'
ALSA lib conf.c:5180:(_snd_config_evaluate) function snd_func_card_inum returned error: No such file or directory
ALSA lib confmisc.c:422:(snd_func_concat) error evaluating strings
ALSA lib conf.c:5180:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib confmisc.c:1334:(snd_func_refer) error evaluating name
ALSA lib conf.c:5180:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5703:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib control.c:1528:(snd_ctl_open_noupdate) Invalid CTL default
cannot open mixer: No such file or directory
localhost ~ # lsusb
Bus 001 Device 002: ID 0a92:00d1 EGO SYStems, Inc. U24XL
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
localhost ~ # lsusb
Bus 001 Device 002: ID 0a92:00d1 EGO SYStems, Inc. U24XL
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
localhost ~ # aplay -l
aplay: device_list:275: no soundcards found...
драйвер-то ядерный должен быть. или у alsa еще свои какие-то?