[pulseaudio-discuss] Issue with multiple hdmi codecs in radeonhd, hacked to work
John Ettedgui
john.ettedgui at gmail.com
Tue Dec 10 06:18:29 PST 2013
On Tue, Dec 10, 2013 at 5:54 AM, Raymond Yau <superquad.vortex2 at gmail.com>wrote:
>
> Codec: ATI R6xx HDMI
>>> Address: 0
>>> AFG Function Id: 0x1 (unsol 0)
>>> Vendor Id: 0x1002aa01
>>> Subsystem Id: 0x00aa0100
>>> Revision Id: 0x100300
>>>
>>> seem that your codec may get Audio-Video Association Port ID and Sink
>>> Information for your DENON-AVAMP
>>>
>>
>
> https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pci/hda/hda_eld.c?id=89250f84644676c1ed6a09acef1033e14596a402
>
> Revision ID 3 and later (0x100300 as reported by procfs codec#X) have
> support for providing more information than the previous revisions (but
> only if supported by the display driver).
>
>
> manufacture_id 0x0
> product_id 0x0
> port_id 0x0
>
> you have to find out those values return by hda_codec_read
> ATI_VERB_GET_SINK_INFO_DATA as your codec are revision 3 and your graphic
> driver got the product_id, manufacture_id, port_id
>
>
> Manufacturer: DON Model 26 Serial Number 16843009
> Made week 0 of 2011
> Monitor name: DENON
>
> Audio data block
> Linear PCM, max channels 7
>
Supported sample rates (kHz): 192 176.4 96 88.2 48 44.1 32
>
Supported sample sizes (bits): 24 20 16
> DTS, max channels 5
> Supported sample rates (kHz): 96 88.2 48 44.1
> Maximum bit rate: 1016 kHz
> AC-3, max channels 5
> Supported sample rates (kHz): 48 44.1 32
> Maximum bit rate: 1016 kHz
> DTS-HD, max channels 7
> Supported sample rates (kHz): 192 176.4 96 88.2 48 44.1
> Dolby Digital+, max channels 7
> Supported sample rates (kHz): 48 44.1
> MAT (MLP), max channels 7
> Supported sample rates (kHz): 192 176.4 96 88.2 48 44.1
> Speaker allocation data block
>
> Do those SAD in EDID in xorg.log match with the specification of your
> Denon HDMI receiver ?
>
> I was not able to find all of these, but I found most of these and they do
match the receiver spec.
speakers [0x5f] FL/FR LFE FC RL/RR RC RLC/RRC
> sad_count 6
> sad0_coding_type [0x1] LPCM
> sad0_channels 8
> sad0_rates [0x1ee0] 32000 44100 48000 88200 96000 176400 192000
> sad0_bits [0xe0000] 16 20 24
> sad1_coding_type [0x2] AC-3
> sad1_channels 6
> sad1_rates [0xe0] 32000 44100 48000
> sad1_max_bitrate 640000
> sad2_coding_type [0x7] DTS
> sad2_channels 6
> sad2_rates [0x6c0] 44100 48000 88200 96000
> sad2_max_bitrate 1536000
> sad3_coding_type [0xa] E-AC-3/DD+ (Dolby Digital Plus)
> sad3_channels 8
> sad3_rates [0xc0] 44100 48000
> sad4_coding_type [0xb] DTS-HD
> sad4_channels 8
> sad4_rates [0x1ec0] 44100 48000 88200 96000 176400 192000
> sad5_coding_type [0xc] MLP (Dolby TrueHD)
> sad5_channels 8
> sad5_rates [0x1ec0] 44100 48000 88200 96000 176400 192000
>
> seem emulated ELD 's max bitrate are different from those in SAD of EDID
>
>
> Do AC3 or DTS passthrough hdmi work (using alsa and pulseaudio) or not ?
>
> Yes with both alsa and pulseaudio (in PA, I'm using my hacked extra hdmi
conf file and not the default one)
> Do your Denon HDMI receiver support 7.1 ?
>
> yes, but I have only have it setup for 5.1
> Profiles:
> output:hdmi-stereo: Digital Stereo (HDMI) Output (sinks: 1,
> sources: 0, priority: 400)
> output:hdmi-surround: Digital Surround 5.1 (HDMI) Output (sinks:
> 1, sources: 0, priority: 3300)
> output:hdmi-stereo-extra1: Digital Stereo (HDMI) Output (sinks: 1,
> sources: 0, priority: 200)
> output:hdmi-surround-extra1: Digital Surround 5.1 (HDMI) Output
> (sinks: 1, sources: 0, priority: 3100)
> output:hdmi-stereo-extra2: Digital Stereo (HDMI) Output (sinks: 1,
> sources: 0, priority: 200)
> output:hdmi-surround-extra2: Digital Surround 5.1 (HDMI) Output
> (sinks: 1, sources: 0, priority: 3100)
> output:hdmi-stereo-extra3: Digital Stereo (HDMI) Output (sinks: 1,
> sources: 0, priority: 200)
> output:hdmi-surround-extra3: Digital Surround 5.1 (HDMI) Output
> (sinks: 1, sources: 0, priority: 3100)
>
> seem no 7.1 in pulseaudio ?
>
> I setup pulse to 6 channels, maybe that is why?
Or maybe it is unrelated?
>
> Do pulseaudio select the first HDMI as active port the default sink ?
>
> I am not sure.
>>
>
> seem no output of pactl stat
>
Ooops
>
>
> http://cgit.freedesktop.org/pulseaudio/pulseaudio/plain/src/modules/alsa/mixer/profile-sets/extra-hdmi.conf
>
> you may comment the last three hdmi devices until monitor_presence bug is
> fixed
>
> Oh I have already a hacked version of this file that works for me as
mentioned in first email, I will attach it.
John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20131210/58024050/attachment-0001.html>
-------------- next part --------------
Module #0
Name: module-device-restore
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Automatically restore the volume/mute state of devices"
module.version = "4.0-271-g09e8-dirty"
Module #1
Name: module-stream-restore
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Automatically restore the volume/mute/device state of streams"
module.version = "4.0-271-g09e8-dirty"
Module #2
Name: module-card-restore
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Automatically restore profile of cards"
module.version = "4.0-271-g09e8-dirty"
Module #3
Name: module-augment-properties
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Augment the property sets of streams with additional static information"
module.version = "4.0-271-g09e8-dirty"
Module #4
Name: module-switch-on-port-available
Argument:
Usage counter: n/a
Properties:
Module #5
Name: module-udev-detect
Argument: tsched=0
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Detect available audio hardware and load matching drivers"
module.version = "4.0-271-g09e8-dirty"
Module #6
Name: module-alsa-card
Argument: device_id="0" name="pci-0000_01_00.1" card_name="alsa_card.pci-0000_01_00.1" namereg_fail=false tsched=no fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes card_properties="module-udev-detect.discovered=1"
Usage counter: 0
Properties:
module.author = "Lennart Poettering"
module.description = "ALSA Card"
module.version = "4.0-271-g09e8-dirty"
Module #7
Name: module-jackdbus-detect
Argument: channels=2
Usage counter: n/a
Properties:
module.author = "David Henningsson"
module.description = "Adds JACK sink/source ports when JACK is started"
module.version = "4.0-271-g09e8-dirty"
Module #8
Name: module-bluetooth-policy
Argument:
Usage counter: n/a
Properties:
module.author = "Frédéric Dalleau"
module.description = "When a bluetooth sink or source is added, load module-loopback"
module.version = "4.0-271-g09e8-dirty"
Module #9
Name: module-bluetooth-discover
Argument:
Usage counter: n/a
Properties:
module.author = "João Paulo Rechi Vita"
module.description = "Detect available Bluetooth daemon and load the corresponding discovery module"
module.version = "4.0-271-g09e8-dirty"
Module #10
Name: module-bluez5-discover
Argument:
Usage counter: n/a
Properties:
module.author = "João Paulo Rechi Vita"
module.description = "Detect available BlueZ 5 Bluetooth audio devices and load BlueZ 5 Bluetooth audio drivers"
module.version = "4.0-271-g09e8-dirty"
Module #11
Name: module-bluez4-discover
Argument:
Usage counter: n/a
Properties:
module.author = "João Paulo Rechi Vita"
module.description = "Detect available BlueZ 4 Bluetooth audio devices and load BlueZ 4 Bluetooth audio drivers"
module.version = "4.0-271-g09e8-dirty"
Module #12
Name: module-esound-protocol-unix
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "ESOUND protocol (UNIX sockets)"
module.version = "4.0-271-g09e8-dirty"
Module #13
Name: module-native-protocol-unix
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Native protocol (UNIX sockets)"
module.version = "4.0-271-g09e8-dirty"
Module #14
Name: module-gconf
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "GConf Adapter"
module.version = "4.0-271-g09e8-dirty"
Module #15
Name: module-default-device-restore
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Automatically restore the default sink and source"
module.version = "4.0-271-g09e8-dirty"
Module #16
Name: module-rescue-streams
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "When a sink/source is removed, try to move its streams to the default sink/source"
module.version = "4.0-271-g09e8-dirty"
Module #17
Name: module-always-sink
Argument:
Usage counter: n/a
Properties:
module.author = "Colin Guthrie"
module.description = "Always keeps at least one sink loaded even if it's a null one"
module.version = "4.0-271-g09e8-dirty"
Module #18
Name: module-intended-roles
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Automatically set device of streams based on intended roles of devices"
module.version = "4.0-271-g09e8-dirty"
Module #19
Name: module-suspend-on-idle
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "When a sink/source is idle for too long, suspend it"
module.version = "4.0-271-g09e8-dirty"
Module #20
Name: module-console-kit
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Create a client for each ConsoleKit session of this user"
module.version = "4.0-271-g09e8-dirty"
Module #21
Name: module-systemd-login
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Create a client for each login session of this user"
module.version = "4.0-271-g09e8-dirty"
Module #22
Name: module-position-event-sounds
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Position event sounds between L and R depending on the position on screen of the widget triggering them."
module.version = "4.0-271-g09e8-dirty"
Module #23
Name: module-role-cork
Argument:
Usage counter: n/a
Properties:
module.author = "Lennart Poettering"
module.description = "Mute & cork streams with certain roles while others exist"
module.version = "4.0-271-g09e8-dirty"
Module #24
Name: module-filter-heuristics
Argument:
Usage counter: n/a
Properties:
module.author = "Colin Guthrie"
module.description = "Detect when various filters are desirable"
module.version = "4.0-271-g09e8-dirty"
Module #25
Name: module-filter-apply
Argument:
Usage counter: n/a
Properties:
module.author = "Colin Guthrie"
module.description = "Load filter sinks automatically when needed"
module.version = "4.0-271-g09e8-dirty"
Module #26
Name: module-dbus-protocol
Argument:
Usage counter: n/a
Properties:
module.author = "Tanu Kaskinen"
module.description = "D-Bus interface"
module.version = "4.0-271-g09e8-dirty"
Sink #0
State: SUSPENDED
Name: alsa_output.pci-0000_01_00.1.hdmi-surround-extra1
Description: Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series] Digital Surround 5.1 (HDMI)
Driver: module-alsa-card.c
Sample Specification: s16le 6ch 48000Hz
Channel Map: front-left,front-right,rear-left,rear-right,front-center,lfe
Owner Module: 6
Mute: no
Volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB, rear-left: 65536 / 100% / 0.00 dB, rear-right: 65536 / 100% / 0.00 dB, front-center: 65536 / 100% / 0.00 dB, lfe: 65536 / 100% / 0.00 dB
balance 0.00
Base Volume: 65536 / 100% / 0.00 dB
Monitor Source: alsa_output.pci-0000_01_00.1.hdmi-surround-extra1.monitor
Latency: 0 usec, configured 0 usec
Flags: HARDWARE DECIBEL_VOLUME LATENCY SET_FORMATS
Properties:
alsa.resolution_bits = "16"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = "HDMI 1"
alsa.id = "HDMI 1"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "7"
alsa.card = "0"
alsa.card_name = "HDA ATI HDMI"
alsa.long_card_name = "HDA ATI HDMI at 0xfbcfc000 irq 47"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:01:00.1"
sysfs.path = "/devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0"
device.bus = "pci"
device.vendor.id = "1002"
device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
device.product.id = "aab0"
device.product.name = "Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]"
device.string = "hdmi:0,1"
device.buffering.buffer_size = "57600"
device.buffering.fragment_size = "11520"
device.access_mode = "mmap"
device.profile.name = "hdmi-surround-extra1"
device.profile.description = "Digital Surround 5.1 (HDMI)"
device.description = "Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series] Digital Surround 5.1 (HDMI)"
alsa.mixer_name = "ATI R6xx HDMI"
alsa.components = "HDA:1002aa01,00aa0100,00100300"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
Ports:
hdmi-output-1: HDMI / DisplayPort 2 (priority: 5800, available)
Active Port: hdmi-output-1
Formats:
pcm
Source #0
State: SUSPENDED
Name: alsa_output.pci-0000_01_00.1.hdmi-surround-extra1.monitor
Description: Monitor of Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series] Digital Surround 5.1 (HDMI)
Driver: module-alsa-card.c
Sample Specification: s16le 6ch 48000Hz
Channel Map: front-left,front-right,rear-left,rear-right,front-center,lfe
Owner Module: 6
Mute: no
Volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB, rear-left: 65536 / 100% / 0.00 dB, rear-right: 65536 / 100% / 0.00 dB, front-center: 65536 / 100% / 0.00 dB, lfe: 65536 / 100% / 0.00 dB
balance 0.00
Base Volume: 65536 / 100% / 0.00 dB
Monitor of Sink: alsa_output.pci-0000_01_00.1.hdmi-surround-extra1
Latency: 0 usec, configured 0 usec
Flags: DECIBEL_VOLUME LATENCY
Properties:
device.description = "Monitor of Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series] Digital Surround 5.1 (HDMI)"
device.class = "monitor"
alsa.card = "0"
alsa.card_name = "HDA ATI HDMI"
alsa.long_card_name = "HDA ATI HDMI at 0xfbcfc000 irq 47"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:01:00.1"
sysfs.path = "/devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0"
device.bus = "pci"
device.vendor.id = "1002"
device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
device.product.id = "aab0"
device.product.name = "Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]"
device.string = "0"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
Formats:
pcm
Client #0
Driver: module-systemd-login.c
Owner Module: 21
Properties:
application.name = "Login Session 1"
systemd-login.session = "1"
Client #3
Driver: protocol-native.c
Owner Module: 13
Properties:
application.name = "pactl"
native-protocol.peer = "UNIX socket client"
native-protocol.version = "28"
application.process.id = "4245"
application.process.user = "john"
application.process.host = "HTPC"
application.process.binary = "pactl"
application.language = "en_US.UTF-8"
window.x11.display = ":0"
application.process.machine_id = "5cd3ebb884298f8df57b1e43000003bc"
application.process.session_id = "1"
Card #0
Name: alsa_card.pci-0000_01_00.1
Driver: module-alsa-card.c
Owner Module: 6
Properties:
alsa.card = "0"
alsa.card_name = "HDA ATI HDMI"
alsa.long_card_name = "HDA ATI HDMI at 0xfbcfc000 irq 47"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:01:00.1"
sysfs.path = "/devices/pci0000:00/0000:00:03.0/0000:01:00.1/sound/card0"
device.bus = "pci"
device.vendor.id = "1002"
device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
device.product.id = "aab0"
device.product.name = "Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]"
device.string = "0"
device.description = "Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
Profiles:
output:hdmi-stereo: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 400)
output:hdmi-surround: Digital Surround 5.1 (HDMI) Output (sinks: 1, sources: 0, priority: 3300)
output:hdmi-stereo-extra1: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 200)
output:hdmi-surround-extra1: Digital Surround 5.1 (HDMI) Output (sinks: 1, sources: 0, priority: 3100)
output:hdmi-stereo-extra2: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 200)
output:hdmi-surround-extra2: Digital Surround 5.1 (HDMI) Output (sinks: 1, sources: 0, priority: 3100)
output:hdmi-stereo-extra3: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 200)
output:hdmi-surround-extra3: Digital Surround 5.1 (HDMI) Output (sinks: 1, sources: 0, priority: 3100)
off: Off (sinks: 0, sources: 0, priority: 0)
Active Profile: output:hdmi-surround-extra1
Ports:
hdmi-output-0: HDMI / DisplayPort (priority: 5900, latency offset: 0 usec, available)
Properties:
device.icon_name = "video-display"
Part of profile(s): output:hdmi-stereo, output:hdmi-surround
hdmi-output-1: HDMI / DisplayPort 2 (priority: 5800, latency offset: 0 usec, available)
Properties:
device.icon_name = "video-display"
Part of profile(s): output:hdmi-stereo-extra1, output:hdmi-surround-extra1
hdmi-output-2: HDMI / DisplayPort 3 (priority: 5700, latency offset: 0 usec, available)
Properties:
device.icon_name = "video-display"
Part of profile(s): output:hdmi-stereo-extra2, output:hdmi-surround-extra2
hdmi-output-3: HDMI / DisplayPort 4 (priority: 5600, latency offset: 0 usec, available)
Properties:
device.icon_name = "video-display"
Part of profile(s): output:hdmi-stereo-extra3, output:hdmi-surround-extra3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: extra-hdmi.conf.mygood
Type: application/octet-stream
Size: 1652 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20131210/58024050/attachment-0001.obj>
More information about the pulseaudio-discuss
mailing list