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.


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

Field Detail

data

private byte[] data
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