package net.pms.external; import net.pms.dlna.DLNAMediaInfo; import net.pms.dlna.DLNAResource; import net.pms.encoders.Player; import net.pms.io.OutputParams; import java.util.List; /** * Classes implementing this interface and packaged as pms plugins will have the * possibility to modify transcoding arguments when a resource is being * transcoded */ public interface FinalizeTranscoderArgsListener extends ExternalListener { /** * Called before the transcoding of a resource starts to determine the list * of commands to be used * * @param player * the player being used * @param filename * the name of the file being transcoded * @param dlna * the DLNAResource being transcoded * @param media * the DLNAMediaInfo for the file being transcoded * @param params * the used OutputParams * @param cmdList * the list of commands * @return the exhaustive list of all commands. It will replace the ones * received as cmdList */ public List<String> finalizeTranscoderArgs(Player player, String filename, DLNAResource dlna, DLNAMediaInfo media, OutputParams params, List<String> cmdList); }