嵌入式爱好者

wav格式音频左右声道对比脚本

2023-8-24 08:49| 发布者: 十七十七| 查看: 106| 评论: 0

类目: 知识库  >  I.MX6系列产品     文档编号: 1091

1.wav格式音频的前44个字节是自己的一些数据的帧字节,在44个字节后是数据,如果是双声道的音频,左声道和右声道的字节是交替传输的,wav左右声道音频对比的脚本如下,此脚本只比对了10个字节,如果觉得不准确,也可以增添比对字节,只需要更改for循环即可。

#!/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

已解决

未解决

只是看看

最新评论

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-5-4 10:11

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部