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 021 022public interface VideoProfile { 023 024 public static final String TYPE_4XM ="4xm"; 025 public static final String TYPE_8BPS ="8bps"; 026 public static final String TYPE_AAC ="aac"; 027 public static final String TYPE_AASC ="aasc"; 028 public static final String TYPE_AC3 ="ac3"; 029 public static final String TYPE_ADPCM_4XM ="adpcm_4xm"; 030 public static final String TYPE_ADPCM_ADX ="adpcm_adx"; 031 public static final String TYPE_ADPCM_CT ="adpcm_ct"; 032 public static final String TYPE_ADPCM_EA ="adpcm_ea"; 033 public static final String TYPE_ADPCM_IMA_DK3 ="adpcm_ima_dk3"; 034 public static final String TYPE_ADPCM_IMA_DK4 ="adpcm_ima_dk4"; 035 public static final String TYPE_ADPCM_IMA_QT ="adpcm_ima_qt"; 036 public static final String TYPE_ADPCM_IMA_SMJPEG ="adpcm_ima_smjpeg"; 037 public static final String TYPE_ADPCM_IMA_WAV ="adpcm_ima_wav"; 038 public static final String TYPE_ADPCM_IMA_WS ="adpcm_ima_ws"; 039 public static final String TYPE_ADPCM_MS ="adpcm_ms"; 040 public static final String TYPE_ADPCM_SBPRO_2 ="adpcm_sbpro_2"; 041 public static final String TYPE_ADPCM_SBPRO_3 ="adpcm_sbpro_3"; 042 public static final String TYPE_ADPCM_SBPRO_4 ="adpcm_sbpro_4"; 043 public static final String TYPE_ADPCM_SWF ="adpcm_swf"; 044 public static final String TYPE_ADPCM_XA ="adpcm_xa"; 045 public static final String TYPE_ADPCM_YAMAHA ="adpcm_yamaha"; 046 public static final String TYPE_ALAC ="alac"; 047 public static final String TYPE_AMR_NB ="amr_nb"; 048 public static final String TYPE_AMR_WB ="amr_wb"; 049 public static final String TYPE_ASV1 ="asv1"; 050 public static final String TYPE_ASV2 ="asv2"; 051 public static final String TYPE_AVS ="avs"; 052 public static final String TYPE_BMP ="bmp"; 053 public static final String TYPE_CAMSTUDIO ="camstudio"; 054 public static final String TYPE_CAMTASIA ="camtasia"; 055 public static final String TYPE_CINEPAK ="cinepak"; 056 public static final String TYPE_CLJR ="cljr"; 057 public static final String TYPE_COOK ="cook"; 058 public static final String TYPE_CYUV ="cyuv"; 059 public static final String TYPE_DVBSUB ="dvbsub"; 060 public static final String TYPE_DVDSUB ="dvdsub"; 061 public static final String TYPE_DVVIDEO ="dvvideo"; 062 public static final String TYPE_FFV1 ="ffv1"; 063 public static final String TYPE_FFVHUFF ="ffvhuff"; 064 public static final String TYPE_FLAC ="flac"; 065 public static final String TYPE_FLIC ="flic"; 066 public static final String TYPE_FLV ="flv"; 067 public static final String TYPE_FRAPS ="fraps"; 068 public static final String TYPE_G726 ="g726"; 069 public static final String TYPE_H261 ="h261"; 070 public static final String TYPE_H263 ="h263"; 071 public static final String TYPE_H263I ="h263i"; 072 public static final String TYPE_H263P ="h263p"; 073 public static final String TYPE_H264 ="h264"; 074 public static final String TYPE_HUFFYUV ="huffyuv"; 075 public static final String TYPE_IDCINVIDEO ="idcinvideo"; 076 public static final String TYPE_INDEO2 ="indeo2"; 077 public static final String TYPE_INDEO3 ="indeo3"; 078 public static final String TYPE_INTERPLAY_DPCM ="interplay_dpcm"; 079 public static final String TYPE_INTERPLAYVIDEO ="interplayvideo"; 080 public static final String TYPE_JPEGLS ="jpegls"; 081 public static final String TYPE_KMVC ="kmvc"; 082 public static final String TYPE_LJPEG ="ljpeg"; 083 public static final String TYPE_LOCO ="loco"; 084 public static final String TYPE_MACE3 ="mace3"; 085 public static final String TYPE_MACE6 ="mace6"; 086 public static final String TYPE_MDEC ="mdec"; 087 public static final String TYPE_MJPEG ="mjpeg"; 088 public static final String TYPE_MJPEGB ="mjpegb"; 089 public static final String TYPE_MMVIDEO ="mmvideo"; 090 public static final String TYPE_MP2 ="mp2"; 091 public static final String TYPE_MP3 ="mp3"; 092 public static final String TYPE_MP3ADU ="mp3adu"; 093 public static final String TYPE_MP3ON4 ="mp3on4"; 094 public static final String TYPE_MPEG1VIDEO ="mpeg1video"; 095 public static final String TYPE_MPEG2VIDEO ="mpeg2video"; 096 public static final String TYPE_MPEG4 ="mpeg4"; 097 public static final String TYPE_MPEG4AAC ="mpeg4aac"; 098 public static final String TYPE_MPEGVIDEO ="mpegvideo"; 099 public static final String TYPE_MSMPEG4 ="msmpeg4"; 100 public static final String TYPE_MSMPEG4V1 ="msmpeg4v1"; 101 public static final String TYPE_MSMPEG4V2 ="msmpeg4v2"; 102 public static final String TYPE_MSRLE ="msrle"; 103 public static final String TYPE_MSVIDEO1 ="msvideo1"; 104 public static final String TYPE_MSZH ="mszh"; 105 public static final String TYPE_NUV ="nuv"; 106 public static final String TYPE_PAM ="pam"; 107 public static final String TYPE_PBM ="pbm"; 108 public static final String TYPE_PCM_ALAW ="pcm_alaw"; 109 public static final String TYPE_PCM_MULAW ="pcm_mulaw"; 110 public static final String TYPE_PCM_S16BE ="pcm_s16be"; 111 public static final String TYPE_PCM_S16LE ="pcm_s16le"; 112 public static final String TYPE_PCM_S24BE ="pcm_s24be"; 113 public static final String TYPE_PCM_S24DAUD ="pcm_s24daud"; 114 public static final String TYPE_PCM_S24LE ="pcm_s24le"; 115 public static final String TYPE_PCM_S32BE ="pcm_s32be"; 116 public static final String TYPE_PCM_S32LE ="pcm_s32le"; 117 public static final String TYPE_PCM_S8 ="pcm_s8"; 118 public static final String TYPE_PCM_U16BE ="pcm_u16be"; 119 public static final String TYPE_PCM_U16LE ="pcm_u16le"; 120 public static final String TYPE_PCM_U24BE ="pcm_u24be"; 121 public static final String TYPE_PCM_U24LE ="pcm_u24le"; 122 public static final String TYPE_PCM_U32BE ="pcm_u32be"; 123 public static final String TYPE_PCM_U32LE ="pcm_u32le"; 124 public static final String TYPE_PCM_U8 ="pcm_u8"; 125 public static final String TYPE_PGM ="pgm"; 126 public static final String TYPE_PGMYUV ="pgmyuv"; 127 public static final String TYPE_PNG ="png"; 128 public static final String TYPE_PPM ="ppm"; 129 public static final String TYPE_QDM2 ="qdm2"; 130 public static final String TYPE_QDRAW ="qdraw"; 131 public static final String TYPE_QPEG ="qpeg"; 132 public static final String TYPE_QTRLE ="qtrle"; 133 public static final String TYPE_RAWVIDEO ="rawvideo"; 134 public static final String TYPE_REAL_144 ="real_144"; 135 public static final String TYPE_REAL_288 ="real_288"; 136 public static final String TYPE_ROQ_DPCM ="roq_dpcm"; 137 public static final String TYPE_ROQVIDEO ="roqvideo"; 138 public static final String TYPE_RPZA ="rpza"; 139 public static final String TYPE_RV10 ="rv10"; 140 public static final String TYPE_RV20 ="rv20"; 141 public static final String TYPE_SHORTEN ="shorten"; 142 public static final String TYPE_SMACKAUD ="smackaud"; 143 public static final String TYPE_SMACKVID ="smackvid"; 144 public static final String TYPE_SMC ="smc"; 145 public static final String TYPE_SNOW ="snow"; 146 public static final String TYPE_SOL_DPCM ="sol_dpcm"; 147 public static final String TYPE_SONIC ="sonic"; 148 public static final String TYPE_SONICLS ="sonicls"; 149 public static final String TYPE_SP5X ="sp5x"; 150 public static final String TYPE_SVQ1 ="svq1"; 151 public static final String TYPE_SVQ3 ="svq3"; 152 public static final String TYPE_THEORA ="theora"; 153 public static final String TYPE_TRUEMOTION1 ="truemotion1"; 154 public static final String TYPE_TRUEMOTION2 ="truemotion2"; 155 public static final String TYPE_TRUESPEECH ="truespeech"; 156 public static final String TYPE_TTA ="tta"; 157 public static final String TYPE_ULTIMOTION ="ultimotion"; 158 public static final String TYPE_VC9 ="vc9"; 159 public static final String TYPE_VCR1 ="vcr1"; 160 public static final String TYPE_VMDAUDIO ="vmdaudio"; 161 public static final String TYPE_VMDVIDEO ="vmdvideo"; 162 public static final String TYPE_VORBIS ="vorbis"; 163 public static final String TYPE_VP3 ="vp3"; 164 public static final String TYPE_VQAVIDEO ="vqavideo"; 165 public static final String TYPE_WMAV1 ="wmav1"; 166 public static final String TYPE_WMAV2 ="wmav2"; 167 public static final String TYPE_WMV1 ="wmv1"; 168 public static final String TYPE_WMV2 ="wmv2"; 169 public static final String TYPE_WNV1 ="wnv1"; 170 public static final String TYPE_WS_SND1 ="ws_snd1"; 171 public static final String TYPE_XAN_DPCM ="xan_dpcm"; 172 public static final String TYPE_XAN_WC3 ="xan_wc3"; 173 public static final String TYPE_XL ="xl"; 174 public static final String TYPE_XVID ="xvid"; 175 public static final String TYPE_ZLIB ="zlib"; 176 public static final String TYPE_ZMBV ="zmbv"; 177 178 public static final int ASPECT_RATIO_16_9 =1; 179 public static final int ASPECT_RATIO_4_3 =2; 180 public static final int ASPECT_RATIO_1_33333 =ASPECT_RATIO_4_3; 181 public static final int ASPECT_RATIO_1_77777 =ASPECT_RATIO_16_9; 182 183 public static final int SCAN_MODE_INTERLACED =1; 184 public static final int SCAN_MODE_PROGRESSIV =2; 185 186 187 public VideoProfile duplicate(); 188 189 190 /** 191 * set the type of the output format (see constants "TYPE_xxx" of this class) 192 * @param type 193 */ 194 public void setType(String type); 195 196 /** 197 * @return the type 198 */ 199 public String getType(); 200 201 /** 202 * @return the dimension 203 */ 204 public String getDimension(); 205 206 public void setDimension(int width, int height); 207 208 /** 209 * @return the bitrate 210 */ 211 public double getVideoBitrate(); 212 213 /** 214 * set video bitrate in kbit/s (default 200) 215 * @param bitrate the bitrate to set 216 */ 217 public void setVideoBitrate(long bitrate); 218 219 /** 220 * @return the framerate 221 */ 222 public double getFramerate() ; 223 224 /** 225 * sets the framerate (default 25) 226 * @param framerate the framerate to set 227 */ 228 public void setFramerate(double framerate); 229 230 /** 231 * @return the aspectRatio 232 */ 233 public int getAspectRatio() ; 234 235 /** 236 * sets the aspectRatio (VideoOutput.ASPECT_RATIO_xxx) 237 * @param aspectRatio the aspectRatio to set 238 */ 239 public void setAspectRatio(int aspectRatio); 240 241 242 public void setAspectRatio(String strAspectRatio); 243 /** 244 * @return the bitrateMin 245 */ 246 public double getVideoBitrateMin() ; 247 248 /** 249 * set min video bitrate tolerance (in kbit/s) 250 * @param bitrateMin the bitrateMin to set 251 */ 252 public void setVideoBitrateMin(long bitrateMin); 253 254 /** 255 * @return the bitrateMax 256 */ 257 public double getVideoBitrateMax() ; 258 259 /** 260 * set max video bitrate tolerance (in kbit/s) 261 * @param bitrateMax the bitrateMax to set 262 */ 263 public void setVideoBitrateMax(long bitrateMax) ; 264 265 /** 266 * @return the bitrateTolerance 267 */ 268 public double getVideoBitrateTolerance(); 269 270 /** 271 * set video bitrate tolerance (in kbit/s) 272 * @param bitrateTolerance the bitrateTolerance to set 273 */ 274 public void setVideoBitrateTolerance(long bitrateTolerance); 275 276 /** 277 * @return the audioBitrate 278 */ 279 public double getAudioBitrate(); 280 281 /** 282 * @return the scanMode 283 */ 284 public int getScanMode(); 285 286 /** 287 * @param scanMode the scanMode to set 288 */ 289 public void setScanMode(int scanMode); 290 291 /** 292 * @param audioBitrate the audioBitrate to set 293 */ 294 public void setAudioBitrate(long audioBitrate); 295 296 public void setAudioCodec(String codec); 297 298 public void setVideoCodec(String codec) ; 299 300 /** 301 * @return the videoCodec 302 */ 303 public String getVideoCodec(); 304 /** 305 * @return the audioCodec 306 */ 307 public String getAudioCodec(); 308 309 /** 310 * @return the audioSamplerate 311 */ 312 public double getAudioSamplerate(); 313 314 /** 315 * @param audioSamplerate the audioSamplerate to set 316 */ 317 public void setAudioSamplerate(double audioSamplerate); 318 319 /** 320 * @return the bufferSize 321 */ 322 public long getBufferSize(); 323 324 /** 325 * @param bufferSize the bufferSize to set 326 */ 327 public void setBufferSize(long bufferSize); 328 329 /** 330 * @return the pass 331 */ 332 public int getPass(); 333 334 /** 335 * @param pass the pass to set 336 */ 337 public void setPass(int pass); 338}