我遇到了一个错误,当尝试将图片保存到文件时,easytag
version 2.4.2
它会损坏文件。flac
这似乎取决于图片的大小,较小的可能会起作用(例如低于 30kB)。
因为我无法安装最新版本 2.4.3。而且我也不知道这是否能解决问题我需要一种方法来解决这个问题。
答案1
一种解决方案可能是使用metaflac
添加图片。
这种方式easytag
仍然可以用于标签,并且不需要额外的软件。
假设您位于文件所在的目录中flac
,则可以执行以下脚本。它将原始文件的备份保存在目录之外,删除旧的元数据jpg
并向所有文件添加一个。
#!/bin/bash
FILEPATH="/home/$USER/Desktop/coverart.jpg"
echo "**********************************************"
echo "** do 'metaflac --import-picture-from=$FILEPATH FILE'"
CURRENT_CD="${PWD##*/}"
if [ ! -d "../BACKUP" ]; then
echo "** mkdir ../BACKUP"
mkdir ../BACKUP
else echo "** ../BACKUP already exists (directory)"
fi
if [ ! -d "../BACKUP/$CURRENT_CD" ]; then
echo "** mkdir ../BACKUP/$CURRENT_CD"
mkdir "../BACKUP/$CURRENT_CD"
else
echo "** ../BACKUP/$CURRENT_CD already exists (directory)"
fi
echo ""
for f in *.flac;
do
if [ -f "$f" ]; then
echo "$f"
if [ ! -f "../BACKUP/$CURRENT_CD/$f" ]; then
echo "-> cp $f to ../BACKUP/CURRENT_CD"
cp "$f" "../BACKUP/$CURRENT_CD/$f"
else
echo "-> backup file already exists"
fi
echo "-> remove old pictures and tag COVERART"
metaflac --remove --block-type=PICTURE,PADDING --dont-use-padding "$f"
metaflac --remove-tag=COVERART --dont-use-padding "$f"
echo "-> add picture $FILEPATH"
metaflac --import-picture-from="$FILEPATH" "$f"
fi
done
echo "***********************************************"