Files
audio-library-manager/private/audio.rkt
T
2026-06-08 17:20:12 +02:00

17 lines
619 B
Racket

#lang racket/base
(provide inspect-flac-sample-rate)
(define (inspect-flac-sample-rate path)
(define call-with-id3-tags (dynamic-require 'racket-audio/taglib 'call-with-id3-tags))
(define tags-valid? (dynamic-require 'racket-audio/taglib 'tags-valid?))
(define tags-sample-rate (dynamic-require 'racket-audio/taglib 'tags-sample-rate))
(define sr
(call-with-id3-tags path
(lambda (tags)
(and (tags-valid? tags) (tags-sample-rate tags)))
#:mode 'read))
(unless (and (integer? sr) (positive? sr))
(error 'inspect-flac-sample-rate "cannot determine sample rate for ~a" path))
sr)