a9d86eeb3b1234bf9e729ce9dc5946fa9287ae96
[meviz.git] / src / main / java / eu / svjatoslav / meviz / encoder / converters / Ffmpeg2theora.java
1 /*
2  * Meviz - Various tools collection to work with multimedia.
3  * Copyright (C) 2012, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
4  *
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.
8  */
9
10 package eu.svjatoslav.meviz.encoder.converters;
11
12 import java.io.File;
13 import java.util.List;
14
15 import eu.svjatoslav.meviz.encoder.EncodingOptions;
16
17 public class Ffmpeg2theora extends AbstractConverter {
18
19         @Override
20         public String getCommand(final File inputFile, final File targetFile,
21                         final EncodingOptions options) {
22                 return "ffmpeg2theora \"" + inputFile.getAbsolutePath() + "\" -o \""
23                                 + targetFile.getAbsolutePath()
24                                 + "\" --optimize --videobitrate 3000 --width 800";
25         }
26
27         @Override
28         public List<String> getSourceFileExtensions() {
29                 return toList("avi", "mp4", "m4v", "asf");
30         }
31
32         @Override
33         public List<String> getTargetFileExtensions() {
34                 return toList("ogv");
35         }
36
37         @Override
38         public boolean isTerminalMandatory() {
39                 return true;
40         }
41
42 }