diff options
-rw-r--r-- | doc/developer-release.txt | 2 | ||||
-rw-r--r-- | doc/emms.texinfo | 52 | ||||
-rw-r--r-- | emms.info | 168 |
3 files changed, 138 insertions, 84 deletions
diff --git a/doc/developer-release.txt b/doc/developer-release.txt index be70e22..54930f4 100644 --- a/doc/developer-release.txt +++ b/doc/developer-release.txt @@ -16,6 +16,8 @@ Savannah, as a tarball from GNU, and via GNU ELPA. * Run make upload +* Update copy of emms.info in root directory + * Update online manual * Update website diff --git a/doc/emms.texinfo b/doc/emms.texinfo index 8c83d7c..4e8553f 100644 --- a/doc/emms.texinfo +++ b/doc/emms.texinfo @@ -113,6 +113,7 @@ The Core File Track Information * Using tinytag:: Track information via tinytag. +* Using exiftool:: Track information via exiftool. * Using TagLib:: TagLib for track information. * Defining Info Methods:: Defining new info methods. @@ -883,24 +884,37 @@ pieces of software and libraries which can be used to provide access to track metadata such as the artist's name, track name, album title, etc. -Emms can use tinytag; a small python utility. See @xref{Using -tinytag}. +Emms can use a number of different ways to populate the playlist with +track information. These methods require the installation some +additional software, free software of course, that Emms can then call +to read the metadata from the files. + +@itemize @bullet + +@item +Tinytag, a small python utility. See @xref{Using tinytag}. -Emms can use the TagLib library installed on a system. See @xref{Using -TagLib}. +@item +Exiftool, written in perl. See @xref{Using exiftool}. + +@item +The TagLib library can be used by compiling a small piece of ``shim'' +software. See @xref{Using TagLib}. + +@end itemize -Emms also has multiple predefined methods for retrieving info for -specific file types, provided by modules such as -@file{emms-info-mp3info.el}, @file{emms-info-ogginfo.el}, -@file{emms-info-opusinfo.el}, @file{emms-cue.el} and -@file{emms-info-libtag.el}. The first three packages are front-ends -for command-line tools. Ogg track information is retrieved using the + +You can also use a combination of format-specific tools if needed, +such as @file{emms-info-mp3info.el}, @file{emms-info-ogginfo.el}, +@file{emms-info-opusinfo.el}, and @file{emms-cue.el}. These three +packages are front-ends for command-line tools. Ogg track information +is retrieved using the @uref{http://directory.fsf.org/audio/ogg/vorbistools.html, ogginfo} and the @uref{https://www.opus-codec.org/ opusinfo} software. Likewise, mp3 track information is available using @uref{http://www.ibiblio.org/mp3info/, mp3info}. @file{emms-cue.el} retrieves tracks information for ape/flac files by parsing a cue sheet -file, which is plain text. +file, which is plain text. Automatic track information retrieval is enabled by default in the `emms-all' setup level provided by @file{emms-setup.el}. For more @@ -931,6 +945,7 @@ track as argument. @menu * Using tinytag:: Track information via tinytag. +* Using exiftool:: Track information via exiftool. * Using TagLib:: TagLib for track information. * Defining Info Methods:: Defining new info methods. @end menu @@ -953,6 +968,21 @@ methods can cause confusion) for Emms: @end lisp +@node Using exiftool +@section Using exiftool + +@cindex Using exiftool + +Make sure that the perl program exiftool is installed on your +system. It is available at @uref{https://exiftool.org/}. + +Then set exiftool as the sole info method with: + +@lisp +(setq emms-info-functions '(emms-info-exiftool)) +@end lisp + + @node Using TagLib @section Using TagLib @@ -97,6 +97,7 @@ The Core File Track Information * Using tinytag:: Track information via tinytag. +* Using exiftool:: Track information via exiftool. * Using TagLib:: TagLib for track information. * Defining Info Methods:: Defining new info methods. @@ -739,20 +740,25 @@ is distributed with support for a number of pieces of software and libraries which can be used to provide access to track metadata such as the artist's name, track name, album title, etc. - Emms can use tinytag; a small python utility. See *Note Using -tinytag::. + Emms can use a number of different ways to populate the playlist with +track information. These methods require the installation some +additional software, free software of course, that Emms can then call to +read the metadata from the files. - Emms can use the TagLib library installed on a system. See *Note -Using TagLib::. + * Tinytag, a small python utility. See *Note Using tinytag::. - Emms also has multiple predefined methods for retrieving info for -specific file types, provided by modules such as 'emms-info-mp3info.el', -'emms-info-ogginfo.el', 'emms-info-opusinfo.el', 'emms-cue.el' and -'emms-info-libtag.el'. The first three packages are front-ends for -command-line tools. Ogg track information is retrieved using the -ogginfo (http://directory.fsf.org/audio/ogg/vorbistools.html) and the -<https://www.opus-codec.org/ opusinfo> software. Likewise, mp3 track -information is available using mp3info + * Exiftool, written in perl. See *Note Using exiftool::. + + * The TagLib library can be used by compiling a small piece of "shim" + software. See *Note Using TagLib::. + + You can also use a combination of format-specific tools if needed, +such as 'emms-info-mp3info.el', 'emms-info-ogginfo.el', +'emms-info-opusinfo.el', and 'emms-cue.el'. These three packages are +front-ends for command-line tools. Ogg track information is retrieved +using the ogginfo (http://directory.fsf.org/audio/ogg/vorbistools.html) +and the <https://www.opus-codec.org/ opusinfo> software. Likewise, mp3 +track information is available using mp3info (http://www.ibiblio.org/mp3info/). 'emms-cue.el' retrieves tracks information for ape/flac files by parsing a cue sheet file, which is plain text. @@ -784,11 +790,12 @@ Methods::. * Menu: * Using tinytag:: Track information via tinytag. +* Using exiftool:: Track information via exiftool. * Using TagLib:: TagLib for track information. * Defining Info Methods:: Defining new info methods. -File: emms.info, Node: Using tinytag, Next: Using TagLib, Up: Track Information +File: emms.info, Node: Using tinytag, Next: Using exiftool, Up: Track Information 13.1 Using tinytag ================== @@ -802,9 +809,22 @@ methods can cause confusion) for Emms: (setq emms-info-functions '(emms-info-tinytag)) -File: emms.info, Node: Using TagLib, Next: Defining Info Methods, Prev: Using tinytag, Up: Track Information +File: emms.info, Node: Using exiftool, Next: Using TagLib, Prev: Using tinytag, Up: Track Information + +13.2 Using exiftool +=================== + +Make sure that the perl program exiftool is installed on your system. +It is available at <https://exiftool.org/>. + + Then set exiftool as the sole info method with: + + (setq emms-info-functions '(emms-info-exiftool)) + + +File: emms.info, Node: Using TagLib, Next: Defining Info Methods, Prev: Using exiftool, Up: Track Information -13.2 Using TagLib +13.3 Using TagLib ================= 'emms-info-libtag.el' uses a tiny C shim (included in the src/ @@ -836,7 +856,7 @@ TagLib data): File: emms.info, Node: Defining Info Methods, Prev: Using TagLib, Up: Track Information -13.3 Defining Info Methods +13.4 Defining Info Methods ========================== An info method essentially consists of a function which given an Emms @@ -3398,6 +3418,7 @@ Concept Index * track information: Track Information. (line 6) * track order: Sorting Playlists. (line 6) * user variables: User Variables. (line 6) +* Using exiftool: Using exiftool. (line 6) * using taglib: Using TagLib. (line 6) * Using tinytag: Using tinytag. (line 6) * volume: Volume. (line 6) @@ -3640,9 +3661,9 @@ Variable Index * emms-history-file: Persistent Playlists. (line 14) * emms-history-start-playing: Persistent Playlists. (line 33) -* emms-info-asynchronously: Track Information. (line 45) -* emms-info-auto-update: Track Information. (line 41) -* emms-info-functions: Track Information. (line 50) +* emms-info-asynchronously: Track Information. (line 50) +* emms-info-auto-update: Track Information. (line 46) +* emms-info-functions: Track Information. (line 55) * emms-lyrics-coding-system: Lyrics. (line 36) * emms-lyrics-dir: Lyrics. (line 27) * emms-lyrics-display-format: Lyrics. (line 32) @@ -3732,59 +3753,60 @@ Keybinding Index Tag Table: Node: Top689 -Node: Introduction4369 -Node: Quickstart Guide5944 -Node: Installation8694 -Node: Compiling Emms9107 -Node: Setup9795 -Node: Configuration10781 -Node: Finding files and speed12192 -Node: Getting Help13038 -Node: Formats and Freedom13616 -Node: Basic Commands14821 -Node: The Core File18202 -Node: User Variables18636 -Node: Hooks19612 -Node: Core Functions21038 -Node: Sources24038 -Node: Simple Players26171 -Node: Playlists27265 -Node: Track Information28546 -Node: Using tinytag31112 -Node: Using TagLib31539 -Node: Defining Info Methods32647 -Node: Interactive Playlists33429 -Node: Markable Playlists36471 -Node: Extending Emms38942 -Node: New Player39378 -Node: Simple Player for `play'39767 -Node: More Complex Player41495 -Node: The Browser44502 -Node: Browser Interface45478 -Node: Filtering Tracks47892 -Node: Displaying Covers49670 -Node: Changing Looks51684 -Node: Sorting Playlists54662 -Node: Persistent Playlists56131 -Node: Editing Tracks57290 -Node: Emms Mode Line60964 -Node: Limiting62132 -Node: Music Player Daemon64471 -Node: Lyrics67984 -Node: Volume70032 -Node: Streaming Audio71820 -Ref: Streaming Audio-Footnote-172412 -Node: APE / FLAC Commands72763 -Node: Bookmarks73470 -Node: Managing Playlists74181 -Node: GNU FM75204 -Node: Uploading Track Information76558 -Node: GNU FM Streaming77440 -Node: Copying77940 -Node: The GNU FDL115457 -Node: Concept Index137845 -Node: Function Index142703 -Node: Variable Index158395 -Node: Keybinding Index160738 +Node: Introduction4430 +Node: Quickstart Guide6005 +Node: Installation8755 +Node: Compiling Emms9168 +Node: Setup9856 +Node: Configuration10842 +Node: Finding files and speed12253 +Node: Getting Help13099 +Node: Formats and Freedom13677 +Node: Basic Commands14882 +Node: The Core File18263 +Node: User Variables18697 +Node: Hooks19673 +Node: Core Functions21099 +Node: Sources24099 +Node: Simple Players26232 +Node: Playlists27326 +Node: Track Information28607 +Node: Using tinytag31494 +Node: Using exiftool31923 +Node: Using TagLib32295 +Node: Defining Info Methods33404 +Node: Interactive Playlists34186 +Node: Markable Playlists37228 +Node: Extending Emms39699 +Node: New Player40135 +Node: Simple Player for `play'40524 +Node: More Complex Player42252 +Node: The Browser45259 +Node: Browser Interface46235 +Node: Filtering Tracks48649 +Node: Displaying Covers50427 +Node: Changing Looks52441 +Node: Sorting Playlists55419 +Node: Persistent Playlists56888 +Node: Editing Tracks58047 +Node: Emms Mode Line61721 +Node: Limiting62889 +Node: Music Player Daemon65228 +Node: Lyrics68741 +Node: Volume70789 +Node: Streaming Audio72577 +Ref: Streaming Audio-Footnote-173169 +Node: APE / FLAC Commands73520 +Node: Bookmarks74227 +Node: Managing Playlists74938 +Node: GNU FM75961 +Node: Uploading Track Information77315 +Node: GNU FM Streaming78197 +Node: Copying78697 +Node: The GNU FDL116214 +Node: Concept Index138602 +Node: Function Index143533 +Node: Variable Index159225 +Node: Keybinding Index161568 End Tag Table |