package org.jcodec.common; import java.nio.ByteBuffer; /** * This class is part of JCodec ( www.jcodec.org ) This software is distributed * under FreeBSD License * * Meta information about this media track. * * @author The JCodec project * */ public class DemuxerTrackMeta { private TrackType type; private Codec codec; private double totalDuration; private int[] seekFrames; private int totalFrames; private ByteBuffer codecPrivate; private VideoCodecMeta videoCodecMeta; private AudioCodecMeta audioCodecMeta; private int index; public DemuxerTrackMeta(TrackType type, Codec codec, double totalDuration, int[] seekFrames, int totalFrames, ByteBuffer codecPrivate, VideoCodecMeta videoCodecMeta, AudioCodecMeta audioCodecMeta) { this.type = type; this.codec = codec; this.totalDuration = totalDuration; this.seekFrames = seekFrames; this.totalFrames = totalFrames; this.codecPrivate = codecPrivate; this.videoCodecMeta = videoCodecMeta; this.audioCodecMeta = audioCodecMeta; } public TrackType getType() { return type; } public Codec getCodec() { return codec; } /** * @return Total duration in seconds of the media track */ public double getTotalDuration() { return totalDuration; } /** * @return Array of frame indexes that can be used to seek to, i.e. which * don't require any previous frames to be decoded. Is null when * every frame is a seek frame. */ public int[] getSeekFrames() { return seekFrames; } /** * @return Total number of frames in this media track. */ public int getTotalFrames() { return totalFrames; } public int getIndex() { return index; } public ByteBuffer getCodecPrivate() { return codecPrivate; } public VideoCodecMeta getVideoCodecMeta() { return videoCodecMeta; } public AudioCodecMeta getAudioCodecMeta() { return audioCodecMeta; } }