filebot/source/net/filebot/subtitle/SubtitleFormat.java

81 lines
1.5 KiB
Java

package net.filebot.subtitle;
import java.util.Scanner;
import net.filebot.MediaTypes;
import net.filebot.util.FileUtilities.ExtensionFileFilter;
public enum SubtitleFormat {
SubRip {
@Override
public SubtitleDecoder getDecoder() {
return content -> new SubRipReader(new Scanner(content)).stream();
}
@Override
public ExtensionFileFilter getFilter() {
return MediaTypes.getTypeFilter("subtitle/SubRip");
}
},
MicroDVD {
@Override
public SubtitleDecoder getDecoder() {
return content -> new MicroDVDReader(new Scanner(content)).stream();
}
@Override
public ExtensionFileFilter getFilter() {
return MediaTypes.getTypeFilter("subtitle/MicroDVD");
}
},
SubViewer {
@Override
public SubtitleDecoder getDecoder() {
return content -> new SubViewerReader(new Scanner(content)).stream();
}
@Override
public ExtensionFileFilter getFilter() {
return MediaTypes.getTypeFilter("subtitle/SubViewer");
}
},
SubStationAlpha {
@Override
public SubtitleDecoder getDecoder() {
return content -> new SubStationAlphaReader(new Scanner(content)).stream();
}
@Override
public ExtensionFileFilter getFilter() {
return MediaTypes.getTypeFilter("subtitle/SubStationAlpha");
}
},
SAMI {
@Override
public SubtitleDecoder getDecoder() {
return new SamiDecoder();
}
@Override
public ExtensionFileFilter getFilter() {
return MediaTypes.getTypeFilter("subtitle/SAMI");
}
};
public abstract SubtitleDecoder getDecoder();
public abstract ExtensionFileFilter getFilter();
}