Ini ternyata menjadi masalah yang lebih rumit dari yang saya perkirakan.
QuickTime X tidak dapat memutar file MIDI, meskipun QuickTime 7 bisa.
Sejauh yang saya tahu itu berarti tidak ada solusi "built-in" untuk memutar file MIDI pada Mac OS X (misalnya, afplay
tidak berfungsi). Karena itu saya percaya bahwa solusi apa pun akan melibatkan pengunduhan dan pemasangan beberapa program lain.
Opsi # 1: Unduh dan instal QuickTime 7 yang masih berfungsi dengan baik di Mavericks, dan kemudian Anda dapat memutar file midi dengan:
open -a QuickTime\ Player\ 7 /path/to/your/file.mid
namun itu hanya akan memutar otomatis jika pengguna telah mengaktifkan preferensi itu, yang saya yakini tidak aktif secara default.
Opsi # 2: Gunakan FluidSynth
Untuk menginstalnya, Anda harus menggunakan Homebrew Fink, MacPorts, atau (rekomendasi saya). Setelah Homebrew diinstal, ketikkan ini di Terminal:
brew install fluidsynth
(Perintah MacPorts adalah sudo port install fluidsynth
dan Fink akan fink install fluidsynth
.)
Namun, pengunduhan fluidsynth
hanya membuat Anda separuh jalan di sana. Maka Anda memerlukan file "SoundFont", yang belum pernah saya dengar sebelumnya. Ada informasi tentang mereka di sini
Saya mengunduh satu dari S. Christian Collins bernama "GeneralUser" yang gratis. Versi saat ini (pada 2013-11-27) adalah FluidSynth versi 1.44 . {Jika tautan langsung itu rusak di masa depan, gunakan tautan sebelumnya yang akan membawa Anda ke halaman web reguler untuk GeneralUser.}
Setelah Anda mengunduh dan membuka ritsletingnya, Anda akan memiliki serangkaian file termasuk "GeneralUser GS FluidSynth v1.44.sf2" (tentu saja namanya dapat berubah di masa mendatang). Saya mengganti nama file itu dan memindahkannya ke /usr/local/share/fluidsynth/generaluser.v.1.44.sf2
.
Setelah file SoundFont fluidsynth
dipasang dan diinstal, Anda dapat memainkan midi dengan menggunakan perintah ini:
fluidsynth -i /usr/local/share/fluidsynth/generaluser.v.1.44.sf2 ~/Music/example.mid
nb Ada beberapa pesan kesalahan (yang tampaknya tidak berbahaya) yang ditampilkan saat Anda melakukannya. Jika Anda ingin menekan mereka gunakan:
(fluidsynth -i /usr/local/share/fluidsynth/generaluser.v.1.44.sf2 ~/Music/example.mid 2>&1) >/dev/null
sebagai gantinya.
Jelas saya tidak akan mengingat semua itu, jadi saya membuat zsh
fungsi yang disebutplaymidi
function playmidi {
SOUNDFONT='/usr/local/share/fluidsynth/generaluser.v.1.44.sf2'
if [ -e "$SOUNDFONT" ]
then
for i in "$@"
do
if [ -e "$i" ]
then
(fluidsynth -i "$SOUNDFONT" "$i" 2>&1) >/dev/null
else
echo "[playmidi]: cannot find file at $i"
return 1
fi
done
else
echo "[playmidi]: SOUNDFONT file not found at $SOUNDFONT"
return 1
fi
}
(Itu seharusnya berhasil bash
juga untuk saya.)
Sekarang yang harus saya lakukan adalah mengetik:
playmidi example.mid
dan example.mid
akan bermain.
Ini bekerja untuk saya:
sumber
file.midi: No such file or directory
Anda dapat menggunakan VLC dengan antarmuka CLI non-interaktif dengan
-I dummy
:Untuk mengaktifkan dukungan midi, buka Preferensi> Tampilkan Semua> Input / Codec> Audio codec> Fluid Synth dan atur soundfont ke file seperti soundfont FluidSynth dari http://www.schristiancollins.com/generaluser.php .
Sunting: dukungan midi telah dihapus dari versi VLC terbaru. Anda masih dapat menggunakan fluidsynth dari shell seperti yang dijelaskan oleh TJ Luoma:
sumber
Menurut posting ini di forum VLC sendiri Felix Paul Kuehne , admin situs, mengatakan
Jadi untuk sekarang downgrade ke vlc 2.0.9, atau tunggu vlc 2.1.2. Dengan cara ini, solusi Anda yang ada akan berfungsi seperti dulu.
sumber
Tidak persis jawabannya tetapi ada aplikasi kecil yang dapat mengirim data midi pada baris perintah Mac OS X. Itu juga dapat mengontrol fungsi dasar GarageBand: http://www.bibiko.de/music/MIDImyAPP/
sumber
Agar lebih nyaman, Anda bisa merangkum jawaban TJ Luoma di aplikasi AppleScript:
Anda kemudian dapat memilih Dapatkan Info pada file .mid acak, ubah "Buka dengan:" ke aplikasi AppleScript, dan tekan "Ubah Semua ..." untuk menjadikannya cara default membuka file .mid. Sekarang ketika Anda mengklik dua kali pada file MIDI, itu akan membuka jendela Terminal dan memutarnya secara otomatis.
sumber