001    package railo.runtime.functions.video;
002    
003    
004    import railo.commons.lang.StringUtil;
005    import railo.runtime.PageContext;
006    import railo.runtime.config.ConfigWeb;
007    import railo.runtime.exp.PageException;
008    import railo.runtime.op.Caster;
009    import railo.runtime.video.VideoExecuter;
010    import railo.runtime.video.VideoInputImpl;
011    import railo.runtime.video.VideoUtilImpl;
012    
013    public class IsVideoFile {
014    
015            public static boolean call(PageContext pc, String path) throws PageException {
016                    try {
017                            ConfigWeb config = pc.getConfig();
018                            VideoExecuter ve = VideoUtilImpl.createVideoExecuter(config);
019                            ve.info(config,new VideoInputImpl(Caster.toResource(path, true)));
020                    } 
021                    catch (Exception e) {
022                            
023                            if(StringUtil.contains(e.getMessage(),"missing ffmpeg installation"))
024                                    throw Caster.toPageException(e);
025                            return false;
026                    }
027                    return true;
028            }
029    }