2 * Meviz - Various tools collection to work with multimedia.
3 * Copyright (C) 2012, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of version 2 of the GNU General Public License
7 * as published by the Free Software Foundation.
10 package eu.svjatoslav.meviz.encoder;
12 import eu.svjatoslav.commons.commandline.parameterparser.ArgumentCount;
13 import eu.svjatoslav.commons.commandline.parameterparser.Parameter;
15 public class BitrateParameter extends Parameter {
17 static public enum bitrate {
18 LOW, MEDIUM, HIGH, COPY
21 public BitrateParameter(final String description) {
22 super(description, ArgumentCount.SINGLE);
26 public BitrateParameter addAliases(final String... aliasArray) {
27 addAliasesProtected(aliasArray);
32 public String describeFormat() {
33 return "Target bitrate [LOW / MEDIUM / HIGH / COPY]";
37 public bitrate getValue() {
38 return bitrate.valueOf(arguments.get(0).toUpperCase());
42 public BitrateParameter setMandatory() {
43 setMandatoryProtected();
48 public boolean validate(final String value) {
50 bitrate.valueOf(value);
51 } catch (final IllegalArgumentException exception) {