iTunes를 사용하지 않고 Mac OS X 또는 명령 줄에서 오디오 파일을 변환하는 방법이 있습니까?


96

이제 iTunes를 사용하여 음악을 변환 할 수 있다는 것을 알고 있습니다. 그러나 그것은 매우 고통입니다. 내가 요구하는 것은 : 파일 변환을 위해 OS X 또는 UNIX에 내장 된 것이 있습니까? 지금은 단순히 .mp4를 .mp3로 변환하고 싶습니다.


2
오픈 소스 패키지를 타사 응용 프로그램으로 생각하십니까? 또는 OS와 함께 제공되는 Apple 제품 만 사용하고 싶습니까? 당신은 당신의 질문에 그것을 명확하게 할 수 있습니까?
Sairam

사전로드 된 소프트웨어를 사용하고 싶습니다.
James Litewski

3
FFmpeg 솔루션에 대한 의견. MP3의 출력 품질 관리는 codec:a libmp3lameqscale:a [0-9]옵션을 통해 수행 할 수 있습니다 ( FFmpeg wiki 참조 ). 예를 들어, 140-185 kbit / s 범위에서 VBR을 얻으려면 다음을 사용하십시오. ffmpeg out.mp3 -i in.mp4 -codec : a libmp3lame -qscale : a 4 MP3 파일 크기를 줄이는 데 사용할 수도 있습니다.
trybik

답변:


16

iTunes 용 Doug의 AppleScripts

포함

변환 및 내보내기 2.0

Finder 또는 명령 줄에서 실행할 수있는 유용한 스크립트 모음입니다. 물론 그들은 모두 iTunes를 사용하여 데이터를 처리하지만 iTunes의 GUI와 마우스 명령을 사용하여 파일을 변환하는 것보다 편리 할 수 ​​있습니다.


이 스크립트를 어떻게 실행합니까? 사이트에 대한 지침이 없습니다.
CoolAJ86

스크립트를 제공하는 사람의 설치 및 구성 지침은 다음과 같습니다. dougscripts.com/itunes/itinfo/downloadfaq.php

7
모르는 사람들을 참고하십시오 : 이것은 명령 행 솔루션이 아닙니다. iTunes 도구 모음에 아이콘이 나타납니다. 노래 모음을 선택한 다음 드롭 다운 메뉴에서 스크립트를 선택해야합니다. AAC의 경우 기본값은 256Kbps입니다. 설명서 (내가 찾을 수있는)의 어느 곳에서도 언급되지 않았지만, 마지막 2 ~ 3 초 안에 스크린 캐스트에서 볼 수 있습니다.
CoolAJ86

161

ffmpegMacPorts를 통해 설치 했지만 Homebrew ( brew install ffmpeg) 또는 바이너리를 다운로드 할 수도 있습니다 .

오디오 품질에 대해 걱정하지 않고 그와 같은 것을 변환하려면 다음을 사용하십시오.

ffmpeg -i input.mp4 output.mp3

다음은 웹 사이트 에서 .wav파일을 변환하는 방법의 예입니다 ..mp3

ffmpeg -i input.wav -codec:a libmp3lame -qscale:a 2 output.mp3 

다음은 .wav50M보다 큰 모든 파일 을 찾아 mp3로 변환 한 다음 원래 wav를 삭제하는 방법의 예입니다 (일괄 처리 모드-find 명령을 변경하여 '일괄 처리'를 만듭니다).

find . -size +50M -iname *.wav -type f -exec ffmpeg -i {} -codec:a libmp3lame -qscale:a 2 {}.mp3 -y \; -exec /bin/rm {} \;

쉬운 답변 주셔서 감사합니다. 파일 목록을 변환하는 방법? 또한 직렬 또는 병렬 옵션이 있습니까?
Khaled Annajar

ffmpeg 또한 ogg를 mp3로 변환합니다.ffmpeg -i beep.ogg beep.mp3
rgkobashi

32

OS X에는 iTunes와 다른 MP3 인코더가 함께 제공되지 않습니다. mpeg4 오디오로 변환하려면 CLI 명령 afconvert (사용 가능한 옵션의 경우 afconvert -h)를 사용할 수 있습니다. 예를 들면 다음과 같습니다.

afconvert track.aiff -o track.m4a -q 127 -b 128000 -f m4af -d aac

"man afconvert"가 유용한 매뉴얼 페이지를 가리 키지 않으므로 "afconvert --help"를 실행하여이 도구에 대한 도움말을 찾을 수 있습니다.


1
+1이지만 누군가가 철저한 문서에 대한 포인터를 추가하기를 정말로 바랍니다. 나는 시행 착오와 추측을 통해 작동하도록 얻었지만, 아마도 내가 사용해야했던 많은 옵션이 매우 간략하게 문서화되어 있습니다.
tripleee 2012 년

3
매뉴얼 페이지 :-( ... 쓸모 옆에
Greenonline

1
이 튜토리얼 이 유익 하다는 것을 알았습니다 . 데이터 및 파일 형식에 대한 유효한 인수는 다음을 사용하여 확인할 수 있습니다.afconvert -hf
chb

5

afconvert쓰지 않습니다. mp3파일. 도움말에 형식으로 나열되어 있지만 :

MacBook-Pro:local user$ afconvert -hf
Audio file and data formats:
    '3gpp' = 3GP Audio (.3gp)
               data_formats: 'Qclp' 'aac ' 'aace' 'aacf' 'aach' 'aacl' 
                             'aacp' 'samr' 
    '3gp2' = 3GPP-2 Audio (.3g2)
               data_formats: 'Qclp' 'aac ' 'aace' 'aacf' 'aach' 'aacl' 
                             'aacp' 'samr' 
    'adts' = AAC ADTS (.aac, .adts)
               data_formats: 'aac ' 'aach' 'aacp' 
    'ac-3' = AC3 (.ac3)
               data_formats: 'ac-3' 
    'AIFC' = AIFC (.aifc, .aiff, .aif)
               data_formats: I8 BEI16 BEI24 BEI32 BEF32 BEF64 UI8 'ulaw' 
                             'alaw' 'MAC3' 'MAC6' 'ima4' 'QDMC' 'QDM2' 
                             'Qclp' 'agsm' 
    'AIFF' = AIFF (.aiff, .aif)
               data_formats: I8 BEI16 BEI24 BEI32 
    'amrf' = AMR (.amr)
               data_formats: 'samr' 
    'm4af' = Apple MPEG-4 Audio (.m4a, .m4r)
               data_formats: 'aac ' 'aace' 'aacf' 'aach' 'aacl' 'aacp' 
                             'alac' 'paac' 
    'm4bf' = Apple MPEG-4 AudioBooks (.m4b)
               data_formats: 'aac ' 'aace' 'aacf' 'aach' 'aacl' 'aacp' 
                             'paac' 
    'caff' = CAF (.caf)
               data_formats: '.mp1' '.mp2' '.mp3' 'QDM2' 'QDMC' 'Qclp' 
                             'Qclq' 'aac ' 'aace' 'aacf' 'aach' 'aacl' 
                             'aacp' 'alac' 'alaw' 'dvi8' 'ilbc' 'ima4' 
                             I8 BEI16 BEI24 BEI32 BEF32 BEF64 LEI16 LEI24 
                             LEI32 LEF32 LEF64 'ms\x00\x02' 'ms\x00\x11' 
                             'ms\x001' 'paac' 'samr' 'ulaw' 
    'MPG1' = MPEG Layer 1 (.mp1, .mpeg, .mpa)
               data_formats: '.mp1' 
    'MPG2' = MPEG Layer 2 (.mp2, .mpeg, .mpa)
               data_formats: '.mp2' 
    'MPG3' = MPEG Layer 3 (.mp3, .mpeg, .mpa)
               data_formats: '.mp3'

사용하려고하면 :

/usr/bin/afconvert -d '.mp3' -f MPG3 mysong.MP4 -o mysong.mp3

오류가 발생합니다.

Error: ExtAudioFileSetProperty ('cfmt') failed ('fmt?')

afconvert MPG3 에서 설명한 것처럼?

'코어 오디오는 MP3 파일을 읽을 수는 있지만 쓸 수는 없습니다 ...'

나는 zpletan답변을 사용하여 ffmpeg를 설치했습니다.

brew install ffmpeg

다음 스크립트는 변환하려는 .MP4 파일과 동일한 디렉토리에 있습니다. 또한 공백이있는 파일에서도 작동합니다.

#!/bin/sh -x
for f in *.MP4; do
        /usr/local/Cellar/ffmpeg/2.5.4/bin/ffmpeg -i "$f" "$f.mp3"
#        /usr/bin/afconvert -d '.mp3' -f MPG3 "$f" -o "$f.mp3"
        echo "$f converted"
done

<code>for i in *.m4a; do echo "${i%.*}.mp3" ; ffmpeg -i "$i" "${i%.*}.mp3"; done
Mahesh Neelakanta

3

명령 줄 도구 및 GUI 앱으로 사용할 수있는 Mac OS X 용 무손실 오디오 디코더 인 X Lossless Decoder 도 있습니다. GUI 버전은 MP3를 출력 형식으로 지원합니다.


1

libav이 목적을 달성하기 위해 소스에서 컴파일 했습니다. 이것은 최신 버전의 Ubuntu Linux에 기본적으로 설치된 동일한 패키지이므로 Ubuntu에 대한 자습서는 OS X에서와 거의 동일하게 작동합니다 libav.

다음은 명령 줄과 makefile (병렬 처리를 위해)을 사용하여 MP4 (AAC)를 MP3 (LAME 사용)로 변환하는 작업입니다.

for each in *.mp4; do mv "$each" "$(echo "$each" | sed "s/ /./g")"; done
cat << EOF > Makefile
MP4_FILES := $(wildcard *.mp4)
MP3_FILES := ${MP4_FILES:.mp4=.mp3}

all: $(MP3_FILES)

%.mp3: %.mp4
    avconv -i $< -c:a libmp3lame $@
EOF
make -j20

뒤의 숫자를 조정 -jmake약 1.5 배 프로세서 코어 수에 명령. 내 서버에는 24 개의 코어가 있었지만 -j24심각한 IO 병목 현상이 발생하여 다시 조절할 수 -j20있었고 성능의 균형이 잘 맞았습니다.


1

나는 그것을 10 년 동안 사용하지 않았지만 ecasound사운드 파일을 변환하는 것을 좋아 합니다.

당신이 경우 brew설정 :

brew install ecasound

ecasound -i input.mp4 -o output.mp3

나는 그것을 .mp4스스로 시도하지 않았지만 작동해야합니다 .

로 변환하려고 할 때이 질문에 부딪 쳤 wav습니다 flac.


1

자동화기를 사용하여 서비스를 정의하십시오 (아이디어에 대한 DIGITALHOBBIT의 음악 블로그 감사). 여기에 이미지 설명을 입력하십시오

쉘 스크립트는 다음과 같습니다.

    # -----------------------------
    # DESCRIPTION
    #   Export iTunes Music to another destination to get only MP3 files
    #       - Copy MP3 to Destination
    #       - Convert M4A in MP3 in Destination
    #
    # -----------------------------
    # DATE      : 06-Apr-2017
    # AUTHOR    : JF LE MADEC
    # VERSION   : 1.0
    # -----------------------------

    # Local iTunes Directory
    ITUNDIR="$HOME/Music/iTunes/iTunes Media/Music"

    # binary to convert audio files
    AFCONVERT="afconvert"
    # conversion paramaters
    AFCPARAM="-f mp4f -d aac -b 128000"

    # Audio files suffixes
    # Source
    M4ASUF=".m4a"
    # Destination
    MP3SUF=".mp3"

    # for all directories given in arguments copy music
    for destination in "$@"
    do

        # Copy MP3 files
        find "$ITUNDIR" -name "*$MP3SUF" | while read myMp3File; do
            mp3dir=`dirname "$myMp3File"`
            targetDir="$destination${mp3dir#$ITUNDIR}"
            fileName=`basename "$mp3File"`
            [[ -d "$targetDir" ]] || mkdir -p "$targetDir"
            cp -R "$myMp3File" "$targetDir"
        done

        # Convert and copy M4A files (iTunes native)
        find "$ITUNDIR" -name "*$M4ASUF" | while read m4aFile; do
            #afconvert -f mp4f -d aac -b 128000 "./Vianney/Vianney/11 Le Galopin.m4a"  /Users/jflm/Desktop/output2.mp3
            # Get file info
            m4aDir=`dirname "$m4aFile"`
            targetDir="$destination${m4aDir#$ITUNDIR}"
            fileName=`basename -s $M4ASUF "$m4aFile"`
            # Create parent directories if not exist
            [[ -d "$targetDir" ]] || mkdir -p "$targetDir"

            # Convert audio file directly in destination directory
            $AFCONVERT $AFCPARAM "$m4aFile" "$targetDir/$fileName$MP3SUF"

        done
    done

이것을 찾으 셨나요? aacmp3AFCPARAM="-f mp4f -d aac -b 128000"?
John N

-1

리눅스에서 python-audio-tools가 내가 원하는 것을 정확하게 수행한다는 것을 알았습니다. 불행히도 OSX에서 mp3로 인코딩 할 수 없었습니다 . 그래도 당신을 위해 일할 수 있습니다. OSX에 내장되어 있지는 않지만 매우 가볍고 거의 모든 형식의 쌍 사이에서 변환하거나 동일한 형식의 압축 파일로 변환 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.