snd-so c -букка как звуковая карта для встраиваемых linux - PullRequest
2 голосов
/ 10 января 2020

Я хочу использовать ALSA simple-audio-card witch snd-so c-dummy для воспроизведения и записи звука с интерфейса I2S / PCM на основе этот вопрос и этот патч Мне удалось воспроизвести звук, но захват звука все еще не работает.

Использование команды:

arecord -vvv -f dat /dev/null

Показывает, что нет сэмплы входящего звука, но анализатор logi c показывает что-то еще, данные поступают, и я не знаю, почему arecord не может это прочитать.

Дерево моего устройства для звукового устройства:

&i2s0 {
    status = "okay";
    pinctrl-0 = <&i2s0_pins>;
    pinctrl-names = "default";
    #sound-dai-cells = <0>;
};

/ {
    codec_dummy: codec_dummy {
        compatible = "linux,snd-soc-dummy";
        #sound-dai-cells = <0>;
        status = "okay";
    };

    sound {
        compatible = "simple-audio-card";
        simple-audio-card,name = "DUMMY_SND";

        simple-audio-card,format = "dsp_a";
        simple-audio-card,bitclock-master = <&snd_cpu>;
        simple-audio-card,frame-master = <&snd_cpu>;
        simple-audio-card,mclk-fs = <512>;
        status = "okay";

        snd_cpu: simple-audio-card,cpu {
            sound-dai = <&i2s0>;
            dai-tdm-slot-num = <2>;
            dai-tdm-slot-width = <16>;
        };

        snd_codec: simple-audio-card,codec {
            sound-dai = <&codec_dummy>;
        };
    };
};

И мой файл / etc / asound.conf :

pcm.device{
        format S16_LE
        rate 44100
        type hw
        card 0
        channels 2
}

pcm.!default{
    type plug
    slave.pcm "device"
}

Возможно, вы знаете как исправить перехват звука в этом случае?

...