[음악] 맥이나 리눅스에서 명령어로 ape 파일을 flac 으로 변환 Computer Tip

요즘에야 음악을 듣더라도 스트리밍을 대부분 이용하기 때문에 별 관심이 없을 수도 있지만,
최근에 무손실 압축 음악인 flac 확장자에 대하여 많이 거론이 되기도 합니다.
MP3 는 손실 압축이기 때문에 음질 손실이 있다는 것이지요.

다른 말로 CD 700 메가 등에 들어있는 십여곡 등이 손실없이 flac 파일로 담길 수 있고,
이를 플레이하면 CD 음질과 동일하게 들을 수 있다는 것입니다.

물론 이를 플레이하는 코덱과 헤드폰 등도 이를 지원해야 되겠지요.
특히 블루투스 연결인 경우에는 연결 방식 등에 대해 잘 따져 봐야 합니다.
(SBC 연결, aptx 연결 등등)

암튼 그동안 모아 놓았던 음악들 중에서 .ape 와 .cue 확장자가 붙은 것들이 있었습니다.

잠깐 확인해 보니, .ape는 CD 내용을 압축 DUMP 해 놓은 것이고, .cue는 해당 트랙 정보가 들어 있는 것이군요.

그래서 이 .ape, .cue 파일로부터 flac 파일을 생성하는데 찾아 보았더니,
대부분 돈을 받거나 하는 방식이었습니다.

하지만 다음과 같은 터미널 명령어를 이용하면 간단히 해결 가능합니다.
우선은 다음과 같은 설치가 필요합니다.

우분투 리눅스인 경우,

sudo apt-get install flac bchunk ffmpeg

와 같이 설치하고,

맥에서는,

brew install flac bchunk ffmpeg

하고 설치합니다.

이제는 다음과 같이 몇가지 명령의 절차를 따릅니다.
(설명만 하고 아주 쉽게 사용할 수 있도록 bash 실행파일을 만들어 보았습니다)

ffmpeg -i INPUT.ape output.wav
위의 명령은 INPUT.ape 파일로 부터 하나의 큰 wave 파일을 추출합니다.

bchunk -w output.wav INPUT.cue BASE_FILENAME
위의 명령은 INPUT.cue 에 있는 트랙정보를 읽어 BASE_FILENAME 이름에 00, 01 등의 이름을 붙여 .wav 파일로 분리해 내는 작업입니다.

flac --best BASE_FILENAME*
마지막으로 위의 명령으로 분리된 .wav 파일을 개별 .flac 파일로 변환하는 것입니다.

이렇게 하나씩 주는 것은 번거로와서 다음과 같은 ape2flac 이라는 bash 쉘 스크립트를 만들어 보았습니다.


#!/bin/bash

# 1) install package
# brew install flac bchunk ffmpeg

until [ -z "$1" ]; do
    AFP=$1
    echo "Converting $AFP into flac files"
    EXT=$(python -c "print(\"$AFP\"[-4:])")
    if [ $EXT != ".ape" ];then
        echo "Cannot convert because extension of \"$AFP\" is not \".ape\""
        shift
        continue
    fi
    FNP=$(python -c "print(\"$AFP\"[:-4])")
    mkdir -p "$FNP"
    ffmpeg -i "$AFP" output.wav
    bchunk -w output.wav "$FNP.cue" "$FNP/$FNP"
    flac --best "$FNP/$FNP"*
    rm -f output.wav "$FNP"/*.wav
    shift
done

위의 쉘 스크립트에 실행 권한을 준 다음,
.ape, .cue 가 있는 곳에 가서

ape2flac *.ape

와 같이 실행하면 
동일한 이름의 파일이 생성되고 그 아래에 트랙별 flac 파일이 잘 생성되어 있을 것입니다.


어느 분께는 도움이 되셨기를..

핑백

덧글

댓글 입력 영역

구글애드텍스트