X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fmeviz%2Fencoder%2FFormatsRegistry.java;h=d023f02a17259af645eb9d29d9327b8ed16ba623;hb=99240fb3b40e8dd7e3759d2b81ae9a4b05fae1b5;hp=a78ff959102d860cccbac9b0760bb127e61e9c28;hpb=1615d61199bf23f22829d8d05c7253d815b15799;p=meviz.git diff --git a/src/main/java/eu/svjatoslav/meviz/encoder/FormatsRegistry.java b/src/main/java/eu/svjatoslav/meviz/encoder/FormatsRegistry.java index a78ff95..d023f02 100755 --- a/src/main/java/eu/svjatoslav/meviz/encoder/FormatsRegistry.java +++ b/src/main/java/eu/svjatoslav/meviz/encoder/FormatsRegistry.java @@ -1,7 +1,7 @@ /* * Meviz - Various tools collection to work with multimedia. * Copyright (C) 2012, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu - * + * * This program is free software; you can redistribute it and/or * modify it under the terms of version 2 of the GNU General Public License * as published by the Free Software Foundation. @@ -12,58 +12,45 @@ package eu.svjatoslav.meviz.encoder; import java.util.ArrayList; import java.util.List; -import eu.svjatoslav.meviz.encoder.converters.Avi2Ogv; -import eu.svjatoslav.meviz.encoder.converters.Converter; -import eu.svjatoslav.meviz.encoder.converters.Jpeg2Png; -import eu.svjatoslav.meviz.encoder.converters.Mkv2Mp4; -import eu.svjatoslav.meviz.encoder.converters.Mp42Ogv; -import eu.svjatoslav.meviz.encoder.converters.Mts2Mkv; -import eu.svjatoslav.meviz.encoder.converters.Mts2Mp4; -import eu.svjatoslav.meviz.encoder.converters.Ogg2Mp3; +import eu.svjatoslav.meviz.encoder.converters.AbstractConverter; +import eu.svjatoslav.meviz.encoder.converters.AvconvAudio; +import eu.svjatoslav.meviz.encoder.converters.AvconvVideo; +import eu.svjatoslav.meviz.encoder.converters.Convert; +import eu.svjatoslav.meviz.encoder.converters.Ffmpeg2theora; +import eu.svjatoslav.meviz.encoder.converters.Flac; +import eu.svjatoslav.meviz.encoder.converters.Midi2Wav; import eu.svjatoslav.meviz.encoder.converters.Ogg2Wav; -import eu.svjatoslav.meviz.encoder.converters.Png2Tiff; -import eu.svjatoslav.meviz.encoder.converters.Tif2Png; -import eu.svjatoslav.meviz.encoder.converters.Tiff2Png; -import eu.svjatoslav.meviz.encoder.converters.Wav2flac; -import eu.svjatoslav.meviz.encoder.converters.Wav2mp3; public class FormatsRegistry { - public ArrayList encoders = new ArrayList(); + public ArrayList encoders = new ArrayList(); public FormatsRegistry() { // video conversion - registerEncoder(new Avi2Ogv()); - registerEncoder(new Mp42Ogv()); - registerEncoder(new Mts2Mp4()); - registerEncoder(new Mts2Mkv()); - registerEncoder(new Mkv2Mp4()); + registerEncoder(new Ffmpeg2theora()); + registerEncoder(new AvconvVideo()); // image conversion - registerEncoder(new Jpeg2Png()); - registerEncoder(new Png2Tiff()); - registerEncoder(new Tiff2Png()); - registerEncoder(new Tif2Png()); + registerEncoder(new Convert()); // audio conversion registerEncoder(new Ogg2Wav()); - registerEncoder(new Wav2mp3()); - registerEncoder(new Wav2flac()); - registerEncoder(new Ogg2Mp3()); + registerEncoder(new Flac()); + registerEncoder(new AvconvAudio()); + registerEncoder(new Midi2Wav()); } - public List getEncoders(final String sourceFormat, + public List getEncoders(final String sourceFormat, final String targetFormat) { final String sourceFormatLowerCase = sourceFormat.toLowerCase(); final String targetFormatLowerCase = targetFormat.toLowerCase(); - final ArrayList encoders = new ArrayList(); + final ArrayList encoders = new ArrayList(); - for (final Converter encoder : this.encoders) - if (encoder.getSourceFileExtension().equals(sourceFormatLowerCase)) - if (encoder.getTargetFileExtension().equals( - targetFormatLowerCase)) { + for (final AbstractConverter encoder : this.encoders) + if (encoder.supportsSource(sourceFormatLowerCase)) + if (encoder.supportsTarget(targetFormatLowerCase)) { encoders.add(encoder); return encoders; } @@ -71,7 +58,7 @@ public class FormatsRegistry { return encoders; } - public void registerEncoder(final Converter encoder) { + public void registerEncoder(final AbstractConverter encoder) { encoders.add(encoder); }