2020-06-03 にっき

はい

sE DM1 DYNAMITE

かなり音量があがった。 オーディオ・インターフェイスのプリアンプのゲインを最大にせずとも十分な音が取れる。 べんり。

モノラルマイク

今マイクの入力がオーディオ・インターフェイス経由でステレオで入っている。 これをモノラルにしたい。 Jackでは出来ることを確認している。 Jackなしでもできないかな。

何もわからないので色々としらべていた。alsaの設定よくわからなかった...。 PulseAudioでなんかいい感じにすることにした。

つないでいるデバイスの名前を調べる。

% pacmd list-sources

(略)

  * index: 5
        name: <alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.analog-stereo>
        driver: <module-alsa-card.c>
        flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
        state: SUSPENDED
        suspend cause: IDLE
        priority: 9049
        volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        base volume: 65536 / 100% / 0.00 dB
        volume steps: 65537
        muted: no
        current latency: 0.00 ms
        max rewind: 0 KiB
        sample spec: s16le 2ch 44100Hz
        channel map: front-left,front-right
                     ステレオ
        used by: 0
        linked by: 1
        configured latency: 0.00 ms; range is 0.50 .. 2000.00 ms
        card: 2 <alsa_card.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00>
        module: 8
        properties:
                alsa.resolution_bits = "16"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "USB Audio"
                alsa.id = "USB Audio"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "0"
                alsa.card = "3"
                alsa.card_name = "USB Audio CODEC"
                alsa.long_card_name = "Burr-Brown from TI USB Audio CODEC at usb-0000:0c:00.3-4, full speed"
                alsa.driver_name = "snd_usb_audio"
                device.bus_path = "pci-0000:0c:00.3-usb-0:4:1.0"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:0c:00.3/usb3/3-4/3-4:1.0/sound/card3"
                udev.id = "usb-Burr-Brown_from_TI_USB_Audio_CODEC-00"
                device.bus = "usb"
                device.vendor.id = "08bb"
                device.vendor.name = "Texas Instruments"
                device.product.id = "2902"
                device.product.name = "PCM2902 Audio Codec"
                device.serial = "Burr-Brown_from_TI_USB_Audio_CODEC"
                device.string = "front:3"
                device.buffering.buffer_size = "352800"
                device.buffering.fragment_size = "176400"
                device.access_mode = "mmap+timer"
                device.profile.name = "analog-stereo"
                device.profile.description = "アナログステレオ"
                device.description = "PCM2902 Audio Codec アナログステレオ"
                alsa.mixer_name = "USB Mixer"
                alsa.components = "USB08bb:2902"
                module-udev-detect.discovered = "1"
                device.icon_name = "audio-card-usb"
        ports:
                analog-input: アナログ入力 (priority 10000, latency offset 0 usec, available: unknown)
                        properties:

        active port: <analog-input>

/etc/pulse/default.pa に追記、オプションは以下のサイトでしらべられる。 https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/

load-module module-remap-source source_name=q2u master=alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.iec958-stereo master_channel_map=left channel_map=mono

設定して再起動。

% pulseaudio --kill && pulseaudio --start

確認する、出来た。

% pacmd list-sources

(略)

    index: 4
        name: <q2u>
        driver: <module-remap-source.c>
        flags: DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
        state: SUSPENDED
        suspend cause: IDLE
        priority: 1000
        volume: mono: 65536 / 100% / 0.00 dB
                balance 0.00
        base volume: 65536 / 100% / 0.00 dB
        volume steps: 65537
        muted: no
        current latency: 0.00 ms
        max rewind: 0 KiB
        sample spec: s16le 1ch 44100Hz
        channel map: mono
                     モノ
        used by: 0
        linked by: 0
        configured latency: 0.00 ms; range is 0.50 .. 2000.00 ms
        module: 28
        properties:
                device.master_device = "alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.iec958-stereo"
                device.class = "filter"
                device.description = "Remapped PCM2902 Audio Codec アナログステレオ"
                device.icon_name = "audio-input-microphone"

device.description を設定するとより分かりやすい名前になる。'' で囲った中で が区切り文字として使われるので名前に空白を含めたいときはエスケープする。

load-module module-remap-source source_name=q2u_mono source_properties="device.description='Q2U\ Mono'" master=alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.iec958-stereo master_channel_map=left channel_map=mono

ついでにノイズキャンセリングする、オプションこのへんにのってる。 https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#module-echo-cancel でもなぜかArchLinuxのWikiの方が詳しい。 https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting#Enable_Echo.2FNoise-Cancelation

load-module module-echo-cancel source_name=q2u source_properties="device.description='Q2U'" source_master=q2u_mono use_master_format=1 aec_method=webrtc aec_args="analog_gain_control=0\ digital_gain_control=0"

ゲインのコントロールを勝手にされないようなオプションをつけると調整が自分の意思で出来てよさそう

とりあえずこれで明日試してみようとおもう。

はい。

でも /etc/pulse/default.pa はシステムの設定なので書き換えたくない。自分のホーム以下に ~/.config/pulse/default.pa つくった。 これでよさそう。

# ~/.config/pulse/default.pa
load-module module-remap-source source_name=q2u_mono source_properties="device.description='Q2U\ Mono'" master=alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.iec958-stereo master_channel_map=left channel_map=mono
load-module module-echo-cancel source_name=q2u source_properties="device.description='Q2U'" source_master=q2u_mono use_master_format=1 aec_method=webrtc aec_args="analog_gain_control=0\ digital_gain_control=0"

いいなと思ったらKyashでお金を下さい
20191128011151
GitHubスポンサーも受け付けています
https://github.com/sponsors/hanachin/