Ora so che posso usare iTunes per convertire la musica. Ma è piuttosto un problema .. Tutto quello che sto chiedendo è: C'è qualcosa di costruito in OS X o UNIX per convertire i file? In questo momento voglio semplicemente convertire .mp4 in .mp3 ..
Ora so che posso usare iTunes per convertire la musica. Ma è piuttosto un problema .. Tutto quello che sto chiedendo è: C'è qualcosa di costruito in OS X o UNIX per convertire i file? In questo momento voglio semplicemente convertire .mp4 in .mp3 ..
compreso
è una raccolta di script utili che è possibile eseguire dal Finder o dalla riga di comando. Naturalmente usano tutti iTunes per elaborare i dati, ma potresti trovarti più comodo rispetto a dover utilizzare i comandi della GUI e del mouse di iTunes per convertire i file.
Ho installato ffmpeg
tramite MacPorts, sebbene sia disponibile anche tramite Homebrew ( brew install ffmpeg
) o scarica il file binario .
Per convertire qualcosa del genere (senza preoccuparmi della qualità dell'audio, di cui non so nulla), uso semplicemente:
ffmpeg -i input.mp4 output.mp3
Ecco un esempio di come convertire un file .wav
in .mp3
dal loro sito web :
ffmpeg -i input.wav -codec:a libmp3lame -qscale:a 2 output.mp3
Ecco un esempio di come trovare tutti i .wav
file più grandi di 50M, convertirli in mp3 e quindi eliminare il wav originale (noto anche come modalità batch - modificare il comando find per creare il tuo 'batch')
find . -size +50M -iname *.wav -type f -exec ffmpeg -i {} -codec:a libmp3lame -qscale:a 2 {}.mp3 -y \; -exec /bin/rm {} \;
OS X non viene fornito con alcun codificatore MP3 a parte quello in iTunes. Per la conversione in audio mpeg4 è possibile utilizzare il comando CLI afconvert (afconvert -h per le opzioni disponibili). Ad esempio:
afconvert track.aiff -o track.m4a -q 127 -b 128000 -f m4af -d aac
La guida per questo strumento può essere trovata eseguendo "afconvert --help" come "man afconvert" non punta a una pagina di manuale utile.
afconvert
non scrive. mp3
file. Anche se è elencato nella guida come formato:
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'
Se tenti di usarlo:
/usr/bin/afconvert -d '.mp3' -f MPG3 mysong.MP4 -o mysong.mp3
quindi si verifica un errore:
Error: ExtAudioFileSetProperty ('cfmt') failed ('fmt?')
Come spiegato su afconvert MPG3?
'Core Audio can read, but not write, MP3 files...'
Ho finito per utilizzare zpletan 's risposta e installato ffmpeg
brew install ffmpeg
e il seguente script, collocato nella stessa directory dei file .MP4 che voglio convertire. Funziona anche per i file con spazi:
#!/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
C'è anche il X Lossless Decoder - un decodificatore audio senza perdita per Mac OS X disponibile come comando strumento di linea e un'app GUI. La versione GUI supporta MP3 come formato di output.
Ho compilato libav
dall'origine per servire a questo scopo. Questo è lo stesso pacchetto installato di default sulle versioni recenti di Ubuntu Linux, quindi le esercitazioni per Ubuntu funzionano quasi come in OS X con libav
.
Ecco qualcosa che faccio per convertire MP4 (AAC) in MP3 (usando LAME) usando la riga di comando e un makefile (per motivi di parallelismo):
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
Regola il numero dopo -j
del comando make
a circa 1.5x il numero di core del processore. Il mio server aveva 24 core, ma -j24
mi ha dato un grave collo di bottiglia di IO, ho rallentato di nuovo a -j20
e le prestazioni sono piuttosto bilanciate.
Non l'ho usato da un decennio, ma amo ecasound
per la conversione di file audio.
Se hai impostato brew
:
brew install ecasound
ecasound -i input.mp4 -o output.mp3
Non l'ho provato con .mp4
s ma dovrebbe funzionare .
Mi sono imbattuto in questa domanda quando ho cercato di convertire wav
in flac
.
Con il programma di automazione, definisci un servizio (Grazie BLOG MUSICALE DI DIGITALHOBBIT per l'idea):
Eloscriptdellashellèilseguente:
#-----------------------------#DESCRIPTION#ExportiTunesMusictoanotherdestinationtogetonlyMP3files#-CopyMP3toDestination#-ConvertM4AinMP3inDestination##-----------------------------#DATE:06-Apr-2017#AUTHOR:JFLEMADEC#VERSION:1.0#-----------------------------#LocaliTunesDirectoryITUNDIR="$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
Sotto Linux, trovo che python-audio-tools fa esattamente quello che voglio. Sfortunatamente, I non sono riuscito a farlo codificare su mp3 in OSX . Potrebbe funzionare per te, però. Non è affatto integrato in OSX, ma è molto leggero e può essere convertito praticamente da qualsiasi coppia di formati (o semplicemente convertirlo in un file più compresso con lo stesso formato).