导航

    全志在线开发者论坛

    • 注册
    • 登录
    • 搜索
    • 版块
    • 话题
    • 在线文档
    • 社区主页

    V853开发板硬件指南——音频功能

    V Series
    v853开发板软硬件指南
    2
    5
    2272
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • bayche
      bayche LV 6 最后由 q1215200171 编辑

      音频功能

      V853 开发板板载了两路麦克风输入,一路音频输入,一个扬声器输出。(注意,左侧 UART0 旁的 3.5mm 耳机接口是 GPS 使用的 UART 接口,不是耳机接口)

      录音

      • 查看录音设备

      可以使用 arecord -l 命令查看开发板提供的录音设备。

      root@TinaLinux:/# arecord -l
      

      它会输出以下内容

      **** List of CAPTURE Hardware Devices ****
      card 0: audiocodec [audiocodec], device 0: soc@03000000:codec_plat-sunxi-snd-codec sunxi-snd-codec-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      card 1: snddaudio0 [snddaudio0], device 0: 2032000.daudio0_plat-snd-soc-dummy-dai snd-soc-dummy-dai-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      
      • 麦克风录音

      V853 开发板板载了两个麦克风,位于 LINE-IN接口附近。

      在录音之前,首先需要打开音频通路,配置内部 MIC1,MIC2 录制双通道音频。

      选择 MIC1 输入

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC1 Input Select' 0
      

      它会输出以下内容

      numid=23,iface=MIXER,name='MIC1 Input Select'
        ; type=ENUMERATED,access=rw------,values=1,items=2
        ; Item #0 'differ'
        ; Item #1 'single'
        : values=0
      

      选择 MIC2 输入

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC2 Input Select' 0
      

      它会输出以下内容

      numid=23,iface=MIXER,name='MIC2 Input Select'
        ; type=ENUMERATED,access=rw------,values=1,items=2
        ; Item #0 'differ'
        ; Item #1 'single'
        : values=0
      

      开启 MIC1

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC1 Switch' 1
      

      它会输出以下内容

      numid=17,iface=MIXER,name='MIC1 Switch'
        ; type=BOOLEAN,access=rw------,values=1
        : values=on
      

      开启 MIC2

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC2 Switch' 1
      

      它会输出以下内容

      numid=17,iface=MIXER,name='MIC2 Switch'
        ; type=BOOLEAN,access=rw------,values=1
        : values=on
      

      设置 MIC1 音量

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC1 gain volume' 30
      

      它会输出以下内容

      numid=12,iface=MIXER,name='MIC1 gain volume'
        ; type=INTEGER,access=rw---R--,values=1,min=0,max=31,step=0
        : values=19
        | dBscale-min=0.00dB,step=1.00dB,mute=0
      

      设置 MIC2 音量

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC2 gain volume' 30
      

      它会输出以下内容

      numid=12,iface=MIXER,name='MIC2 gain volume'
        ; type=INTEGER,access=rw---R--,values=1,min=0,max=31,step=0
        : values=19
        | dBscale-min=0.00dB,step=1.00dB,mute=0
      

      使用arecord -D hw:audiocodec -f S16_LE -t wav -c2 -r 16000 -d 3 t.wav 命令,使用板载的两个麦克风进行录音。

      root@TinaLinux:/# arecord -D hw:audiocodec -f S16_LE -t wav -c2 -r 16000 -d 3 t.wav
      

      它会输出以下内容

      Recording WAVE 't.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Stereo
      

      播放

      SPK.jpg

      • 查看播放设备

      使用 aplay -l 查看播放设备

      root@TinaLinux:/# aplay -l
      

      它会输出以下内容

      **** List of PLAYBACK Hardware Devices ****
      card 0: audiocodec [audiocodec], device 0: soc@03000000:codec_plat-sunxi-snd-codec sunxi-snd-codec-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      card 1: snddaudio0 [snddaudio0], device 0: 2032000.daudio0_plat-snd-soc-dummy-dai snd-soc-dummy-dai-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      
      • 扬声器播放音频

      在播放之前,首先需要打开音频通路,配置扬声器播放音频。

      开启 LINEOUT 输出功能

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='LINEOUT Output Select' 1
      

      它会输出以下内容

      numid=22,iface=MIXER,name='LINEOUT Output Select'
        ; type=ENUMERATED,access=rw------,values=1,items=2
        ; Item #0 'single'
        ; Item #1 'differ'
        : values=1
      

      开启 LINEOUT 通路

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='LINEOUT Switch' 1
      

      它会输出以下内容

      numid=20,iface=MIXER,name='LINEOUT Switch'
        ; type=BOOLEAN,access=rw------,values=1
        : values=on
      

      设置输出音量

      root@TinaLinux:/# amixer -D hw:audiocodec cset name='LINEOUT volume' 25
      

      它会输出以下内容

      numid=16,iface=MIXER,name='LINEOUT volume'
        ; type=INTEGER,access=rw---R--,values=1,min=0,max=31,step=0
        : values=25
        | dBrange-
          rangemin=0,,rangemax=1
            | dBscale-min=0.00dB,step=0.00dB,mute=1
          rangemin=2,,rangemax=31
            | dBscale-min=-43.50dB,step=1.50dB,mute=1
      

      使用 aplay 通过外接扬声器播放刚才录制的音频。

      aplay -D hw:audiocodec t.wav
      

      它会输出以下内容

      Playing WAVE 't.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Stereo
      

      修改音量

      使用 alsamixer 提供的图形化界面调整音量。

      root@TinaLinux:/# alasmixer
      

      Alasmixer.jpg

      1 条回复 最后回复 回复 引用 分享 0
      • Y
        yelong98 LV 7 最后由 编辑

        整点干脆的嘛!一起放出来sdk得了

        bayche 1 条回复 最后回复 回复 引用 分享 0
        • bayche
          bayche LV 6 @yelong98 最后由 q1215200171 编辑

          @yelong98 我先来:搁这挤牙膏呢😠

          Y 1 条回复 最后回复 回复 引用 分享 0
          • Y
            yelong98 LV 7 @bayche 最后由 编辑

            @bayche 挤牙膏也要挤多点啊,就这么针眼大一点,沾点水就化没了

            bayche 1 条回复 最后回复 回复 引用 分享 0
            • bayche
              bayche LV 6 @yelong98 最后由 编辑

              @yelong98 阿巴阿巴🙃

              1 条回复 最后回复 回复 引用 分享 0
              • 1 / 1
              • First post
                Last post

              Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

              行为准则 | 用户协议 | 隐私权政策