LINUX.ORG.RU

Звук во FreeBSD

 , ,


1

1

Привет, ЛОР. Поставлена FreeBSD-13.0 RELENG. Все работает кроме… звука. Во FreeBSD как-то по-хитрому звук настраивается с этим OSS. Любые консольные/неконсольные плееры заводятся с полпинка, но звука нету. Также MOC например при попытке покрутить громкость выплевывает следующее: Can't set mixer: ioctl () failed. Также не подгружается сам драйвер звука, тоесть snd_hda, хотя я прописывал в /boot/loader.conf это: snd_hda_load="yes". Также гуглил, пробовал настроить звук по нескольким гайдам (ссылки на гайды скину потом если понадобится). Помогите понять проблему, ткните носом куда надо, скажите какой лог выложить.

не подгружается сам драйвер звука, тоесть snd_hda, хотя я прописывал в /boot/loader.conf это: snd_hda_load=«yes».

Думаю, стоит с этого и начать. Какие ошибки пишутся по этому поводу?

sT331h0rs3 ★★★★★
()
Ответ на: комментарий от sT331h0rs3

вообще никаких ошибок при старте системы не выдает

Dumppper001
() автор топика

Также не подгружается сам драйвер звука

как проверяется, что не подгружается? что происходит, если написать руками kldload snd_hda?

Novel ★★★★
()
Последнее исправление: Novel (всего исправлений: 1)
Ответ на: комментарий от Novel

щас не могу проверить но вроде так уже тоже пробовал

Dumppper001
() автор топика
Ответ на: комментарий от mord0d

я писал уже вверху что рядом нет компа а еще такой вопрос: а как прокрутить tty вверх? а то гуй еще не успел на эту самую флешку с фряхой запилить

Dumppper001
() автор топика
Ответ на: комментарий от Dumppper001

Если cat /dev/sndstat показывает список устройств по типу этого:

Installed devices:
pcm0: <NVIDIA (0x0081) (HDMI/DP 8ch)> (play) default
pcm1: <NVIDIA (0x0081) (HDMI/DP 8ch)> (play)
pcm2: <Realtek ALC892 (Rear Analog 7.1/2.0)> (play/rec)
pcm3: <Realtek ALC892 (Front Analog)> (play/rec)
pcm4: <Realtek ALC892 (Onboard Digital)> (play)
No devices installed from userspace.

то нужно просто выбрать рабочее устройство и назначить его: sysctl hw.snd.default_unit=X и после проверки шипением (cat /dev/random > /dev/dsp) прописать его в /etc/sysctl.conf:

hw.snd.default_unit=0 # NVIDIA HDMI Sound
iZEN ★★★★★
()
Ответ на: комментарий от Dumppper001

а как прокрутить tty вверх?

Кнопка Pause или Scroll Lock на клавиатуре и крути вверх-вниз.

iZEN ★★★★★
()
Ответ на: комментарий от Dumppper001

я писал уже вверху что рядом нет компа

Я видел. И видел что запросили выхлоп /dev/sndstat.

Но без этого можно гадать сколько угодно, а результат будет нулевой.

как прокрутить tty вверх?

ScrollLock. Включаешь — можно листать tty стрелками или PageUp/PageDown, выключаешь — возвращаешься в режим ввода. Если на ноуте нет ScrollLock, то страдать (на моём тоже нет, но я модифицировал раскладку) труба в лес (dmesg | less).

mord0d ★★★★★
()
Ответ на: комментарий от Dumppper001

Во FreeBSD сейчас OSS, но во-первых кодовая база была срезана очень давно, а во-вторых она сильно модифицирована с тех пор. Так что формально Shadow прав, во FreeBSD нет OSS. (%

mord0d ★★★★★
()
Ответ на: комментарий от Dumppper001

alsa

что?

Горячечный бред. ☺

Но некоторый софт из портов/пакетов может только ALSA (или только PulseAudio). Но это отдельный случай линуксоориентированного софта, нормальные котята так не делают.

mord0d ★★★★★
()
Ответ на: комментарий от Shadow

Там OSS. Но другой OSS. Тот, который был и в линуксе и в бсде действительно, и там и там выкинули.

gremlin_the_red ★★★★★
()
Ответ на: комментарий от Clockwork

Ты знаешь что значит L в ALSA? Если не знаешь — загугли.

А потом загугли ядро FreeBSD.

If it looks like Linux, swims like Linux and quacks like Linux, it doesn’t make it Linux.

mord0d ★★★★★
()
Ответ на: комментарий от Dumppper001

man sound

HISTORY
     The sound device driver first appeared in FreeBSD 2.2.6 as pcm, written
     by Luigi Rizzo.  It was later rewritten in FreeBSD 4.0 by Cameron Grant.
     The API evolved from the VOXWARE standard which later became OSS
     standard.

AUTHORS
     Luigi Rizzo <luigi@iet.unipi.it> initially wrote the pcm device driver
     and this manual page.  Cameron Grant <gandalf@vilnya.demon.co.uk> later
     revised the device driver for FreeBSD 4.0.  Seigo Tanimura
     <tanimura@r.dl.itc.u-tokyo.ac.jp> revised this manual page.  It was then
     rewritten for FreeBSD 5.2.
iZEN ★★★★★
()
Ответ на: комментарий от Dumppper001

Без выхлопа cat /dev/sndstat тебе всё равно ничего дельного не подскажут.

Но если ты так хочешь, то… <vanga_mode>Может у тебя активен девайс у которого нет выхода (play), только вход (rec)? Или девайс сконфигурирован неправильно (тут должен быть длиннючий референс в device.hints(5), но для новичков это чёрная магия ☺)</vanga_mode>

mord0d ★★★★★
()
Ответ на: комментарий от Clockwork

ALSA нужен только отдельному софту. Большинство нормального софта умеет в OSS из фряхи

 % pkg query '%ro' audio/alsa-lib
graphics/gimp-app
audio/alsa-plugins
java/openjdk16
multimedia/qt5-multimedia
devel/godot-tools

Вот эти не смогли ни в OSS, ни в sndio, потому были собраны с ALSA (вообще не понятно зачем GIMP нужен звук).

mord0d ★★★★★
()

А зачем собственно snd_hda?

snd_hda (4) должен быть включен по умолчанию и загружен в ядре.

Звук должен работать без всякой настройки через задний разъем на материнской плате.

Clockwork ★★★★★
()
Ответ на: комментарий от mord0d
% pkg info -r alsa-lib
alsa-lib-1.2.2:
	openjdk11-11.0.12+7.1
	openjdk11-jre-11.0.12+7.1
	openjdk15-15.0.4+5.1
	openjdk16-16.0.2+7.1
iZEN ★★★★★
()
Ответ на: комментарий от Clockwork

snd_hda (4) должен быть включен по умолчанию и загружен в ядре.

Так и есть. Включать отдельно его необязательно:

DESCRIPTION
     The sound driver is the main component of the FreeBSD sound system.  It
     works in conjunction with a bridge device driver on supported devices and
     provides PCM audio record and playback once it attaches.  Each bridge
     device driver supports a specific set of audio chipsets and needs to be
     enabled together with the sound driver.  PCI and ISA PnP audio devices
     identify themselves so users are usually not required to add anything to
     /boot/device.hints.

     Some of the main features of the sound driver are: multichannel audio,
     per-application volume control, dynamic mixing through virtual sound
     channels, true full duplex operation, bit perfect audio, rate conversion
     and low latency modes.

     The sound driver is enabled by default, along with several bridge device
     drivers.  Those not enabled by default can be loaded during runtime with
     kldload(8) or during boot via loader.conf(5).  The following bridge
     device drivers are available:

     •   snd_ad1816(4)
     •   snd_ai2s(4) (enabled by default on powerpc)
     •   snd_als4000(4)
     •   snd_atiixp(4)
     •   snd_cmi(4) (enabled by default on amd64, i386)
     •   snd_cs4281(4)
     •   snd_csa(4) (enabled by default on amd64, i386)
     •   snd_davbus(4) (enabled by default on powerpc)
     •   snd_ds1(4)
     •   snd_emu10k1(4)
     •   snd_emu10kx(4) (enabled by default on amd64, i386)
     •   snd_envy24(4)
     •   snd_envy24ht(4)
     •   snd_es137x(4) (enabled by default on amd64, i386)
     •   snd_ess(4)
     •   snd_fm801(4)
     •   snd_gusc(4)
     •   snd_hda(4) (enabled by default on amd64, i386)
     •   snd_hdspe(4)
     •   snd_ich(4) (enabled by default on amd64, i386)
     •   snd_maestro(4)
     •   snd_maestro3(4)
     •   snd_mss(4)
     •   snd_neomagic(4)
     •   snd_sb16
     •   snd_sb8
     •   snd_sbc(4)
     •   snd_solo(4)
     •   snd_spicds(4)
     •   snd_uaudio(4) (enabled by default on amd64, i386, powerpc)
     •   snd_via8233(4) (enabled by default on amd64, i386)
     •   snd_via82c686(4)
     •   snd_vibes(4)

     Refer to the manual page for each bridge device driver for driver
     specific settings and information.
iZEN ★★★★★
()
Ответ на: комментарий от Clockwork

snd_hda (4) должен быть включен по умолчанию и загружен в ядре.

А если на железке не Intel High Definition Audio? Всё равно модуль должен быть загружен и висеть в памяти? ☺

через задний разъем на материнской плате.

В ноутбуках нет "задних разъёмов".

Ну и десктопы тоже разные бывают. Очень разные.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Так у меня и не Intel High Definition Audio. Каким боком сюда приписан этот драйвер?

На ноуте есть один разъём для звука, поэтому не нужно указывать куда выводить звук. На компе их может быть и три, а работать только один, потому что oss выводит звук напрямую в аудиокарту.

Clockwork ★★★★★
()
Ответ на: комментарий от mord0d

cat /dev/sndstat:

Installed devices :

pcm0 <Realtek ALC269 (analog 2.0+HP/2.0)> (play/rec) default

pcm1 - микрофон (он собственно нам не нужен)

No devices installed from userspace

пытался ввести снова команду kldload snd_hda, он говорит что модуль уже подгружен либо уже в ядре

cast @mord0d

Dumppper001
() автор топика
Ответ на: комментарий от iZEN

оукей…

@iZEN а что можно попробовать вместо MOC (он почему выводит Can't set mixer: ioctl () failed)? Есть ещё какой нибудь такой же крутой консольный плеер?

Dumppper001
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.