LINUX.ORG.RU

pulseaudio не отдаёт 384 кгц.

 ,


0

1

Не могу понять, есть ресивер Onkyo TX-NR676E, есть radeon vega. Соединены они кабелем HDMI 2.0

Прописал в daemon.conf:

default-sample-format = s32le
default-sample-rate = 352800
alternate-sample-rate = 384000

В ресивере показывает принимаемый поток PCM 192 кгц.

Вот не могу понять:

Процессор 32/384 это не значит что он поддерживает 384 кгц?

Либо это видеокарта не отдаёт больше 192 кгц, за это отвечают бинарные модули (привет HDCP) и посмотреть что там творится не получится.

Либо это ограничение PA?

Ответ на: комментарий от nvl
cat /proc/asound/card0/codec#* | grep rates
    rates [0x70]: 32000 44100 48000

Оно вообще некорректно показывает для HDMI интерфейса.

И это логично, потому что codec это ЦАП + АЦП, а там ни того ни другого.

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

С чего ты так решил? То, что у тебя в ресивере показывает принимаемый поток PCM 192000 - это всего лишь максимально возможный sample rate для HDMI, а реальный - 48000.

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

Потому что alternate-sample-rate меняет показания ресивера. Если поставить 48 кгц, то рес будет писать 48 кгц. Что неудивительно, trueaudio не работает и PCM поток поступает от программного декодера.

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

Соединены они кабелем HDMI 2.0
В ресивере показывает принимаемый поток PCM 192 кгц
это видеокарта не отдаёт больше 192 кгц

это максимум по стандарту

https://www.hdmi.org/learningcenter/kb.aspx?c=11#37

anonymous
()
Ответ на: комментарий от steemandlinux

потому что codec это ЦАП + АЦП

для алсы HDMI тоже кодек, неважно что никакого преобразования реально нет и трансмиттер гонит PCM в неизменном виде, влсе же надо знать параметры аудиопотока чтобы в правильном формате данные отдавать так что

Оно вообще некорректно показывает для HDMI интерфейса

ты чета не то смотришь

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

ты чета не то смотришь

cat /proc/asound/cards 
 0 [HDMI           ]: HDA-Intel - HDA ATI HDMI
                      HDA ATI HDMI at 0xfe960000 irq 54
 1 [Generic        ]: HDA-Intel - HD-Audio Generic
                      HD-Audio Generic at 0xfe800000 irq 56
cat /proc/asound/card0/codec#* | grep rates
    rates [0x70]: 32000 44100 48000
steemandlinux ★★★★★
() автор топика
Последнее исправление: steemandlinux (всего исправлений: 1)
Ответ на: комментарий от Deleted

Я так понимаю разница в наложении эффектов? Типа увеличения цветности и разрешения изображения перед редактированием.

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

неважно что никакого преобразования реально нет

Тогда интересно, у меня 44100 - 48000 - 192000 или 44100 - 192000 в данный момент?

steemandlinux ★★★★★
() автор топика

спрашивается, накой отдавать переделанный звук по цифровому кабелю? смысл его корёжить, с одного ЦАПА на другой?

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

Прекрасно, возможен вариант что пульсаудио конвертит 44100 в 192000 кгц и выплевывает в PCM, а возможно что альса конвертит 44100 в 48000, а пульсаудио тупо выплевывает готовый поток в виде 192 кгц, который уже получил в виде кривых 48 кгц.

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

Со своим ЦАПом, причем тут с ЦАПа на ЦАП?

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

Это частота дискретизации. Чем она выше, тем ниже потери при подготовке 44100 для ЦАПа. Дело в том, что 44100 поддерживает только профессиональная техника, плюс всякие радости в виде ручного микширования.

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

возможен вариант что пульсаудио конвертит 44100 в 192000 кгц и выплевывает в PCM

невозможно потому что rates по твоим словам показывает максимум 48000, у драйверов alsa в ядре прописаны частоты которые поддерживает устройство - другие alsa не примет, например для интеля

https://elixir.bootlin.com/linux/v4.16.10/source/sound/x86/intel_hdmi_audio.c...

anonymous
()
Ответ на: комментарий от steemandlinux

Ну тогда почему ресивер видит переключения alternate-sample-rate?

не знаю - драйверу насрать на настройки пульсаудио, без ресемплинга под допустимую частоту дискретизации (и пульс его сделает) он обязан вернуть ошибку. У меня единственный вариант - ты что-то не то смотришь :)

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

Т.е. PCM 192/96/48 khz которые я вижу на мониторе при смене настроек пульсаудио это я не то смотрю?

Но тут есть еще одна фишка, звук в вибере. Когда стоит 48 кгц, он работает нормально, а на 96 и 192 кгц начинает трещать, притом на 192 трещит в 2 раза дольше чем на 96.

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

Т.е. PCM 192/96/48 khz которые я вижу на мониторе при смене настроек пульсаудио это я не то смотрю?

У HDMI есть EDID и если аудио драйвер его не игнорирует то параметры аудио (в том числе sample rate) будут зависеть от подключенного устройства - что и к чему ты подключаешь и для какого устройства сморишь я не знаю. Информацию из EDID подключенного в данный момент устройства можно посмотреть так

cat /proc/asound/card*/eld\#*

например у меня

cat /proc/asound/card*/eld\#*
monitor_present		1
eld_valid		1
monitor_name		BenQ G2450H
connection_type		HDMI
eld_version		[0x2] CEA-861D or below
edid_version		[0x3] CEA-861-B, C or D
manufacture_id		0xd109
product_id		0x78ab
port_id			0x0
support_hdcp		0
support_ai		0
audio_sync_delay	0
speakers		[0x1] FL/FR
sad_count		1
sad0_coding_type	[0x1] LPCM
sad0_channels		2
sad0_rates		[0xe0] 32000 44100 48000
sad0_bits		[0xe0000] 16 20 24
anonymous
()
Ответ на: комментарий от anonymous

Спасибо бро :)

monitor_present		1
eld_valid		1
monitor_name		AV Receiver
connection_type		HDMI
eld_version		[0x2] CEA-861D or below
edid_version		[0x0] no CEA EDID Timing Extension block present
manufacture_id		0xcb3d
product_id		0x1161
port_id			0xd9894495558859e
support_hdcp		0
support_ai		0
audio_sync_delay	0
speakers		[0x4f] FL/FR LFE FC RL/RR RLC/RRC
sad_count		6
sad0_coding_type	[0x1] LPCM
sad0_channels		7
sad0_rates		[0x1ee0] 32000 44100 48000 88200 96000 176400 192000
sad0_bits		[0xe0000] 16 20 24
sad1_coding_type	[0x2] AC-3
sad1_channels		7
sad1_rates		[0xe0] 32000 44100 48000
sad1_max_bitrate	640000
sad2_coding_type	[0x7] DTS
sad2_channels		7
sad2_rates		[0xc0] 44100 48000
sad2_max_bitrate	1536000
sad3_coding_type	[0xa] E-AC-3/DD+ (Dolby Digital Plus)
sad3_channels		7
sad3_rates		[0xc0] 44100 48000
sad4_coding_type	[0xb] DTS-HD
sad4_channels		7
sad4_rates		[0x1ec0] 44100 48000 88200 96000 176400 192000
sad5_coding_type	[0xc] MLP (Dolby TrueHD)
sad5_channels		7
sad5_rates		[0x1ee0] 32000 44100 48000 88200 96000 176400 192000
monitor_present		0
eld_valid		0
monitor_present		0
eld_valid		0
monitor_present		0
eld_valid		0
monitor_present		0
eld_valid		0
steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от anonymous

На 384 кгц звук поинтересней и сцена детальнее.

anonymous
()
Ответ на: комментарий от steemandlinux

Но тут есть еще одна фишка, звук в вибере. Когда стоит 48 кгц, он работает нормально, а на 96 и 192 кгц начинает трещать, притом на 192 трещит в 2 раза дольше чем на 96.

Не ври, пщщщащщщ ужщщ дщщно не пщщщщщ

anonymous
()

Вероятнее всего ни карта, ни ресивер, ни hdmi не могут в >192/24.

ЦАП в ресивере может стоять на 384 kHz.

altwazar ★★★★
()
Последнее исправление: altwazar (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.