M-Audio Audiophile 24/96 on Fedora 13 with Pulse Audio

  1. Create ice1712-pulseaudio-workaround.rules and copy to /etc/udev/rules.d/
  2. SUBSYSTEM!=”sound”, GOTO=”ice1712_end”
    ACTION!=”change”, GOTO=”ice1712_end”
    KERNEL!=”card*”, GOTO=”ice1712_end”

    SUBSYSTEMS==”pci”, ATTRS{vendor}==”0×1412″, ATTRS{device}==”0×1712″, ATTRS{subsystem_vendor}==”0×1412″, ATTRS{subsystem_device}==”0xd634″, ENV{PULSE_PROFILE_SET}=”via-ice1712.conf”

    LABEL=”ice1712_end”

  3. Create via-ice1712.conf and copy to /usr/share/pulseaudio/alsa-mixer/profile-sets/
  4. # This file is part of PulseAudio.
    #
    # PulseAudio is free software; you can redistribute it and/or modify
    # it under the terms of the GNU Lesser General Public License as
    # published by the Free Software Foundation; either version 2.1 of the
    # License, or (at your option) any later version.
    #
    # PulseAudio is distributed in the hope that it will be useful, but
    # WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    # General Public License for more details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with PulseAudio; if not, write to the Free Software Foundation,
    # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

    ; Via ICE1712 multi-channel audio chipset
    ;
    ; This chipset has up to four stereo pairs of input and four stereo pairs of
    ; output, named channels 1 to 8. Also available are separate S/PDIF stereo
    ; channels (input and output), and a separate “system-out” stereo jack that
    ; supports 6-channel hardware mixing.
    ;
    ; The S/PDIF stereo channels can be controlled via the mixer for hw:0, and
    ; additionally, the 8 main outputs can be loop-routed to a separate stereo
    ; input pair, available as channels 11 and 12.
    ;
    ; Many cards available from vendors do not expose all channels from this chip
    ; to an external port, which effectively reduces the number of channels that
    ; are useful to the user. However, the ALSA driver still exposes all channels
    ; even if they are not connected.
    ;
    ; We knowingly only define a subset of the theoretically possible
    ; mapping combinations as profiles here.
    ;
    ; See default.conf for an explanation on the directives used here.

    [General]
    auto-profiles = no

    [Mapping analog-mch-in]
    description = Analog Multi-Channel Main Input
    device-strings = hw:%f,0
    #channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right,aux0,aux1,aux2,aux3
    channel-map = aux0,aux1,front-left,front-right,aux2,aux3,aux4,aux5,aux6,aux7,aux8,aux9
    direction = input

    [Mapping analog-mch-out]
    description = Analog Multi-Channel Main Output
    device-strings = hw:%f,0
    #channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right,aux0,aux1
    channel-map = front-left,front-right,aux0,aux1,aux2,aux3,aux4,aux5,aux6,aux7
    direction = output

    [Mapping digital-stereo]
    description = Digital Stereo Input/Output
    #device-strings = hw:%f,1
    device-strings = iec958:%f
    channel-map = left,right
    direction = any

    [Mapping analog-system-out]
    description = Analog Stereo System-Out
    device-strings = hw:%f,2
    channel-map = left,right
    direction = output

    [Profile output:mch]
    description = Multi-Channel Output Active (Digital Disabled)
    output-mappings = analog-mch-out analog-system-out
    input-mappings =
    priority = 90
    skip-probe = yes

    [Profile output:mch+input:mch]
    description = Multi-Channel Input/Output (Digital Disabled)
    output-mappings = analog-mch-out analog-system-out
    input-mappings = analog-mch-in
    priority = 100
    skip-probe = yes

    [Profile output:spdif]
    description = Digital Output (Multi-Channel Disabled)
    output-mappings = digital-stereo analog-system-out
    input-mappings =
    priority = 80
    skip-probe = yes

    [Profile output:spdif+input:spdif]
    description = Digital Input/Output (Multi-Channel Disabled)
    output-mappings = digital-stereo analog-system-out
    input-mappings = digital-stereo
    priority = 90
    skip-probe = yes

    [Profile output:system]
    description = System Output Only
    output-mappings = analog-system-out
    input-mappings =
    priority = 60
    skip-probe = yes

  5. Permissions on each file should be -rw-r–r–
  6. Reboot for the udev changes to take effect.

M-Audio Audiophile 2496 and Pulse Audio 0.9.15 or higher

Solution found in redhat buzilla:

https://bugzilla.redhat.com/show_bug.cgi?id=499435#c29

Edit your /usr/share/alsa/cards/ICE1712.conf and change the following:

–snip–

ICE1712.pcm.front.0 {
@args [ CARD ]
@args.CARD {
type string
}
type route
ttable.0.0 1
ttable.1.1 1
slave.pcm {
type hw
card $CARD
}
slave.format S32_LE
slave.channels 10
}

–snip–

NOTE: The only change in my ICE1712.conf was the addition of these two lines:

slave.format S32_LE
slave.channels 10

note: this change may be obsoleted by the next post

Return top