diff options
| author | yonirabkin <yonirabkin> | 2005-09-21 15:10:00 +0000 | 
|---|---|---|
| committer | yonirabkin <mwolson@gnu.org> | 2005-09-21 15:10:00 +0000 | 
| commit | ec90d94d50cdfb49d5474190365b71cd6f6267ae (patch) | |
| tree | 47aa90c7310e426a6543fd9200ab3374fcd39d3d | |
| parent | cd1f64f873331c5a12fcd0146b0edd6ebfe0b2d9 (diff) | |
fix emms-score.el and emms-info-ogg.el borkage
darcs-hash:20050921151000-be80e-f0f52d81156347ffd2469b1cc3fc0f019a1cd597.gz
| -rw-r--r-- | emms-info-ogg.el | 53 | ||||
| -rw-r--r-- | emms-score.el | 64 | 
2 files changed, 54 insertions, 63 deletions
| diff --git a/emms-info-ogg.el b/emms-info-ogg.el index 07b5e59..d0c4899 100644 --- a/emms-info-ogg.el +++ b/emms-info-ogg.el @@ -44,17 +44,12 @@    "EMMS info ogg version string.")  ;; $Id: emms-info-ogg.el,v 1.14 2005/07/09 11:56:00 forcer Exp $ -(defgroup emms-info-ogg-comments nil +(defgroup emms-info-ogg nil    "An EMMS-info method for getting/setting ogg-comments, using  ogg-comments.el"    :group 'emms-info-methods    :prefix "emms-info-ogg-") -(defcustom emms-info-ogginfo-program-name "ogginfo" -  "*The name/path of the ogginfo tag program." -  :type 'string -  :group 'emms-info-ogginfo) -  (defun emms-info-ogg-get-comment (field info)    (let ((comment (cadr (assoc field (cadr info)))))      (if comment @@ -63,28 +58,30 @@ ogg-comments.el"  (defun emms-info-ogg (track)    "Retrieve an emms-info structure as an ogg-comment" -  (let ((info (oggc-read-header (emms-track-name track))) -        (file (emms-track-get track 'name))) -    (with-temp-buffer -      (call-process "ogginfo" nil t nil file) -      (goto-char (point-min)) -      (re-search-forward "Playback length: \\([0-9]*\\)m:\\([0-9]*\\)") -      (let ((minutes (string-to-int (match-string 1))) -	    (seconds (string-to-int (match-string 2)))) -	(setq ptime-total (+ (* minutes 60) seconds) -	      ptime-min minutes -	      ptime-sec seconds))) - -    (emms-track-set track 'info-title (emms-info-ogg-get-comment "title" info)) -    (emms-track-set track 'info-artist (emms-info-ogg-get-comment "artist" info)) -    (emms-track-set track 'info-album (emms-info-ogg-get-comment "album" info)) -    (emms-track-set track 'info-note (emms-info-ogg-get-comment "comment" info)) -    (emms-track-set track 'info-year (emms-info-ogg-get-comment "date" info)) -    (emms-track-set track 'info-genre (emms-info-ogg-get-comment "genre" info)) -    (emms-track-set track 'info-playing-time ptime-total) -    (emms-track-set track 'info-playing-time-min ptime-min) -    (emms-track-set track 'info-playing-time-sec ptime-sec) -    (emms-track-set track 'info-file (emms-track-name track)))) +  (when (and (eq 'file (emms-track-type track)) +             (string-match "\\.[Oo][Gg][Gg]\\'" (emms-track-name track))) +    (let ((info (oggc-read-header (emms-track-name track))) +	  (file (emms-track-get track 'name))) +      (with-temp-buffer +	(call-process "ogginfo" nil t nil file) +	(goto-char (point-min)) +	(re-search-forward "Playback length: \\([0-9]*\\)m:\\([0-9]*\\)") +	(let ((minutes (string-to-int (match-string 1))) +	      (seconds (string-to-int (match-string 2)))) +	  (setq ptime-total (+ (* minutes 60) seconds) +		ptime-min minutes +		ptime-sec seconds))) + +      (emms-track-set track 'info-title (emms-info-ogg-get-comment "title" info)) +      (emms-track-set track 'info-artist (emms-info-ogg-get-comment "artist" info)) +      (emms-track-set track 'info-album (emms-info-ogg-get-comment "album" info)) +      (emms-track-set track 'info-note (emms-info-ogg-get-comment "comment" info)) +      (emms-track-set track 'info-year (emms-info-ogg-get-comment "date" info)) +      (emms-track-set track 'info-genre (emms-info-ogg-get-comment "genre" info)) +      (emms-track-set track 'info-playing-time ptime-total) +      (emms-track-set track 'info-playing-time-min ptime-min) +      (emms-track-set track 'info-playing-time-sec ptime-sec) +      (emms-track-set track 'info-file (emms-track-name track)))))  (provide 'emms-info-ogg)  ;;; emms-info-ogg.el ends here diff --git a/emms-score.el b/emms-score.el index da28828..9f97c0e 100644 --- a/emms-score.el +++ b/emms-score.el @@ -1,13 +1,11 @@  ;;; emms-scores.el --- Scoring system for mp3player -;; Author & Maintainer: Jean-Philippe Theberge (jphiltheberge@videotron.ca) -;; version : -(defconst emms-scores-version "1.92 $Revision: 1.4 $") -;; $Id: emms-score.el,v 1.4 2004/02/17 09:01:49 kanaldrache Exp $ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Copyright (c) 1/me think he smoke too much marijuana in it's yong years998 - 1999 Free Software Foundation, Inc. -;; -;; This file is not part of GNU Emacs. :-( -;; + +;; Copyright (C) 2003, 2004, 2005 + +;; Authors: Jean-Philippe Theberge <jphiltheberge@videotron.ca>, Yoni +;;          Rabkin <yonirabkin@member.fsf.org> +;; Keywords: emms, mp3, mpeg, multimedia +  ;; This file is free software; you can redistribute it and/or modify  ;; it under the terms of the GNU General Public License as published by  ;; the Free Software Foundation; either version 2, or (at your option) @@ -17,9 +15,9 @@  ;; but WITHOUT ANY WARRANTY; without even the implied warranty of  ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  ;; GNU General Public License for more details. -;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; + +;;; Commentary: +  ;; NOTE: This is experimental stuff - comments welcome!  There  ;; shouldn't worky anything in that file... scores aren't saved, they  ;; even don't have any consequence on playing order and there's just @@ -36,7 +34,7 @@  ;; You can change your mood with M-x emms-score-change-mood.  ;;  ;; Every music file start with a default score of 0 the command -;; emms-score-up-current and emms-score-down-current modify the +;; emms-score-up-playing and emms-score-down-playing modify the  ;; score of the file you are curently listening by 1 In addition,  ;; skipping a file (with emms-skip) automaticaly score the file  ;; down. @@ -55,10 +53,6 @@  ;;; Code: -(defvar emms-score-version "0.2 $Revision: 1.4 $" -  "EMMS score version string.") -;; $Id: emms-score.el,v 1.4 2004/02/17 09:01:49 kanaldrache Exp $ -  (defvar emms-scores-list nil)  (defvar emms-score-current-mood 'default)  (defvar emms-score-min-score 0) @@ -79,7 +73,6 @@ The score hash is automatically saved."    (emms-score-save-hash)    (setq emms-score-current-mood (intern (downcase mood)))) -  (defun emms-score-save-hash ()    "Save score hash in `emms-score-file'."    (interactive) @@ -87,11 +80,11 @@ The score hash is automatically saved."      (make-directory (file-name-directory emms-score-file)))    (with-temp-file emms-score-file      (let ((standard-output (current-buffer))) -	  (insert "(") -	  (maphash (lambda (key value) -		     (prin1 (cons key value))) -		   emms-score-hash) -	  (insert ")")))) +      (insert "(") +      (maphash (lambda (key value) +		 (prin1 (cons key value))) +	       emms-score-hash) +      (insert ")"))))  (defun emms-score-load-hash ()    "Load score hash from `emms-score-file'." @@ -113,25 +106,26 @@ The score hash is automatically saved."  	     (plist-put sp emms-score-current-mood (+ sc score))   	     emms-score-hash)      (message "New score is %s" (+ score sc)))) -   -(defun emms-score-up-current () + +(defun emms-score-up-playing ()    (interactive) -  (emms-score-change-score 1 (emms-playlist-current))) +  (if emms-player-playing-p +      (emms-score-change-score 1 (emms-playlist-current-selected-track)) +    (error "No track currently playing"))) -(defun emms-score-down-current () +(defun emms-score-down-playing ()    (interactive) -  (emms-score-change-score -1 (emms-playlist-current))) +  (if emms-player-playing-p +      (emms-score-change-score -1 (emms-playlist-current-selected-track)) +    (error "No track currently playing")))  (defun emms-score-up-file-on-line ()    (interactive) -  (let ((idx (1- (count-lines (point-min) (point-at-eol))))) -    (emms-score-change-score 1 (emms-track-name (emms-playlist-get-track idx))))) -	 +  (emms-score-change-score 1 (emms-playlist-current-selected-track))) +  (defun emms-score-down-file-on-line ()    (interactive) -  (let ((idx (1- (count-lines (point-min) (point-at-eol))))) -    (emms-score-change-score -1 (emms-track-name (emms-playlist-get-track idx))))) -	 +  (emms-score-change-score -1 (emms-playlist-current-selected-track)))  (defun emms-score (arg)    "Turn on emms-score if prefix argument ARG is a positive integer, @@ -154,7 +148,7 @@ This is a suitable function to put in `emms-player-stopped-hook'."    (when emms-player-playing-p      (error "A track is already playing."))      (if (emms-playlist-next)  -      (if (emms-score-check-score (emms-playlist-current)) +      (if (emms-score-check-score (emms-playlist-current-selected-track))  	  (emms-start)  	(emms-score-next-noerror))      (message "No track in playlist that matches your score anymore"))) | 
