
인터넷의 여러 페이지에는 MP3 가입 및 태그 복사 방법에 대한 설명이 있지만 ffmpeg
제대로 작동하지 않는 것 같습니다. 이상적으로는 모든 MP3를 하나로 묶은 다음 앨범, 트랙, 작성자 등과 같은 첫 번째 MP3의 메타데이터를 가져와 최종 파일에 복사하는 것입니다.
다음 스크립트를 구성했습니다. 파일을 결합하는 동안 메타데이터는 복사되지 않습니다. 나는 -map_metadata 0 -id3v2_version 3 -write_id3v1 1
매개변수가 ffmpeg
그것을 할 것이라고 생각했지만 그렇지 않습니다. 내가 무엇을 놓치고 있나요?
#!/usr/bin/env bash
set -e
if [[ $# -eq 0 ]] ; then
echo "Usage: $0 <output_file> <mp3_file> <mp3_file> ..."
exit 1
fi
output_file="$1"
shift
queue_file=$(mktemp "${PWD}/queue.XXXXXX")
for m in "$@" ; do
echo "file '$m'" >> "${queue_file}"
done
cat "${queue_file}"
ffmpeg -f concat -safe 0 -i "${queue_file}" -c copy -map_metadata 0 -id3v2_version 3 -write_id3v1 1 "${output_file}"
rm "${queue_file}"