package top.baogutang.music.enums; import lombok.Getter; import org.apache.commons.lang3.StringUtils; import java.util.Arrays; /** * * @description: * * @author: N1KO * @date: 2024/12/11 : 15:34 */ @Getter public enum MusicQualityEnum { /** * 音质 standard => 标准, * higher => 较高, * exhigh=>极高, * lossless=>无损, * hires=>Hi-Res, * jyeffect => 高清环绕声, * sky => 沉浸环绕声, * dolby => 杜比全景声, * jymaster => 超清母带', */ STANDARD("标准", null), HIGHER("较高", null), EXHIGH("极高", null), LOSSLESS("无损", null), HIRES("Hires音质", null), JYEFFECT("高清环绕声", null), SKY("沉浸环绕声", null), DOLBY("杜比全景声", null), JYMASTER("超清母带", null), KBPS_128("128kbps", "mp3"), KBPS_320("320kbps", "mp3"), ATMOS_5_1("Atmos 5.1", "flac"), ATMOS_2("Atmos 2", "flac"), MASTER("Master", "flac"), FLAC("flac", "flac"), ; private final String desc; private final String type; MusicQualityEnum(String desc, String type) { this.desc = desc; this.type = type; } public static MusicQualityEnum parse(String level) { if (StringUtils.isBlank(level)) { return null; } return Arrays.stream(MusicQualityEnum.values()) .filter(e -> StringUtils.equalsIgnoreCase(e.name(), level) || StringUtils.equalsIgnoreCase(e.getDesc(), level)) .findFirst() .orElse(null); } }