001/**
002 *
003 * Copyright (c) 2014, the Railo Company Ltd. All rights reserved.
004 *
005 * This library is free software; you can redistribute it and/or
006 * modify it under the terms of the GNU Lesser General Public
007 * License as published by the Free Software Foundation; either 
008 * version 2.1 of the License, or (at your option) any later version.
009 * 
010 * This library is distributed in the hope that it will be useful,
011 * but WITHOUT ANY WARRANTY; without even the implied warranty of
012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
013 * Lesser General Public License for more details.
014 * 
015 * You should have received a copy of the GNU Lesser General Public 
016 * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
017 * 
018 **/
019package lucee.runtime.video;
020
021import lucee.runtime.type.Struct;
022
023public interface VideoInfo {
024        
025        public long getAudioBitrate();
026        /**
027         * @return the audioChannels
028         */
029        public String getAudioChannels();
030
031        /**
032         * @return the audioCodec
033         */
034        public String getAudioCodec();
035
036        /**
037         * @return the audioSampleRate
038         */
039        public long getAudioSamplerate();
040
041        /**
042         * @return the duration
043         */
044        public long getDuration();
045        
046        /**
047         * @return the bitrate
048         */
049        public long getVideoBitrate();
050
051        /**
052         * @return the framerate
053         */
054        public double getFramerate();
055
056        /**
057         * @return the videoCodec
058         */
059        public String getVideoCodec();
060        
061        /**
062         * @return the videoFormat
063         */
064        public String getVideoFormat();
065
066        /**
067         * @return the height
068         */
069        public int getHeight();
070
071        /**
072         * @return the width
073         */
074        public int getWidth();
075        
076        /**
077         * returns the information as Struct
078         * @return
079         */
080        public Struct toStruct();
081}