summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--emacsconf-mail.el7
-rw-r--r--emacsconf.el9
2 files changed, 13 insertions, 3 deletions
diff --git a/emacsconf-mail.el b/emacsconf-mail.el
index 6553ffe..47b6031 100644
--- a/emacsconf-mail.el
+++ b/emacsconf-mail.el
@@ -830,7 +830,8 @@ Thank you so much for all the work you put into preparing a talk for ${conf-name
${signature}")
(plist-get talk :email)
- (let ((files (directory-files emacsconf-cache-dir
+ (let ((default-directory emacsconf-cache-dir)
+ (files (directory-files emacsconf-cache-dir
t (regexp-quote (plist-get talk :file-prefix)))))
(list
:title (plist-get talk :title)
@@ -856,10 +857,10 @@ ${signature}")
(string-trim
(shell-command-to-string
(concat "md5sum " (shell-quote-argument file) " | cut -f 1 -d ' '"))))
- (if (member (file-name-extension file) subed-video-extensions)
+ (if (member (file-name-extension file) emacsconf-media-extensions)
(format " (around %d minutes long)\n"
(ceiling
- (/ (compile-media-get-file-duration-ms file)
+ (/ (emacsconf-get-file-duration-ms file)
60000.0)))
"")))
files
diff --git a/emacsconf.el b/emacsconf.el
index d574ef3..37bfc83 100644
--- a/emacsconf.el
+++ b/emacsconf.el
@@ -1677,5 +1677,14 @@ tracks with the ID in the cdr of that list."
"0")))))
info)
(lambda (a b) (< (car a) (car b))))))))
+
+(defun emacsconf-get-file-duration-ms (filename)
+ "Return the duration of FILENAME in milliseconds."
+ (* 1000
+ (string-to-number
+ (shell-command-to-string
+ (concat "ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 "
+ (shell-quote-argument (expand-file-name filename)))))))
+
(provide 'emacsconf)
;;; emacsconf.el ends here