外设测试 - 音频测试 - LINE IN - MIC IN - LINE OUT - PHONE OUT

概述

本项测试针对音频接口的 LINE IN、LINE OUT、MIC IN、PHONE OUT。内部 IN 到  OUT 的循环,采用先录音然后播放的方式实现。使用到 arecord、aplay、amixer 命令。

测试步骤

LINE IN 和 LINE OUT

使用音频线连接板卡的 LINE IN 和电脑(手机)的音频输出口,电脑(手机)播放音频。然后在板卡执行录音播放脚本。

./line_in_test.sh

使用耳机或音响音频线接入 LINE OUT,测试员细心听输出的音频,检查是否声音清晰,无杂音。

MIC IN 和 LINE OUT(PHONE OUT)

使用音频线连接板卡的 MIC IN 和电脑(手机)的音频输出口,电脑(手机)播放音频。然后在板卡执行录音播放脚本。

./mic_in_test.sh

使用耳机或音响音频线接入 LINE OUT(PHONE OUT),测试员细心听输出的音频,检查是否声音清晰,无杂音。

参考代码

 

line_in_test.sh:

#!/bin/bash
# Description:
#   Test LINE IN, PHONE OUT, record and play.
#   NOTE, this script do not suit for some device, due to sound card number.

CARD_NUM=`aplay -l | grep 320aic | awk -F 'card' '{print $2}' | awk -F ':' '{print $1}'`
DEVICE_NUM=`aplay -l | grep 320aic | awk -F 'device' '{print $2}' | awk -F ':' '{print $1}'`

aplay -l
arecord -l
sleep 1
amixer  -c $CARD_NUM sset 'Right PGA Mixer Mic3L' off > /dev/null
amixer  -c $CARD_NUM sset 'Right PGA Mixer Mic3R' off > /dev/null
amixer  -c $CARD_NUM sset 'Left PGA Mixer Mic3L' off > /dev/null
amixer  -c $CARD_NUM sset 'Left PGA Mixer Mic3R' off > /dev/null
amixer  -c $CARD_NUM sset 'Right PGA Mixer Line1R' on > /dev/null
amixer  -c $CARD_NUM sset 'Right PGA Mixer Line1L' on > /dev/null
amixer  -c $CARD_NUM sset 'Left PGA Mixer Line1R' on > /dev/null
amixer  -c $CARD_NUM sset 'Left PGA Mixer Line1L' on > /dev/null
amixer  -c $CARD_NUM sset 'Left Line1R Mux' single-ended > /dev/null 
amixer  -c $CARD_NUM sset 'Right Line1L Mux' single-ended > /dev/null
amixer  -c $CARD_NUM cset name='PCM Playback Volume' 100%,100% > /dev/null
amixer  -c $CARD_NUM cset name='PGA Capture Volume' 0%,0% > /dev/null

amixer  -c $CARD_NUM sset 'PGA' 30 > /dev/null
sleep 1

#arecord -Dhw:0,0 -f cd | aplay -Dhw:0,0 -f cd > /dev/null

if [[ $CARD_NUM -eq 0 ]] && [[ $DEVICE_NUM -eq 0 ]]; then
    arecord -Dhw:0,0 -f cd | aplay -Dhw:0,0 -f cd > /dev/null
elif [[ $CARD_NUM -eq 1 ]] && [[ $DEVICE_NUM -eq 0 ]]; then
    arecord -Dhw:1,0 -f cd | aplay -Dhw:1,0 -f cd > /dev/null
elif [[ $CARD_NUM -eq 1 ]] && [[ $DEVICE_NUM -eq 1 ]]; then
    arecord -Dhw:1,1 -f cd | aplay -Dhw:1,1 -f cd > /dev/null
elif [[ $CARD_NUM -eq 0 ]] && [[ $DEVICE_NUM -eq 1 ]]; then
    arecord -Dhw:0,1 -f cd | aplay -Dhw:0,1 -f cd > /dev/null
fi

 

mi_in_test.sh:

#!/bin/bash
# Description:
#   Test MIN IN, PHONE OUT, record and play.
#   NOTE, this script do not suit for some device, due to sound card number.

CARD_NUM=`aplay -l | grep 320aic | awk -F 'card' '{print $2}' | awk -F ':' '{print $1}'`
DEVICE_NUM=`aplay -l | grep 320aic | awk -F 'device' '{print $2}' | awk -F ':' '{print $1}'`

aplay -l
arecord -l
sleep 1
amixer -c $CARD_NUM sset 'Right PGA Mixer Mic3L' on > /dev/null
amixer -c $CARD_NUM sset 'Right PGA Mixer Mic3R' on > /dev/null
amixer -c $CARD_NUM sset 'Left PGA Mixer Mic3L' on > /dev/null
amixer -c $CARD_NUM sset 'Left PGA Mixer Mic3R' on > /dev/null
amixer -c $CARD_NUM sset 'Right PGA Mixer Line1R' off > /dev/null
amixer -c $CARD_NUM sset 'Right PGA Mixer Line1L' off > /dev/null
amixer -c $CARD_NUM sset 'Left PGA Mixer Line1R' off > /dev/null
amixer -c $CARD_NUM sset 'Left PGA Mixer Line1L' off > /dev/null
amixer -c $CARD_NUM cset name='PCM Playback Volume' 100%,100% > /dev/null
amixer -c $CARD_NUM cset name='PGA Capture Volume' 0%,0% > /dev/null

amixer  -c $CARD_NUM sset 'PGA' 30 > /dev/null
sleep 1

#arecord -Dhw:0,0 -f cd | aplay -Dhw:0,0 -f cd > /dev/null

if [[ $CARD_NUM -eq 0 ]] && [[ $DEVICE_NUM -eq 0 ]]; then
    arecord -Dhw:0,0 -f cd | aplay -Dhw:0,0 -f cd > /dev/null
elif [[ $CARD_NUM -eq 1 ]] && [[ $DEVICE_NUM -eq 0 ]]; then
    arecord -Dhw:1,0 -f cd | aplay -Dhw:1,0 -f cd > /dev/null
elif [[ $CARD_NUM -eq 1 ]] && [[ $DEVICE_NUM -eq 1 ]]; then
    arecord -Dhw:1,1 -f cd | aplay -Dhw:1,1 -f cd > /dev/null
elif [[ $CARD_NUM -eq 0 ]] && [[ $DEVICE_NUM -eq 1 ]]; then
    arecord -Dhw:0,1 -f cd | aplay -Dhw:0,1 -f cd > /dev/null
fi

2020年10月16日

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页