/* * @(#)VideoFormatKeys.java * * Copyright (c) 2011 Werner Randelshofer, Goldau, Switzerland. * All rights reserved. * * You may not use, copy or modify this file, except in compliance with the * license agreement you entered into with Werner Randelshofer. * For details see accompanying license terms. */ package org.monte.media; import org.monte.media.math.Rational; /** * Defines common format keys for video media. * * @author Werner Randelshofer * @version $Id: VideoFormatKeys.java 299 2013-01-03 07:40:18Z werner $ */ public class VideoFormatKeys extends FormatKeys { // Standard video ENCODING strings for use with FormatKey.Encoding. public static final String ENCODING_BUFFERED_IMAGE = "image"; /** Cinepak format. */ public static final String ENCODING_QUICKTIME_CINEPAK = "cvid"; public static final String COMPRESSOR_NAME_QUICKTIME_CINEPAK = "Cinepak"; /** JPEG format. */ public static final String ENCODING_QUICKTIME_JPEG = "jpeg"; public static final String COMPRESSOR_NAME_QUICKTIME_JPEG = "Photo - JPEG"; /** PNG format. */ public static final String ENCODING_QUICKTIME_PNG = "png "; public static final String COMPRESSOR_NAME_QUICKTIME_PNG = "PNG"; /** Animation format. */ public static final String ENCODING_QUICKTIME_ANIMATION = "rle "; public static final String COMPRESSOR_NAME_QUICKTIME_ANIMATION = "Animation"; /** Raw format. */ public static final String ENCODING_QUICKTIME_RAW = "raw "; public static final String COMPRESSOR_NAME_QUICKTIME_RAW = "NONE"; // AVI Formats /** Microsoft Device Independent Bitmap (DIB) format. */ public static final String ENCODING_AVI_DIB = "DIB "; /** Microsoft Run Length format. */ public static final String ENCODING_AVI_RLE = "RLE "; /** Techsmith Screen Capture format. */ public static final String ENCODING_AVI_TECHSMITH_SCREEN_CAPTURE = "tscc"; public static final String COMPRESSOR_NAME_AVI_TECHSMITH_SCREEN_CAPTURE = "Techsmith Screen Capture"; /** DosBox Screen Capture format. */ public static final String ENCODING_AVI_DOSBOX_SCREEN_CAPTURE = "ZMBV"; /** JPEG format. */ public static final String ENCODING_AVI_MJPG = "MJPG"; /** PNG format. */ public static final String ENCODING_AVI_PNG = "png "; /** Interleaved planar bitmap format. */ public static final String ENCODING_BITMAP_IMAGE = "ILBM"; // /** The WidthKey of a video frame. */ public final static FormatKey<Integer> WidthKey = new FormatKey<Integer>("dimX","width", Integer.class); /** The HeightKey of a video frame. */ public final static FormatKey<Integer> HeightKey = new FormatKey<Integer>("dimY","height", Integer.class); /** The number of bits per pixel. */ public final static FormatKey<Integer> DepthKey = new FormatKey<Integer>("dimZ","depth", Integer.class); /** The data class. */ public final static FormatKey<Class> DataClassKey = new FormatKey<Class>("dataClass", Class.class); /** The compressor name. */ public final static FormatKey<String> CompressorNameKey = new FormatKey<String>("compressorName", "compressorName",String.class, true); /** The pixel aspect ratio WidthKey : HeightKey; */ public final static FormatKey<Rational> PixelAspectRatioKey = new FormatKey<Rational>("pixelAspectRatio", Rational.class); /** Whether the frame rate must be fixed. False means variable frame rate. */ public final static FormatKey<Boolean> FixedFrameRateKey = new FormatKey<Boolean>("fixedFrameRate", Boolean.class); /** Whether the video is interlaced. */ public final static FormatKey<Boolean> InterlaceKey = new FormatKey<Boolean>("interlace", Boolean.class); /** Encoding quality. Value between 0 and 1. */ public final static FormatKey<Float> QualityKey = new FormatKey<Float>("quality", Float.class); }