;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun media/mplayer/filter-subfunctions (cmd param)
- ;; (unless (string= cmd "A:")
- ;; (message "cmd=%s param=%s" cmd param)
- ;; )
+ ;; (unless (string= cmd "A:")
+ ;; (message "cmd=%s param=%s" cmd param)
+ ;; )
(eval
(cdr
(assoc cmd
;; ----------------------------------------
+ ("ICY Info:" .
+ (if (string-match "StreamTitle='\\([^']*\\)';" param)
+ (message "Now in stream \"%s\"" (match-string 1 param))
+ (message "ICY Info \"%s\"" param)))
+
+ ;; ----------------------------------------
+
("ANS_LENGTH" .
(setq media/song-duration
(string-match "\\(.*\\)[\n\r]+" media/mplayer/buffer start))
(setq start (1+ (match-end 1)))
(let ((line (match-string 1 media/mplayer/buffer)))
- (when (string-match "^\\(AUDIO:\\|Exiting...\\|Starting\\|ANS_LENGTH\\|ANS_TIME_POSITION\\|Cache fill:\\) *\\(.*\\)$" line)
+ (when (string-match "^\\(AUDIO:\\|Exiting...\\|Starting\\|ANS_LENGTH\\|ANS_TIME_POSITION\\|Cache fill:\\|ICY Info:\\) *\\(.*\\)$" line)
(media/mplayer/filter-subfunctions (match-string 1 line) (match-string 2 line)))))
(setq media/mplayer/buffer (substring media/mplayer/buffer start)))
)