/* * RED5 Open Source Flash Server - http://code.google.com/p/red5/ * * Copyright 2006-2012 by respective authors (see below). All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.red5.io.flv.meta; /** * FLV MetaData interface * * @author The Red5 Project (red5@osflash.org) * @author Dominick Accattato (daccattato@gmail.com) * * Sample Data: * private boolean canSeekToEnd = true; * private int videocodecid = 4; * private int framerate = 15; * private int videodatarate = 400; * private int height = 215; * private int width = 320; * private int duration = 7.347; * @param <K> key type * @param <V> value type */ public interface IMetaData<K, V> extends IMeta { /** * Returns a boolean depending on whether the video can * seek to end * @return <code>true</code> if file is seekable to the end, <code>false</code> otherwise */ public boolean getCanSeekToEnd(); /** * Sets whether a video can seek to end * @param b <code>true</code> if file is seekable to the end, <code>false</code> otherwise */ public void setCanSeekToEnd(boolean b); /** * Returns the video codec id * @return Video codec id */ public int getVideoCodecId(); /** * Sets the video codec id * @param id Video codec id */ public void setVideoCodecId(int id); public int getAudioCodecId(); public void setAudioCodecId(int id); /** * Returns the framerate. * @return FLV framerate in frames per second */ public double getFrameRate(); /** * Sets the framerate. * @param rate FLV framerate in frames per second */ public void setFrameRate(double rate); /** * Returns the videodatarate * @return Video data rate */ public int getVideoDataRate(); /** * Sets the videodatarate * @param rate Video data rate */ public void setVideoDataRate(int rate); /** * Returns the height * @return height Video height */ public int getHeight(); /** * Sets the height * @param h Video height */ public void setHeight(int h); /** * Returns the width Video width * @return width */ public int getWidth(); /** * Sets the width * @param w Video width */ public void setWidth(int w); /** * Returns the duration. * @return duration Video duration in seconds */ public double getDuration(); /** * Sets the duration. * @param d Video duration in seconds */ public void setDuration(double d); /** * Sets the cue points * @param metaCue Cue points */ public void setMetaCue(IMetaCue[] metaCue); /** * Gets the cue points * @return Cue points */ public IMetaCue[] getMetaCue(); }