;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. #@40 Simple player for EMMS version string. (defvar emms-player-simple-version "0.2 $Revision: 1.26 $" (#$ . 87)) (require 'emms) #@410 Define a simple player with the use of `emms-define-player'. NAME is used to contruct the name of the function like emms-player-NAME. TYPES is a list of track types understood by this player. REGEX must be a regexp that matches the filenames the player can play. COMMAND specifies the command line argument to call the player and ARGS are the command line arguments. (fn NAME TYPES REGEX COMMAND &rest ARGS) (defalias 'define-emms-simple-player '(macro . #[1156 "\300\301\302!P!\300\301\302!\303Q!\300\301\302 !\304Q!\300\301\302\n!P!\300\301\302 !\305Q!\300\301\302\f!\306Q!\300\301\302 !\307Q!\310\311\312\313 \314Q\315\316\317\301\302!\320Q\257\321\f\322\314Q\323BBBB\321\324 D\325\302 !\326Q\327BBBB\321\330\331\nD\331\nD\331\nDF\332\333BBBB\334 \335F\334\n\336BB\334 \337BB\340 \341\342\343\344\257\257\340 \345BB\340 \346\347\350\351D\352\353E\354\355\356BB\357BBF\257\257 \207" [intern "emms-player-" symbol-name "-command-name" "-parameters" "-start" "-stop" "-playable-p" progn defgroup nil "EMMS player for " "." :group 'emms-player :prefix "-" defcustom "The command name of " (:type 'string) quote "The arguments to `" "'." (:type '(repeat string)) emms-player function "A player for EMMS." (:type '(cons symbol alist)) emms-player-set 'regex ('pause 'emms-player-simple-pause) ('resume 'emms-player-simple-resume) defun (track) "Start the player process." emms-player-simple-start (emms-track-name track) (nil "Stop the player process." (emms-player-simple-stop)) (track) "Return non-nil when we can play this track." and executable-find memq (emms-track-type track) string-match emms-player-get ('regex) ((emms-track-name track))] 33 (#$ . 219)])) #@39 The name of the simple player process (defvar emms-player-simple-process-name "emms-player-simple-process" (#$ . 1940)) #@60 Stop the currently playing process, if indeed there is one (defalias 'emms-player-simple-stop #[0 "\301!\211\205\302!\210\303!\207" [emms-player-simple-process-name get-process kill-process delete-process] 3 (#$ . 2066)]) #@169 Starts a process playing FILENAME using the specified CMDNAME with the specified PARAMS. PLAYER is the name of the current player. (fn FILENAME PLAYER CMDNAME PARAMS) (defalias 'emms-player-simple-start #[1028 "\301\302\303\304\nC\"%\305\306\"\266\307!\207" [emms-player-simple-process-name apply start-process nil append set-process-sentinel emms-player-simple-sentinel emms-player-started] 12 (#$ . 2300)]) #@60 Sentinel for determining the end of process (fn PROC STR) (defalias 'emms-player-simple-sentinel #[514 "\300!\301=\204\300!\302=\205\303 \207" [process-status exit signal emms-player-stopped] 4 (#$ . 2724)]) #@40 Pause the player by sending a SIGSTOP. (defalias 'emms-player-simple-pause #[0 "\301\302!\303\"\207" [emms-player-simple-process-name signal-process get-process SIGSTOP] 3 (#$ . 2945)]) #@41 Resume the player by sending a SIGCONT. (defalias 'emms-player-simple-resume #[0 "\301\302!\303\"\207" [emms-player-simple-process-name signal-process get-process SIGCONT] 3 (#$ . 3138)]) #@85 Return a regexp matching all EXTENSIONS, case-insensitively. (fn &rest EXTENSIONS) (defalias 'emms-player-simple-regexp #[128 "\300\301\302\303#\304Q\207" ["\\.\\(" mapconcat #[257 "\300\301\302#\207" [mapconcat #[257 "\211\226\227U\203\300\301\"\207\300\302#\207" [format "%c" "[%c%c]"] 7 "\n\n(fn CHAR)"] ""] 5 "\n\n(fn EXTENSION)"] "\\|" "\\)\\'"] 6 (#$ . 3333)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332\333\"#\210\327\334\335#\210\327\336\337#\207" [emms-player-mpg321 custom-declare-group nil "EMMS player for mpg321." :group emms-player :prefix "emms-player-mpg321-" custom-declare-variable emms-player-mpg321-command-name funcall function #[0 "\300\207" [#1="mpg321"] 1 #1#] "The command name of mpg321." :type string emms-player-mpg321-parameters #[0 "\300\207" [nil] 1] "The arguments to `emms-player-mpg321-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-mpg321-start emms-player-mpg321-stop emms-player-mpg321-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex emms-player-simple-regexp "mp3" "mp2" pause emms-player-simple-pause resume emms-player-simple-resume] 8) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-mpg321-start #[257 "\303\304! \n$\207" [emms-player-mpg321 emms-player-mpg321-command-name emms-player-mpg321-parameters emms-player-simple-start emms-track-name] 6 (#$ . 4639)]) #@26 Stop the player process. (defalias 'emms-player-mpg321-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 4887)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-mpg321-playable-p #[257 "\302!\205\303!\304>\205\305\306 \307\"\310!\"\207" [emms-player-mpg321-command-name emms-player-mpg321 executable-find emms-track-type (file url) string-match emms-player-get regex emms-track-name] 5 (#$ . 5011)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332\333\"#\210\327\334\335#\210\327\336\337#\207" [emms-player-ogg123 custom-declare-group nil "EMMS player for ogg123." :group emms-player :prefix "emms-player-ogg123-" custom-declare-variable emms-player-ogg123-command-name funcall function #[0 "\300\207" [#1="ogg123"] 1 #1#] "The command name of ogg123." :type string emms-player-ogg123-parameters #[0 "\300\207" [nil] 1] "The arguments to `emms-player-ogg123-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-ogg123-start emms-player-ogg123-stop emms-player-ogg123-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex emms-player-simple-regexp "ogg" "flac" pause emms-player-simple-pause resume emms-player-simple-resume] 8) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-ogg123-start #[257 "\303\304! \n$\207" [emms-player-ogg123 emms-player-ogg123-command-name emms-player-ogg123-parameters emms-player-simple-start emms-track-name] 6 (#$ . 6265)]) #@26 Stop the player process. (defalias 'emms-player-ogg123-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 6513)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-ogg123-playable-p #[257 "\302!\205\303!\304=\205\305\306 \307\"\310!\"\207" [emms-player-ogg123-command-name emms-player-ogg123 executable-find emms-track-type file string-match emms-player-get regex emms-track-name] 5 (#$ . 6637)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332!#\210\327\333\334#\210\327\335\336#\207" [emms-player-speexdec custom-declare-group nil "EMMS player for speexdec." :group emms-player :prefix "emms-player-speexdec-" custom-declare-variable emms-player-speexdec-command-name funcall function #[0 "\300\207" [#1="speexdec"] 1 #1#] "The command name of speexdec." :type string emms-player-speexdec-parameters #[0 "\300\207" [nil] 1] "The arguments to `emms-player-speexdec-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-speexdec-start emms-player-speexdec-stop emms-player-speexdec-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex emms-player-simple-regexp "spx" pause emms-player-simple-pause resume emms-player-simple-resume] 8) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-speexdec-start #[257 "\303\304! \n$\207" [emms-player-speexdec emms-player-speexdec-command-name emms-player-speexdec-parameters emms-player-simple-start emms-track-name] 6 (#$ . 7895)]) #@26 Stop the player process. (defalias 'emms-player-speexdec-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 8151)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-speexdec-playable-p #[257 "\302!\205\303!\304=\205\305\306 \307\"\310!\"\207" [emms-player-speexdec-command-name emms-player-speexdec executable-find emms-track-type file string-match emms-player-get regex emms-track-name] 5 (#$ . 8277)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332!#\210\327\333\334#\210\327\335\336#\207" [emms-player-playsound custom-declare-group nil "EMMS player for playsound." :group emms-player :prefix "emms-player-playsound-" custom-declare-variable emms-player-playsound-command-name funcall function #[0 "\300\207" [#1="playsound"] 1 #1#] "The command name of playsound." :type string emms-player-playsound-parameters #[0 "\300\207" [nil] 1] "The arguments to `emms-player-playsound-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-playsound-start emms-player-playsound-stop emms-player-playsound-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex emms-player-simple-regexp "wav" pause emms-player-simple-pause resume emms-player-simple-resume] 8) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-playsound-start #[257 "\303\304! \n$\207" [emms-player-playsound emms-player-playsound-command-name emms-player-playsound-parameters emms-player-simple-start emms-track-name] 6 (#$ . 9552)]) #@26 Stop the player process. (defalias 'emms-player-playsound-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 9812)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-playsound-playable-p #[257 "\302!\205\303!\304=\205\305\306 \307\"\310!\"\207" [emms-player-playsound-command-name emms-player-playsound executable-find emms-track-type file string-match emms-player-get regex emms-track-name] 5 (#$ . 9939)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332\333\334\335\336\337\340\341\342\343\344\345\346\347\350\351\352\341&#\210\327\353\354#\210\327\355\356#\207" [emms-player-mikmod custom-declare-group nil "EMMS player for mikmod." :group emms-player :prefix "emms-player-mikmod-" custom-declare-variable emms-player-mikmod-command-name funcall function #[0 "\300\207" [#1="mikmod"] 1 #1#] "The command name of mikmod." :type string emms-player-mikmod-parameters #[0 "\300\207" [("-q" "-p" "1" "-X")] 1] "The arguments to `emms-player-mikmod-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-mikmod-start emms-player-mikmod-stop emms-player-mikmod-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex emms-player-simple-regexp "669" "amf" "dsm" "far" "gdm" "it" "imf" "mod" "med" "mtm" "okt" "s3m" "stm" "stx" "ult" "apun" "xm" pause emms-player-simple-pause resume emms-player-simple-resume] 22) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-mikmod-start #[257 "\303\304! \n$\207" [emms-player-mikmod emms-player-mikmod-command-name emms-player-mikmod-parameters emms-player-simple-start emms-track-name] 6 (#$ . 11366)]) #@26 Stop the player process. (defalias 'emms-player-mikmod-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 11615)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-mikmod-playable-p #[257 "\302!\205\303!\304=\205\305\306 \307\"\310!\"\207" [emms-player-mikmod-command-name emms-player-mikmod executable-find emms-track-type file string-match emms-player-get regex emms-track-name] 5 (#$ . 11740)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332\333\334\335\336\337\340&#\210\327\341\342#\210\327\343\344#\207" [emms-player-timidity custom-declare-group nil "EMMS player for timidity." :group emms-player :prefix "emms-player-timidity-" custom-declare-variable emms-player-timidity-command-name funcall function #[0 "\300\207" [#1="timidity"] 1 #1#] "The command name of timidity." :type string emms-player-timidity-parameters #[0 "\300\207" [nil] 1] "The arguments to `emms-player-timidity-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-timidity-start emms-player-timidity-stop emms-player-timidity-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex emms-player-simple-regexp "mid" "rmi" "rcp" "r36" "g18" "g36" "mfi" pause emms-player-simple-pause resume emms-player-simple-resume] 11) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-timidity-start #[257 "\303\304! \n$\207" [emms-player-timidity emms-player-timidity-command-name emms-player-timidity-parameters emms-player-simple-start emms-track-name] 6 (#$ . 13061)]) #@26 Stop the player process. (defalias 'emms-player-timidity-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 13318)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-timidity-playable-p #[257 "\302!\205\303!\304=\205\305\306 \307\"\310!\"\207" [emms-player-timidity-command-name emms-player-timidity executable-find emms-track-type file string-match emms-player-get regex emms-track-name] 5 (#$ . 13445)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332!#\210\327\333\334#\210\327\335\336#\207" [emms-player-fluidsynth custom-declare-group nil "EMMS player for fluidsynth." :group emms-player :prefix "emms-player-fluidsynth-" custom-declare-variable emms-player-fluidsynth-command-name funcall function #[0 "\300\207" [#1="fluidsynth"] 1 #1#] "The command name of fluidsynth." :type string emms-player-fluidsynth-parameters #[0 "\300\207" [("-aalsa" "-in" "/media/music/sf/FluidR3-GM.SF2")] 1] "The arguments to `emms-player-fluidsynth-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-fluidsynth-start emms-player-fluidsynth-stop emms-player-fluidsynth-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex emms-player-simple-regexp "mid" pause emms-player-simple-pause resume emms-player-simple-resume] 8) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-fluidsynth-start #[257 "\303\304! \n$\207" [emms-player-fluidsynth emms-player-fluidsynth-command-name emms-player-fluidsynth-parameters emms-player-simple-start emms-track-name] 6 (#$ . 14778)]) #@26 Stop the player process. (defalias 'emms-player-fluidsynth-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 15043)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-fluidsynth-playable-p #[257 "\302!\205\303!\304=\205\305\306 \307\"\310!\"\207" [emms-player-fluidsynth-command-name emms-player-fluidsynth executable-find emms-track-type file string-match emms-player-get regex emms-track-name] 5 (#$ . 15172)]) (byte-code "\301\300\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\323%\210\310\300\312\313\324DD\325\316\326%\210\327\330\331\332\333\334\335\336\337\340&P#\210\327\341\342#\210\327\343\344#\207" [emms-player-alsaplayer custom-declare-group nil "EMMS player for alsaplayer." :group emms-player :prefix "emms-player-alsaplayer-" custom-declare-variable emms-player-alsaplayer-command-name funcall function #[0 "\300\207" [#1="alsaplayer"] 1 #1#] "The command name of alsaplayer." :type string emms-player-alsaplayer-parameters #[0 "\300\207" [("--quiet" "--nosave" "\"--interface text\"")] 1] "The arguments to `emms-player-alsaplayer-command-name'." (repeat string) #[0 "\300\301\302\303#\207" [emms-player emms-player-alsaplayer-start emms-player-alsaplayer-stop emms-player-alsaplayer-playable-p] 4] "A player for EMMS." (cons symbol alist) emms-player-set regex "\\`http[s]?://\\|" emms-player-simple-regexp "ogg" "mp3" "wav" "flac" "pls" "m3u" pause emms-player-simple-pause resume emms-player-simple-resume] 11) #@39 Start the player process. (fn TRACK) (defalias 'emms-player-alsaplayer-start #[257 "\303\304! \n$\207" [emms-player-alsaplayer emms-player-alsaplayer-command-name emms-player-alsaplayer-parameters emms-player-simple-start emms-track-name] 6 (#$ . 16585)]) #@26 Stop the player process. (defalias 'emms-player-alsaplayer-stop #[0 "\300 \207" [emms-player-simple-stop] 1 (#$ . 16850)]) #@57 Return non-nil when we can play this track. (fn TRACK) (defalias 'emms-player-alsaplayer-playable-p #[257 "\302!\205\303!\304>\205\305\306 \307\"\310!\"\207" [emms-player-alsaplayer-command-name emms-player-alsaplayer executable-find emms-track-type (file url) string-match emms-player-get regex emms-track-name] 5 (#$ . 16979)]) (byte-code "\301\302\303#\210\301\304\305#\210\301\306\307#\207" [emms-player-alsaplayer emms-player-set pause emms-player-alsaplayer-pause resume nil seek emms-player-alsaplayer-seek] 4) (defalias 'emms-player-alsaplayer-pause #[0 "\300\301\302\211\211\303%\207" [call-process "alsaplayer" nil "--pause"] 6]) #@12 (fn SEC) (defalias 'emms-player-alsaplayer-seek #[257 "\300\301\302\211\211\303\304\305\"&\207" [call-process "alsaplayer" nil "--relative" format "%d"] 10 (#$ . 17636)]) (provide 'emms-player-simple)