Alsa doesn't work properly

The alsamixer settings are not saved even by the “alsactl store” command. I am using a Creative Sound Blaster X G6 external sound card. Before manually reconnecting the card to the usb port - the system fixed the alsa sound frequency output at 48kHz. Also no audio recording devices are available, because the “Line In” value is fixed. Changes in alsamixer with saving do not work. I try to play the file through VLC with output to alsa - sample rate is always static at 48000. Here are stream0 values before reconnecting the card:

cat /proc/asound/G6/stream0                                                                                                                                                                                                 
Creative Technology Ltd Sound BlasterX G6 at usb-0000:13:00.0-6, full speed : USB Audio

Playback:
  Status: Running
    Interface = 1
    Altset = 1
    Packet Size = 294
    Momentary freq = 48005 Hz (0x30.0130)
    Feedback Format = 10.14
  Interface 1
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 0x01 (1 OUT) (ASYNC)
    Rates: 48000
    Bits: 24
    Channel map: FL FR
    Sync Endpoint: 0x81 (1 IN)
    Sync EP Interface: 1
    Sync EP Altset: 1
    Implicit Feedback Mode: No

Capture:
  Status: Stop
  Interface 2
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 0x82 (2 IN) (ASYNC)
    Rates: 48000
    Bits: 24
    Channel map: FL FR

Here are after:

cat /proc/asound/G6/stream0                                                                                                                                                                                                   ✔ 
Creative Technology Ltd Sound BlasterX G6 at usb-0000:13:00.0-6, high speed : USB Audio

Playback:
  Status: Running
    Interface = 1
    Altset = 2
    Packet Size = 72
    Momentary freq = 44103 Hz (0x5.834d)
    Feedback Format = 16.16
  Interface 1
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 0x01 (1 OUT) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 24
    Channel map: FL FR
    Sync Endpoint: 0x81 (1 IN)
    Sync EP Interface: 1
    Sync EP Altset: 1
    Implicit Feedback Mode: No
  Interface 1
    Altset 2
    Format: S32_LE
    Channels: 2
    Endpoint: 0x01 (1 OUT) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 32
    Channel map: FL FR
    Sync Endpoint: 0x81 (1 IN)
    Sync EP Interface: 1
    Sync EP Altset: 2
    Implicit Feedback Mode: No

Capture:
  Status: Stop
  Interface 2
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 0x82 (2 IN) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 24
    Channel map: FL FR
  Interface 2
    Altset 2
    Format: S32_LE
    Channels: 2
    Endpoint: 0x82 (2 IN) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 32
    Channel map: FL FR

Both results were obtained during sound playback. After reconnecting, the settings in alsamixer are also not saving, but there is an additional slider (which was always there once) - Speaker Clock Source (enable/disable DSP). I am using a fresh system with kernel 6.7.4-2.

alsactl requires sudo to save or restore ALSA settings in /var/lib/alsa/asound.state

Settings can also be saved to user home folder without root privileges:

alsactl store -f ~/.config/asound.state
alsactl restore -f ~/.config/asound.state

alsactl — Arch manual pages

Yes, that’s right, I was running it through sudo. The problem goes deeper than alsa config. At a low level, at the kernel level, because at normal startup the sound card is not initialized correctly (not completely), but if I reconnect the card the rest of the settings (in alsamixer) appear. The same thing with supported frequencies. If I reconnect the card, log out and log back in - all settings and frequencies are saved (config also loads all values). If I don’t reconnect the card - the situation doesn’t change in any way. The only solution I found is to unload the xhci-usb driver for a while and load it again.