org.jaudiotagger.audio.flac.metadatablock
Class MetadataBlockDataSeekTable

java.lang.Object
  extended by org.jaudiotagger.audio.flac.metadatablock.MetadataBlockDataSeekTable
All Implemented Interfaces:
MetadataBlockData

public class MetadataBlockDataSeekTable
extends java.lang.Object
implements MetadataBlockData

SeekTable Block

This is an optional block for storing seek points. It is possible to seek to any given sample in a FLAC stream without a seek table, but the delay can be unpredictable since the bitrate may vary widely within a stream. By adding seek points to a stream, this delay can be significantly reduced. Each seek point takes 18 bytes, so 1% resolution within a stream adds less than 2k. There can be only one SEEKTABLE in a stream, but the table can have any number of seek points. There is also a special 'placeholder' seekpoint which will be ignored by decoders but which can be used to reserve space for future seek point insertion.


Constructor Summary
MetadataBlockDataSeekTable(MetadataBlockHeader header, java.io.RandomAccessFile raf)
           
 
Method Summary
 byte[] getBytes()
           
 int getLength()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MetadataBlockDataSeekTable

public MetadataBlockDataSeekTable(MetadataBlockHeader header,
                                  java.io.RandomAccessFile raf)
                           throws java.io.IOException
Throws:
java.io.IOException
Method Detail

getBytes

public byte[] getBytes()
Specified by:
getBytes in interface MetadataBlockData
Returns:
the rawdata as it will be written to file

getLength

public int getLength()
Specified by:
getLength in interface MetadataBlockData
Returns:
the length in bytes that the data uses when written to file