20 lines
712 B
Bash
Executable file
20 lines
712 B
Bash
Executable file
#!/bin/sh
|
|
|
|
#data_offset=$((0x$(xxd -plain -s 0x10 -l 4 $1 | sed 's/\(..\)\(..\)\(..\)\(..\)/\4\3\2\1/')+28))
|
|
#channels=$((0x$(xxd -plain -s 0x16 -l 2 $1 | sed 's/\(..\)\(..\)/\2\1/')))
|
|
#samples=$((0x$(xxd -plain -s 0x18 -l 4 $1 | sed 's/\(..\)\(..\)\(..\)\(..\)/\4\3\2\1/')))
|
|
#bps=$((0x$(xxd -plain -s 0x22 -l 2 $1 | sed 's/\(..\)\(..\)/\2\1/')))
|
|
|
|
data=`xxd -plain -s 0x08 -l 28 $1`
|
|
offset=$((0x$(echo $data | sed 's/.\{16\}\(..\)\(..\)\(..\)\(..\).\{32\}/\4\3\2\1/')+28))
|
|
dd if=$1 skip=1 bs=$offset 2>/dev/null
|
|
shift
|
|
|
|
for f in $@; do
|
|
tmpdata=`xxd -plain -s 0x08 -l 28 $f`
|
|
if [ "$data" != "$tmpdata" ]; then
|
|
echo not matching wav properties for $f >&2
|
|
exit
|
|
fi
|
|
dd if=$f skip=1 bs=$offset 2>/dev/null
|
|
done
|