0

ターゲットのサウンド カードが ALSA を介して動作するようにしようとしています。これは Qualcomm MSM8660 Snapdragon であり、pci デバイスがなく、一種の組み込み Linux を実行していることを意味します。

このデバイスはもともと商用の Android フォンであるため、カーネルに適切な組み込みのオーディオ ドライバーがあると確信していますが、ALSA はオーディオカードをまったく認識しません。

これは、/etc/asound.conf や /usr/share/alsa/alsa.conf などの alsa 構成ファイルをまったく作成しなかったためだと思います (ビルド ソースに付属するデフォルトの alsa.conf を試しましたが、うまくいきませんでした)

以下のコマンドで言うことは次のとおりです。

/dev # ls pcm*
pcmC0D0c  pcmC0D0p  pcmC0D1c  pcmC0D1p


/dev # cat /proc/asound/cards
 0 [msmaudio       ]:  - msm-audio
                      msm-audio


/dev # cat /proc/asound/devices 
  0: [ 0]   : control
 16: [ 0- 0]: digital audio playback
 17: [ 0- 1]: digital audio playback
 24: [ 0- 0]: digital audio capture
 25: [ 0- 1]: digital audio capture
 33:        : timer


/dev # cat /proc/asound/pcm
00-00: DSP 1 msm-codec-dai-0 :  : playback 2 : capture 1
00-01: MVS mvs-codec-dai-1 :  : playback 1 : capture 1


/dev # cat /proc/asound/timers 
G0: system timer : 10000.000us (10000000 ticks)
P0-0-0: PCM playback 0-0-0 : SLAVE
P0-0-1: PCM capture 0-0-1 : SLAVE
P0-0-2: PCM playback 0-0-2 : SLAVE
P0-1-0: PCM playback 0-1-0 : SLAVE
P0-1-1: PCM capture 0-1-1 : SLAVE


/dev # cat /proc/asound/card0/pcm0p/info 
card: 0
device: 0
subdevice: 0
stream: PLAYBACK
id: DSP 1 msm-codec-dai-0
name: 
subname: subdevice #0
class: 0
subclass: 0
subdevices_count: 2
subdevices_avail: 2


/dev # cat /proc/asound/card0/pcm1p/info 
card: 0
device: 1
subdevice: 0
stream: PLAYBACK
id: MVS mvs-codec-dai-1
name: 
subname: subdevice #0
class: 0
subclass: 0
subdevices_count: 1
subdevices_avail: 1

再生するにはどうすればよいか教えてください。

事前に感謝します。

すてきな一日を。


公式の alsa-lib ソースのデフォルトの alsa.conf を /usr/share/also に追加し、/etc に非常に単純な asound.conf を書きました。

pcm.!default {
        type hw
        card 0
}

ctl.!default {
        type hw
        card 0
}

結果は、

/temp # aplay- l
**** List of PLAYBACK Hardware Devices ****
card 0: msmaudio [msm-audio], device 0: DSP 1 msm-codec-dai-0 []
  Subdevices: 2/2
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
card 0: msmaudio [msm-audio], device 1: MVS mvs-codec-dai-1 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

問題は構成ファイルだったので、aplayが動かなくなるという別の問題が発生しました

/temp # aplay -i ./gbb.mp3
...
...
access("//.asoundrc", R_OK)             = -1 ENOENT (No such file or directory)
open("/dev/snd/controlC0", O_RDWR|O_CLOEXEC) = 3
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
ioctl(3, SNDRV_CTL_IOCTL_PVERSION or USBDEVFS_CONTROL or USBDEVFS_CONTROL32, 0xbedb085c) = 0
ioctl(3, SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE, 0xbedb0880) = 0
open("/dev/snd/pcmC0D0p", O_RDWR|O_NONBLOCK|O_CLOEXEC
...
...

しかし、これはもはや構成に関するものではないと思います。

4

0 に答える 0