1 package org.daisy.pipeline.audio;
2
3 import java.util.HashMap;
4 import java.util.Map;
5
6 import javax.sound.sampled.AudioFileFormat;
7
8
9
10
11 public final class AudioFileTypes {
12
13 public static final AudioFileFormat.Type MP3 = new AudioFileFormat.Type("MP3", "mp3");
14 public static final AudioFileFormat.Type WAVE = AudioFileFormat.Type.WAVE;
15
16 private static final Map<String,AudioFileFormat.Type> mediaTypes = new HashMap<>();
17 static {
18 mediaTypes.put("audio/mpeg", MP3);
19 mediaTypes.put("audio/mp3", MP3);
20 mediaTypes.put("audio/wav", WAVE);
21 mediaTypes.put("audio/wave", WAVE);
22 mediaTypes.put("audio/x-wav", WAVE);
23 mediaTypes.put("audio/vnd.wave", WAVE);
24 mediaTypes.put("audio/aiff", AudioFileFormat.Type.AIFF);
25 mediaTypes.put("audio/x-aiff", AudioFileFormat.Type.AIFF);
26 }
27
28 public static AudioFileFormat.Type fromMediaType(String mediaType) {
29 return mediaTypes.get(mediaType);
30 }
31 }