Hello everyone, I got a New sound card (Soundblaster g6) and use it under xubuntu 22.04

The problem is that the default settings of the card are not usable for my use case. For example, the capture device is always set to line-in (instead of external mic) whenever i boot or replug the device.

I changed the settings with alsamixer to my likings and stored the .state file in my ~/.config/ folder When i run restore after reboot all is good. Unfortunatley not for long as the cards keeps going back to its default settings once in a while (sometimes every minute)

I try to solve this with a bash script that restores every 60seconds.

My question is how do i make my stored .state file to the default the card resets to? So i dont have to restore every 60 seconds.

  • mvirts@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    10 months ago

    Are you running pulse audio or pipe wire? My best guess is some other software is unaware of the also state and resetting it.

    • Max-P@lemmy.max-p.me
      link
      fedilink
      arrow-up
      2
      ·
      10 months ago

      It’s Xubuntu 22.04 so most likely PulseAudio.

      Unless you’re using Arch or Gentoo or similar distros that come with nothing by default, it’s pretty much going to have PA or PW.

      I don’t understand how people always end up messing with ALSA when we haven’t used ALSA directly by default on any mainstream distro for nearly a decade. Especially with PipeWire around, ALSA should essentially treated like a low level API you don’t mess with unless you have a kiosk application that’s gonna take exclusive direct use of ALSA. Even ALSA plugins like dmix/dsnoop are wildly outdated and buggy with modern applications, if they even still support using ALSA directly. Messing with ALSA is a recipe for pain especially if you’re not intimate with it. There’s very, very few reasons to do anything with ALSA these days.

      The correct solution is to just select the correct profile from the sound menu, or change it from pavucontrol. That’s it, it’s that simple.

      • mattiOP
        link
        fedilink
        arrow-up
        2
        arrow-down
        1
        ·
        10 months ago

        I wish it would work with pacucontrol, but it dies not give me the external mic Option for the inputs. Alsa does. See my parallel comment.

        • mvirts@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          10 months ago

          Have you checked the configuration tab on pavucontrol? You can usually change how the card is setup there.

    • mattiOP
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      10 months ago

      After some more testing, I think this is indeed the case. The problem is that the device has two input channels (“line-in”, " external mic"). In alsamixer i can select both as “PCM capture source” (from here) However, the input tab of pavucontrol, i can only select “line in”. I switched through all available profiles for the card. But the dropdown only always show “line-in”

      Any ideas?

  • SirPrize@beehaw.org
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    10 months ago

    Can you set the permissions of the file to read only? That way nothing else can edit it on the fly?

    chmod 444 filename

    would make it so the owner, group, and everyone else can only read the file. You can change modification of the file again if you have to edit it.

    • mattiOP
      link
      fedilink
      arrow-up
      1
      ·
      10 months ago

      I could do that, the question is what is the correct config file? I think the .state files are more like snapshots wich are applied to the config when i restore it.

  • MazonnaCara89@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    10 months ago

    Yo dude I have a soundblasterx g6 too, I had this problem too where the sound card disconnected and reconnected as an output devices everytime, I have resolved the problem by changing this setting in the soundblaster commander under windows.

    There is no equivalent driver for linux, at least for what I know, but I’m trying my best to resolve the issue by reverse engineering it.

    For the mic problem I use a bash script on startup that change the mic to the one of the sound card.

    • mattiOP
      link
      fedilink
      arrow-up
      1
      ·
      10 months ago

      Thank you! Will try this tomorrow <3

    • mattiOP
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      10 months ago

      Okay, i had to try it today… Unfortunatley, it was set to “PC/Mac” already. I have factory reset the card and tried again. Have you enabled the sbx profile, or do you use direcr sound mode?

      • MazonnaCara89@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        10 months ago

        No I don’t have direct mode enabled because if you do so the mic doesn’t work (on windows too), and I don’t have any sbx profile enabled.

  • lemba
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    10 months ago

    Have you tried: sudo alsactl store