21 lines
494 B
Factor
21 lines
494 B
Factor
! (c)2009 Joe Groff bsd license
|
|
USING: ascii assocs io.pathnames kernel namespaces
|
|
vocabs.loader ;
|
|
IN: audio.loader
|
|
|
|
ERROR: unknown-audio-extension extension ;
|
|
|
|
SYMBOL: audio-types
|
|
audio-types [ H{ } clone ] initialize
|
|
|
|
: register-audio-extension ( extension quot -- )
|
|
swap audio-types get set-at ;
|
|
|
|
: read-audio ( path -- audio )
|
|
dup file-extension >lower audio-types get ?at
|
|
[ call( path -- audio ) ]
|
|
[ unknown-audio-extension ] if ;
|
|
|
|
"audio.wav" require
|
|
"audio.aiff" require
|