Das Emacs Multimedia System (EMMS)
Ihre anfängliche Beschimpfung deutet darauf hin, dass Sie EMMS nicht wirklich ausprobiert haben ... Vielleicht sollten Sie?
- Mit der jüngsten Veröffentlichung von Version 4 hat der Maintainer Yoni Rabkin viel Mühe in das Handbuch gesteckt . Es ist heutzutage sehr gut .
- Es ist einfach, da hauptsächlich Standard-Emacs-Bindungen verwendet werden. Möchten Sie ein Lied aus der Wiedergabeliste entfernen?
C-a
C-k
(in git version nur C-k
).
- Es ist flexibel, da Sie Ihre Musik so anzeigen und wiedergeben können, wie Sie es möchten. Möchten Sie verwenden
mplayer
? Oder vlc
? Beachten Sie, dass EMMS sehr gut in der Lage ist, sinnvolle Wiedergabemöglichkeiten sofort zu finden emms-default-players
.
- Es ist sehr modular aufgebaut, so dass Sie es "aufgebläht" bekommen können, wie Sie möchten. AFAIK, YR benutzt den ID3-Browser nicht, aber ich möchte so viel "aufblähen" wie möglich.
- Wenn Sie
dired
Tastenkombinationen mögen, gibt es emms-mark-mode
.
- Innerhalb EMMS können Sie auf der Spur springen unter
point
in dired
mit d
.
- Sie können markierte Dateien
dired
mit abspielen emms-play-dired
.
- (Rudimentäre) Tag-Bearbeitung : Einfach
E
auf einen Track klicken.
- Der ID3-Browser ist ziemlich out-of-the-box (möglicherweise müssen Sie Cover in den richtigen Größen erstellen, siehe
emms-browser-covers
und unten).
Schnelle Einrichtung des EMMS-Browsers
Fügen Sie Ihrer init.el
(nach der Installation von EMMS) Folgendes hinzu:
;;** EMMS
;; Autoload the id3-browser and bind it to F7.
;; You can change this to your favorite EMMS interface.
(autoload 'emms-smart-browse "emms-browser.el" "Browse with EMMS" t)
(global-set-key [(f7)] 'emms-smart-browse)
(with-eval-after-load 'emms
(emms-standard) ;; or (emms-devel) if you want all features
(setq emms-source-file-default-directory "~/music"
emms-info-asynchronously t
emms-show-format "♪ %s")
;; Might want to check `emms-info-functions',
;; `emms-info-libtag-program-name',
;; `emms-source-file-directory-tree-function'
;; as well.
;; Determine which player to use.
;; If you don't have strong preferences or don't have
;; exotic files from the past (wma) `emms-default-players`
;; is probably all you need.
(if (executable-find "mplayer")
(setq emms-player-list '(emms-player-mplayer))
(emms-default-players))
;; For libre.fm see `emms-librefm-scrobbler-username' and
;; `emms-librefm-scrobbler-password'.
;; Future versions will use .authoinfo.gpg.
)
Klicken Sie hier F7
, um Anweisungen zur Initialisierung anzuzeigen. Musik hinzufügen tun M-x
emms-add-directory-tree
. Dadurch wird die gesamte Musik zu *EMMS Playlist*
(verfügbar über F7
F7
) und schließlich zu Ihrer Bibliothek hinzugefügt . Sie können die Bibliothek jederzeit deaktivieren und nur die Wiedergabeliste verwenden. Justieren Sie einfach, was F7
Anrufe.
Hübsches Cover
Hübsche Coverbilder in EMMS zu bekommen, ist recht einfach. Lesen Sie zuerst das Handbuch (klicken Sie oben auf den "hübschen" Link). Das Wesentliche ist, dass Sie für jeden ~/music/artist/album
das Set benötigen: cover_small.jpg
von 100px × 100px, wie oben links verwendet, und cover_med.jpg
von 200px × 200px, wie oben rechts verwendet (passen Sie die Größen nach Ihren Wünschen an). Das No-Cover ( Selmasongs oben) wird über eingestellt emms-browser-default-covers
. beet
kann für Sie Abdeckungen holen . Verwenden Sie dann find
und convert
(von imagemagick
), um die Größe der Cover zu ändern und sie umzubenennen. Es ist im Moment ein bisschen "manuell". . . Ich verwende das folgende Skript, das wahrscheinlich von den Interwebs kopiert oder inspiriert wurde. Ich shell
verstehe mich nicht so gut, lass es mich wissen, wenn du einen besseren Weg kennst.
#!/bin/sh
MUSICDIR="/home/rasmus/music/"
# fetch new art
beet fetchart
# resize covers
find "$MUSICDIR" -iname "cover.jpg" |
find . -type f -iname 'cover.jpg' -exec bash -c '
for file do
EXTENSION="${file##*.}"
FILENAME="${file%.*}"
NEW_MED_NAME="${FILENAME}_med.${EXTENSION}"
NEW_SMALL_NAME="${FILENAME}_small.${EXTENSION}"
if [ ! -f "${NEW_MED_NAME}" ]; then
convert "${file}" -adaptive-resize 200x200 "${NEW_MED_NAME}"
fi
if [ ! -f "${NEW_SMALL_NAME}" ]; then
convert "${file}" -adaptive-resize 100x100 "${NEW_SMALL_NAME}"
fi
done
' bash {} +