• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

2. Soundcard mit AS4000 Chip will nicht

roemi

Advanced Hacker
Hey,

ich möchte mit für VOIP eine zweite Soundkarte einbauen.
Die primäre ist eine Onboard mi Treiber snd-via82xxTreiber.

Die zweite ist eine Noname (FC SC4000) mit ALS4000 Chip.

Diese wird auch von Suse 10.2 einwandfrei als solche erkannt aber nicht konfiguriert.
Ich bekomme die Meldung:
Das Kernelmodul snd-als4000 für die Soundunterstützung konnte nicht geladen werden. Ein möglicher Grund dafür können falsche Modulparameter sein, sowie ungültige IO- oder IRQ-Parameter.

Ich habe die karte auch bereits auf einen anderen Steckplatz (von 1 auf 5) gesteckt.

An anderer Stelle kam dieser Tip
1. Hab ich den Mixer angemacht
2. Hab ich im Yast2 - Hardware - Soundkarte - Optionen - den Punkten "AC´97 Workaround für ungewöhnliche Hartware" UND dem "enable workaround for buggy interrupts on some motherboards" als Wert eine 0 vergeben.
3. Weiter und beenden.

Leider habe ich keine Optionen :? zur Auswahl. Mein Sound liegt z.Z. kompl. brach. Ich werde nun die zweite Karte rausziehen und die Funktion testen.

Jemand eine Idee?

Edit: Nach ausbau der Karte funzt mein Sound auch wieder Onboard!
 
OP
roemi

roemi

Advanced Hacker
Hi Cornel,

ich kann im BIOS eigentlich nix dafür aber auch nix dagegen erkennen 8)
Die Onboard sieht man ... die andere nicht ... wo (außer in der manuellen IRQ Vergabe)?

Aber ist es nicht so das wenn die Karte vom OS angezeigt wird, das sie auch erkannt wurde?
 

whois

Ultimate Guru
Hi Michael

Naja Linux erkennt normalerweise nur Dinge die das Bios auch erkennt. :wink:
Gib uns doch mal bitte folgende conf zum durchschauen.

Code:
cat /usr/share/alsa/alsa.conf
Code:
cat /proc/asound/devices
Code:
aplay -l

cu

Cornel
 
OP
roemi

roemi

Advanced Hacker
Futter für die Experten :D

Code:
#
#  ALSA library configuration file
#

# pre-load the configuration files

@hooks [
        {
                func load
                files [
                        "/etc/asound.conf"
                        "~/.asoundrc"
                ]
                errors false
        }
]

# load card-specific configuration files (on request)

cards.@hooks [
        {
                func load
                files [
                        {
                                @func concat
                                strings [
                                        { @func datadir }
                                        "/cards/aliases.conf"
                                ]
                        }
                ]
        }
        {
                func load_for_all_cards
                files [
                        {
                                @func concat
                                strings [
                                        { @func datadir }
                                        "/cards/"
                                        { @func private_string }
                                        ".conf"
                                ]
                        }
                ]
                errors false
        }
]

# defaults

defaults.ctl.card 0
defaults.pcm.card 0
defaults.pcm.device 0
defaults.pcm.subdevice -1
defaults.pcm.nonblock 1
defaults.pcm.ipc_key 5678293
defaults.pcm.ipc_gid audio
defaults.pcm.ipc_perm 0660
defaults.pcm.dmix_max_periods 0
defaults.pcm.dmix_rate 48000
defaults.pcm.dmix_format S16_LE
defaults.pcm.front.card defaults.pcm.card
defaults.pcm.front.device defaults.pcm.device
defaults.pcm.rear.card defaults.pcm.card
defaults.pcm.rear.device defaults.pcm.device
defaults.pcm.center_lfe.card defaults.pcm.card
defaults.pcm.center_lfe.device defaults.pcm.device
defaults.pcm.side.card defaults.pcm.card
defaults.pcm.side.device defaults.pcm.device
defaults.pcm.surround40.card defaults.pcm.card
defaults.pcm.surround40.device defaults.pcm.device
defaults.pcm.surround41.card defaults.pcm.card
defaults.pcm.surround41.device defaults.pcm.device
defaults.pcm.surround50.card defaults.pcm.card
defaults.pcm.surround50.device defaults.pcm.device
defaults.pcm.surround51.card defaults.pcm.card
defaults.pcm.surround51.device defaults.pcm.device
defaults.pcm.surround71.card defaults.pcm.card
defaults.pcm.surround71.device defaults.pcm.device
defaults.pcm.iec958.card defaults.pcm.card
defaults.pcm.iec958.device defaults.pcm.device
defaults.pcm.modem.card defaults.pcm.card
defaults.pcm.modem.device defaults.pcm.device
defaults.rawmidi.card 0
defaults.rawmidi.device 0
defaults.rawmidi.subdevice -1
defaults.hwdep.card 0
defaults.hwdep.device 0
defaults.timer.class 2
defaults.timer.sclass 0
defaults.timer.card 0
defaults.timer.device 0
defaults.timer.subdevice 0

#
#  PCM interface
#

pcm.hw {
        @args [ CARD DEV SUBDEV ]
        @args.CARD {
                type string
                default {
                        @func getenv
                        vars [
                                ALSA_PCM_CARD
                                ALSA_CARD
                        ]
                        default {
                                @func refer
                                name defaults.pcm.card
                        }
                }
        }
        @args.DEV {
                type integer
                default {
                        @func igetenv
                        vars [
                                ALSA_PCM_DEVICE
                        ]
                        default {
                                @func refer
                                name defaults.pcm.device
                        }
                }
        }
        @args.SUBDEV {
                type integer
                default {
                        @func refer
                        name defaults.pcm.subdevice
                }
        }
        type hw
        card $CARD
        device $DEV
        subdevice $SUBDEV
}

pcm.plughw {
        @args [ CARD DEV SUBDEV ]
        @args.CARD {
                type string
                default {
                        @func getenv
                        vars [
                                ALSA_PCM_CARD
                                ALSA_CARD
                        ]
                        default {
                                @func refer
                                name defaults.pcm.card
                        }
                }
        }
        @args.DEV {
                type integer
                default {
                        @func igetenv
                        vars [
                                ALSA_PCM_DEVICE
                        ]
                        default {
                                @func refer
                                name defaults.pcm.device
                        }
                }
        }
        @args.SUBDEV {
                type integer
                default {
                        @func refer
                        name defaults.pcm.subdevice
                }
        }
        type plug
        slave.pcm {
                type hw
                card $CARD
                device $DEV
                subdevice $SUBDEV
        }
}

pcm.plug {
        @args [ SLAVE ]
        @args.SLAVE {
                type string
        }
        type plug
        slave.pcm $SLAVE
}

pcm.shm {
        @args [ SOCKET PCM ]
        @args.SOCKET {
                type string
        }
        @args.PCM {
                type string
        }
        type shm
        server $SOCKET
        pcm $PCM
}

pcm.tee {
        @args [ SLAVE FILE FORMAT ]
        @args.SLAVE {
                type string
        }
        @args.FILE {
                type string
        }
        @args.FORMAT {
                type string
                default raw
        }
        type file
        slave.pcm $SLAVE
        file $FILE
        format $FORMAT
}

pcm.file {
        @args [ FILE FORMAT ]
        @args.FILE {
                type string
        }
        @args.FORMAT {
                type string
                default raw
        }
        type file
        slave.pcm null
        file $FILE
        format $FORMAT
}

pcm.null {
        type null
}

# redirect to load-on-demand extended pcm definitions
pcm.cards cards.pcm
# some links for easy use
pcm.front cards.pcm.front
pcm.rear cards.pcm.rear
pcm.center_lfe cards.pcm.center_lfe
pcm.side cards.pcm.side
pcm.surround40 cards.pcm.surround40
pcm.surround41 cards.pcm.surround41
pcm.surround50 cards.pcm.surround50
pcm.surround51 cards.pcm.surround51
pcm.surround71 cards.pcm.surround71
pcm.iec958 cards.pcm.iec958
pcm.spdif cards.pcm.iec958
pcm.modem cards.pcm.modem
pcm.phoneline cards.pcm.phoneline

pcm.default cards.pcm.default
pcm.dmix cards.pcm.dmix
pcm.dsnoop cards.pcm.dsnoop

#
#  Control interface
#

ctl.hw {
        @args[ CARD ]
        @args.CARD {
                type string
                default {
                        @func getenv
                        vars [
                                ALSA_CTL_CARD
                                ALSA_CARD
                        ]
                        default {
                                @func refer
                                name defaults.ctl.card
                        }
                }
        }
        type hw
        card $CARD
}

ctl.shm {
        @args [ SOCKET CTL ]
        @args.SOCKET {
                type string
        }
        @args.CTL {
                type string
        }
        type shm
        server $SOCKET
        ctl $CTL
}

ctl.default {
        type hw
        card {
                @func getenv
                vars [
                        ALSA_CTL_CARD
                        ALSA_CARD
                ]
                default {
                        @func refer
                        name defaults.ctl.card
                }
        }
}

#
#  RawMidi interface
#

rawmidi.hw {
        @args [ CARD DEV SUBDEV ]
        @args.CARD {
                type string
                default {
                        @func getenv
                        vars [
                                ALSA_RAWMIDI_CARD
                                ALSA_CARD
                        ]
                        default {
                                @func refer
                                name defaults.rawmidi.card
                        }
                }
        }
        @args.DEV {
                type integer
                default {
                        @func igetenv
                        vars [
                                ALSA_RAWMIDI_DEVICE
                        ]
                        default {
                                @func refer
                                name defaults.rawmidi.device
                        }
                }
        }
        @args.SUBDEV {
                type integer
                default -1
        }
        type hw
        card $CARD
        device $DEV
        subdevice $SUBDEV
}

rawmidi.default {
        type hw
        card {
                @func getenv
                vars [
                        ALSA_RAWMIDI_CARD
                        ALSA_CARD
                ]
                default {
                        @func refer
                        name defaults.rawmidi.card
                }
        }
        device {
                @func igetenv
                vars [
                        ALSA_RAWMIDI_DEVICE
                ]
                default {
                        @func refer
                        name defaults.rawmidi.device
                }
        }
}

rawmidi.virtual {
        @args [ MERGE ]
        @args.MERGE {
                type string
                default 1
        }
        type virtual
        merge $MERGE
}

#
#  Sequencer interface
#

seq.default {
        type hw
}

seq.hw {
        type hw
}

#
#  HwDep interface
#

hwdep.hw {
        @args [ CARD DEV ]
        @args.CARD {
                type string
                default {
                        @func getenv
                        vars [
                                ALSA_HWDEP_CARD
                                ALSA_CARD
                        ]
                        default {
                                @func refer
                                name defaults.hwdep.card
                        }
                }
        }
        @args.DEV {
                type integer
                default {
                        @func igetenv
                        vars [
                                ALSA_HWDEP_DEVICE
                        ]
                        default {
                                @func refer
                                name defaults.hwdep.device
                        }
                }
        }
        type hw
        card $CARD
        device $DEV
}

hwdep.default {
        type hw
        card {
                @func getenv
                vars [
                        ALSA_HWDEP_CARD
                        ALSA_CARD
                ]
                default {
                        @func refer
                        name defaults.hwdep.card
                }
        }
        device {
                @func igetenv
                vars [
                        ALSA_HWDEP_DEVICE
                ]
                default {
                        @func refer
                        name defaults.hwdep.device
                }
        }
}

#
#  Timer interface
#

timer_query.hw {
        type hw
}

timer_query.default {
        type hw
}

timer.hw {
        @args [ CLASS SCLASS CARD DEV SUBDEV ]
        @args.CLASS {
                type integer
                default {
                        @func refer
                        name defaults.timer.class
                }
        }
        @args.SCLASS {
                type integer
                default {
                        @func refer
                        name defaults.timer.sclass
                }
        }
        @args.CARD {
                type string
                default {
                        @func refer
                        name defaults.timer.card
                }
        }
        @args.DEV {
                type integer
                default {
                        @func refer
                        name defaults.timer.device
                }
        }
        @args.SUBDEV {
                type integer
                default {
                        @func refer
                        name defaults.timer.subdevice
                }
        }
        type hw
        class $CLASS
        sclass $SCLASS
        card $CARD
        device $DEV
        subdevice $SUBDEV
}

timer.default {
        type hw
        class {
                @func refer
                name defaults.timer.class
        }
        sclass {
                @func refer
                name defaults.timer.sclass
        }
        card {
                @func refer
                name defaults.timer.card
        }
        device {
                @func refer
                name defaults.timer.device
        }
        subdevice {
                @func refer
                name defaults.timer.subdevice
        }
}

Code:
cat /proc/asound/devices
  2: [ 1- 0]: raw midi
  3: [ 1]   : control
  4:        : timer
  5:        : sequencer

Code:
aplay -l
**** List of PLAYBACK Hardware Devices ****

Ich musste erst die Karte einbauen. Kämpfe derweil mit xlite und Twinkle.
Beides nicht mein Ding.
 

whois

Ultimate Guru
Naja das gefällt mir gar nicht.

Code:
aplay -l 
**** List of PLAYBACK Hardware Devices ****

Was sagt
Code:
aplay -L

cu
 
OP
roemi

roemi

Advanced Hacker
Jo, mir auch nicht :D

Code:
PCM list:
hw {
        @args.0 CARD
        @args.1 DEV
        @args.2 SUBDEV
        @args.CARD {
                type string
                default {
                        @func getenv
                        vars {
                                0 ALSA_PCM_CARD
                                1 ALSA_CARD
                        }
                        default {
                                @func refer
                                name 'defaults.pcm.card'
                        }
                }
        }
        @args.DEV {
                type integer
                default {
                        @func igetenv
                        vars {
                                0 ALSA_PCM_DEVICE
                        }
                        default {
                                @func refer
                                name 'defaults.pcm.device'
                        }
                }
        }
        @args.SUBDEV {
                type integer
                default {
                        @func refer
                        name 'defaults.pcm.subdevice'
                }
        }
        type hw
        card $CARD
        device $DEV
        subdevice $SUBDEV
}
plughw {
        @args.0 CARD
        @args.1 DEV
        @args.2 SUBDEV
        @args.CARD {
                type string
                default {
                        @func getenv
                        vars {
                                0 ALSA_PCM_CARD
                                1 ALSA_CARD
                        }
                        default {
                                @func refer
                                name 'defaults.pcm.card'
                        }
                }
        }
        @args.DEV {
                type integer
                default {
                        @func igetenv
                        vars {
                                0 ALSA_PCM_DEVICE
                        }
                        default {
                                @func refer
                                name 'defaults.pcm.device'
                        }
                }
        }
        @args.SUBDEV {
                type integer
                default {
                        @func refer
                        name 'defaults.pcm.subdevice'
                }
        }
        type plug
        slave.pcm {
                type hw
                card $CARD
                device $DEV
                subdevice $SUBDEV
        }
}
plug {
        @args.0 SLAVE
        @args.SLAVE {
                type string
        }
        type plug
        slave.pcm $SLAVE
}
shm {
        @args.0 SOCKET
        @args.1 PCM
        @args.SOCKET {
                type string
        }
        @args.PCM {
                type string
        }
        type shm
        server $SOCKET
        pcm $PCM
}
tee {
        @args.0 SLAVE
        @args.1 FILE
        @args.2 FORMAT
        @args.SLAVE {
                type string
        }
        @args.FILE {
                type string
        }
        @args.FORMAT {
                type string
                default raw
        }
        type file
        slave.pcm $SLAVE
        file $FILE
        format $FORMAT
}
file {
        @args.0 FILE
        @args.1 FORMAT
        @args.FILE {
                type string
        }
        @args.FORMAT {
                type string
                default raw
        }
        type file
        slave.pcm null
        file $FILE
        format $FORMAT
}
null {
        type null
}
cards 'cards.pcm'
front 'cards.pcm.front'
rear 'cards.pcm.rear'
center_lfe 'cards.pcm.center_lfe'
side 'cards.pcm.side'
surround40 'cards.pcm.surround40'
surround41 'cards.pcm.surround41'
surround50 'cards.pcm.surround50'
surround51 'cards.pcm.surround51'
surround71 'cards.pcm.surround71'
iec958 'cards.pcm.iec958'
spdif 'cards.pcm.iec958'
modem 'cards.pcm.modem'
phoneline 'cards.pcm.phoneline'
default 'cards.pcm.default'
dmix 'cards.pcm.dmix'
dsnoop 'cards.pcm.dsnoop'
 

whois

Ultimate Guru
Hi Michael

Ich gehe mal davon aus du bekommst auch nur über den Soundchip eine Ausgabe oder?

Btw. Was für ein Bios hast du und deaktivier den Chip doch mal im Bios?

cu

Cornel
 
OP
roemi

roemi

Advanced Hacker
Sodele, heute hat mich mein Linux genug geärgert :?

Meine Jukebox hat den Dienst eingestellt. Ich konnte Yast2 bzw. alles das Root benötigt nicht mehr starten (gelöst) und mein KMix hatte sich völlig verstellt (ebenfalls gelöst).

Wegen der zweiten Soundkarte hab ich jetzte aber keinen Nerv mehr zu.

Tschuldigung Cornel. Sei mir nicht böse, aber ich besorge erstmal ne andere karte. Die kommt mir seltsam vor (ist auch einige Millimeter kleiner :?: )

Mein Board und das Bios (ASROCK K7VT4A Pro, Amibios 3.31) sollten es können (zumindest gem. Info's aus dem Netz).

Und wie immer ist aus einem "Schatz, ich installiere nur mal schnell ...." ein Tag und damit ein schiefer Haussegen geworden :wink:
 
OP
roemi

roemi

Advanced Hacker
Oki, das mit JuK hab ich nun auch wieder im Griff. :D
Die Ausgabe hatte sich (oder ich habe :oops: ) von aKode auf aRts umgestellt.
Das brachte mir den "Sound server fatal error. CPU overload, aborting" ein.

Weiter geht es mit der Suche nach einer Soundkarte :wink:
Aber erstmal wieder lieb Kind bei der Familie machen 8)
 

whois

Ultimate Guru
OK Michael

Kein Problem vor den Sätzen"Schatz ich mach mal schnell"stehen wir alle irgendwann. :D

Machs gut

Cornel
 
OP
roemi

roemi

Advanced Hacker
Wenn es läuft, läuft es richtig.
Auch die neue Soundkarte incl. Onboard-Sound rennen nun gemeinsam.

Ich habe den Onboard-Sound stets auf "Auto" bzw. auf "Disable" gesetzt.
Nun aber hab ich ihn auf "Enable" gesetzt 8) (wo da auch immer die Logik ist) und nun funzt es.

Wenn ich aber nun telefoniere hört mich die Gegenstelle nicht richtig.
Heißt ich muss noch an den Einstellungen fürs Micro drehen.
Kann mir jemand ein vernünftiges Tool zum testen der Einstellungen nennen?
Ediga hat sowas im Installationsdruide ... der scheint aber eher eine Macke zu haben.
 
Oben