#!/bin/bash
f=0
# 提取左声道和右声道的音频数据
arecord -r 44100 -f S16_LE -c 2 -d 10 output.wav
for ((k=0; k<11; k=k+2)); do
n=$((44+k))
left_data=$(od -An -j $n -N 2 -t u2 output.wav | tr -d '[:space:]')
right_data=$(od -An -j $((n+2)) -N 2 -t u2 output.wav | tr -d '[:space:]')
# 比较左右声道的音频数据
if [ "$left_data" != "$right_data" ]; then
f=1
if [ "$k" -eq 10 -a "$f" -eq 1 ];then
echo "左右声道不一致"
reboot
fi
fi
done
if [ "$left_data" == "$right_data" ] && [ "$f" -eq 0 ]; then
echo "左右声道一致"
fi