Quelles sont les options pour jouer de la musique depuis Emacs?

27

J'ai un tas de .mp3fichiers music ( ) sur mon disque et je voudrais les lire depuis Emacs. J'ai essayé EMMS , mais il semble plutôt gonflé. Je suis curieux de connaître d'autres possibilités, avec comparaison des fonctionnalités. Je m'intéresse en particulier à ceux-ci:

  • Simple - Si le lecteur donné est assez simple pour commencer à l'utiliser en quelques minutes, y compris l'installation et l'apprentissage des bases.

  • diredintégration - Pour que je puisse par exemple marquer certains fichiers musicaux diredet les faire jouer / ajouter à la playlist.

  • Capacités d'édition - J'aimerais pouvoir modifier les balises id3.

mbork
la source
4
De nombreuses options sont répertoriées sur EmacsWiki: Lecteurs de musique .
Dan
3
Et voici quelques options qui fonctionnent: wikemacs.org/index.php/Media_player
Ehvince
1
@Malabarba Pourquoi le tag bongo? Cette question est-elle susceptible d'être pertinente pour quelqu'un qui cherche de l'aide avec le bongo? Il me semble que les balises devraient décrire la question, pas ses réponses ... emacs.stackexchange.com/help/tagging
T. Verron
1
@ T.Verron pour la même raison qu'il est marqué comme emms. Il est peu probable que cela soit utile pour quelqu'un qui cherche de l'aide avec ces packages, mais les balises servent également à attirer l'attention d'experts sur le sujet, et cette question peut en effet bénéficier d'un expert dans l'un de ces domaines.
Malabarba
1
@Malabarba Au moins emms a été mentionné dans la question. :)Je comprends qu'aujourd'hui il n'y a que 2 paquets pour lire de la musique, donc leurs noms + le but général tiennent dans les 5 balises autorisées. Si deux autres packages apparaissent et sont mentionnés ici, ajouterez-vous également une balise pour eux? Les experts peuvent trouver la réponse à partir de balises qu'ils savent être liées à leur spécialité: je m'attends à ce qu'un expert en bongo suive également emms et lecteur de musique, car il peut y avoir des questions étiquetées avec celles dans lesquelles ils peuvent encore avoir des connaissances utiles pour mettre sur la table.
T. Verron

Réponses:

24

Le système multimédia Emacs (EMMS)

Votre diatribe initiale suggère que vous n'avez pas vraiment essayé l'EMMS ... Peut-être que vous devriez?

  • Avec la sortie récente de la version 4, Yoni Rabkin , le mainteneur, a mis beaucoup d'efforts dans le manuel . C'est très bien de nos jours.
  • C'est simple car il utilise principalement les liaisons Emacs par défaut. Vous souhaitez supprimer une chanson de la liste de lecture? C-a C-k(en version git seulement C-k).
  • Il est flexible car vous pouvez afficher et lire votre musique comme vous le souhaitez. Voulez-vous utiliser mplayer? Ou vlc? Remarque, EMMS est assez bon pour choisir des options de lecture sensées, voyez emms-default-players.
  • Il est très modulaire, vous pouvez donc le faire aussi "gonflé" que vous le souhaitez. AFAIK, YR n'utilise pas le navigateur ID3, mais je veux autant de "ballonnement" que possible.
  • Si vous aimez les diredraccourcis clavier, il y en a emms-mark-mode.
  • À partir de EMMS, vous pouvez passer à la piste sous pointdans diredavec d.
  • Vous pouvez lire des fichiers marqués diredavec emms-play-dired.
  • Édition de balises (rudimentaires) : appuyez simplement Esur une piste.
  • Le navigateur ID3 est assez prêt à l'emploi (vous devrez peut-être produire des couvertures dans les bonnes tailles, voir emms-browser-coverset ci-dessous).

Capture d'écran d'EMMS

Configuration rapide du navigateur EMMS

Ajoutez quelque chose comme ça à votre init.el(après avoir installé EMMS):

 ;;** 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.
   )

Cliquez F7pour voir les instructions d'initialisation. Pour ajouter de la musique, faites M-x emms-add-directory-tree. Cela ajoutera toute la musique à *EMMS Playlist*(disponible via F7 F7) et éventuellement à votre bibliothèque. N'hésitez pas à vous désinscrire de la bibliothèque et à utiliser la liste de lecture uniquement. Ajustez simplement les F7appels.

Jolie pochette

Obtenir une jolie pochette dans EMMS est assez simple. Tout d'abord, lisez le manuel (cliquez sur le lien "jolie" ci-dessus). L'essentiel est que pour chacun, ~/music/artist/albumvous avez besoin de l'ensemble: cover_small.jpgde 100px × 100px, comme utilisé à gauche ci-dessus, et cover_med.jpgde 200px × 200px, comme utilisé à droite ci-dessus (ajustez les tailles à votre guise). Le no-cover ( Selmasongs ci-dessus) est défini via emms-browser-default-covers. beetpeut aller chercher des couvertures pour vous. Utilisez ensuite findet convert(de imagemagick) pour redimensionner et renommer les couvertures. C'est un peu "manuel" pour le moment. . . J'utilise le script suivant, qui est probablement copié ou inspiré par les interwebs. Je ne suis pas compétent avec shellalors faites-moi savoir si vous connaissez une meilleure façon.

#!/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 {} +
rasmus
la source
Hm. Je vais essayer encore une fois ...
mbork
1
Pouvez-vous partager plus de votre configuration? J'aime avoir des images de couverture d'album.
emacsomancer
Le "joli" lien pour afficher les couvertures a changé et est maintenant gnu.org/software/emms/manual/#Displaying-Covers
Alejandro Erickson
9

Vous recherchez peut-être Bongohttp://wikemacs.org/index.php/Media_player#Bongo

  • c'est simple (et beaucoup plus simple que Emms !!) car quand vous le démarrez, vous avez toutes les commandes listées dans le buffer. Vous pouvez l'obtenir auprès de MELPA .
  • Il a obtenu l' intégration Dired . Je ne l'ai jamais utilisé mais nous pouvons le lire ici ou demander à un autre utilisateur
  • vous n'êtes pas sûr de id3tags, mais vous pouvez modifier les balises personnalisées (sur le lien ci-dessus).

Mon préféré est cependant mpg123. Commandes très simples et nombreuses disponibles. Je ne l'ai pas intégré à Dired mais j'ajoute rapidement des fichiers ou dossiers à la playlist grâce à Ido.

Ehvince
la source
5

Signet + . Recherchez « musique » (et « liste de navigation ») sur cette page.

  • Vous pouvez mettre en signet des fichiers audio individuels. «Sauter» vers un tel signet le joue.

  • Vous pouvez afficher uniquement vos signets de fichiers audio à l' *Bookmark List*écran et naviguer parmi eux, sous forme de liste de lecture. Utilisez C-x p Bpuis C-x p nextpour parcourir la liste de lecture.

  • Utilisez P Bdans *Bookmark List*, pour n'afficher que les signets de votre fichier audio, puis utilisez C-x r m-le pour marquer cet état de la liste des signets. "Passer" à ce signet-liste de liste vous présente ce même affichage (liste de lecture).

  • Utilisez des balises de signet pour marquer des signets sonores comme vous le souhaitez, pour les organiser en ensembles arbitraires, qui peuvent se chevaucher.

  • Vous pouvez également avoir un fichier de signets distinct pour un ensemble donné de signets. C'est une autre façon de les organiser.

Toutefois, notez que actuellement Emacs lui - même prend en charge uniquement *.auet *.wavfichiers sonores - voir le manuel Elisp, noeud Sound Output. Bookmark + reconnaît donc uniquement ces fichiers automatiquement en tant que fichiers audio et leur donne une file-handlerpropriété de play-sound-file.

Si vous utilisez MS Windows, cependant, vous pouvez profiter des associations de fichiers pour les signets de n'importe quel fichier. Ainsi, si, par exemple, vous avez associé un programme Windows Foobarà, disons, des fichiers ayant une extension .mp3, vous pouvez utiliser Bookmark + pour les lire. Ce n'est pas différent de profiter de toute autre association de fichiers Windows .

A dessiné
la source