added mov support
[meviz.git] / src / main / java / eu / svjatoslav / meviz / encoder / converters / AvconvVideo.java
index ea4d1d3..58cd215 100644 (file)
@@ -22,7 +22,7 @@ public class AvconvVideo extends AbstractConverter {
                        final int videoBitrate, final int audioBitrate,
                        final String videoCodec, final String audioCodec) {
 
-               StringBuffer codecParams = new StringBuffer();
+               final StringBuffer codecParams = new StringBuffer();
 
                if (audioCodec == null)
                        codecParams.append("-an ");
@@ -37,9 +37,12 @@ public class AvconvVideo extends AbstractConverter {
                if (audioBitrate != -1)
                        codecParams.append("-b:a " + audioBitrate + "k ");
 
-               if (options.deinterlace)
+               if (options.isDeinterlace())
                        codecParams.append("-filter:v yadif ");
 
+               if (options.getTargetFps() != null)
+                       codecParams.append("-r " + options.getTargetFps() + " ");
+
                return codecParams.toString();
        }
 
@@ -68,7 +71,7 @@ public class AvconvVideo extends AbstractConverter {
 
        @Override
        public String getCommand(final File inputFile, final File targetFile,
-                       final EncodingOptions options, String targetFormat) {
+                       final EncodingOptions options, final String targetFormat) {
 
                int videoBitrate = getVideoBitrateValue(options.getVideoBitrate());
                int audioBitrate = getAudioBitrateValue(options.getAudioBitrate());
@@ -94,7 +97,7 @@ public class AvconvVideo extends AbstractConverter {
                if (options.getAudioBitrate() == bitrate.NONE)
                        audioCodec = null;
 
-               if (options.forPortablePlayer) {
+               if (options.isForPortablePlayer()) {
                        videoBitrate = 1000;
                        audioBitrate = 128;
                        videoCodec = "libxvid";
@@ -117,13 +120,13 @@ public class AvconvVideo extends AbstractConverter {
        @Override
        public List<String> getSourceFileExtensions() {
                return toList("mkv", "mts", "mp4", "avi", "mpg", "mpeg", "vob", "m4v",
-                               "webm");
+                               "webm", "mov");
        }
 
        @Override
        public List<String> getTargetFileExtensions() {
                return toList("mkv", "mts", "mp4", "avi", "mpg", "mpeg", "vob", "m4v",
-                               "webm");
+                               "webm", "mov");
        }
 
        private int getVideoBitrateValue(final BitrateParameter.bitrate bitRate) {
@@ -135,7 +138,7 @@ public class AvconvVideo extends AbstractConverter {
                        return 4000;
 
                case HIGH:
-                       return 40000;
+                       return 16000;
 
                case COPY:
                        return -1;