org.jaudiotagger.tag.id3.framebody
Class FrameBodyPOSS

java.lang.Object
  extended by org.jaudiotagger.tag.id3.AbstractTagItem
      extended by org.jaudiotagger.tag.id3.AbstractTagFrameBody
          extended by org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
              extended by org.jaudiotagger.tag.id3.framebody.FrameBodyPOSS
All Implemented Interfaces:
ID3v23FrameBody, ID3v24FrameBody

public class FrameBodyPOSS
extends AbstractID3v2FrameBody
implements ID3v24FrameBody, ID3v23FrameBody

Position synchronisation frame.

This frame delivers information to the listener of how far into the audio stream he picked up; in effect, it states the time offset of the first frame in the stream. The frame layout is:

<Head for 'Position synchronisation', ID: "POSS">
Time stamp format $xx
Position $xx (xx ...)

Where time stamp format is:

$01 Absolute time, 32 bit sized, using MPEG frames as unit
$02 Absolute time, 32 bit sized, using milliseconds as unit

and position is where in the audio the listener starts to receive, i.e. the beginning of the next frame. If this frame is used in the beginning of a file the value is always 0. There may only be one "POSS" frame in each tag.

For more details, please refer to the ID3 specifications:

Version:
$Id: FrameBodyPOSS.java,v 1.14 2009/11/12 13:25:21 paultaylor Exp $
Author:
: Paul Taylor, : Eric Farng

Field Summary
 
Fields inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
TYPE_BODY
 
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody
objectList
 
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagItem
logger
 
Constructor Summary
FrameBodyPOSS()
          Creates a new FrameBodyPOSS datatype.
FrameBodyPOSS(java.nio.ByteBuffer byteBuffer, int frameSize)
          Creates a new FrameBodyPOSS datatype.
FrameBodyPOSS(byte timeStampFormat, long position)
          Creates a new FrameBodyPOSS datatype.
FrameBodyPOSS(FrameBodyPOSS body)
           
 
Method Summary
 java.lang.String getIdentifier()
          The ID3v2 frame identifier
protected  void setupObjectList()
          Create the list of Datatypes that this body expects in the correct order This method needs to be implemented by concrete subclasses
 
Methods inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
createStructure, equals, getSize, read, setSize, setSize, write
 
Methods inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody
getBriefDescription, getHeader, getLongDescription, getObject, getObjectValue, getTextEncoding, isSubsetOf, iterator, setHeader, setObjectValue, setTextEncoding, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FrameBodyPOSS

public FrameBodyPOSS()
Creates a new FrameBodyPOSS datatype.


FrameBodyPOSS

public FrameBodyPOSS(FrameBodyPOSS body)

FrameBodyPOSS

public FrameBodyPOSS(byte timeStampFormat,
                     long position)
Creates a new FrameBodyPOSS datatype.

Parameters:
timeStampFormat -
position -

FrameBodyPOSS

public FrameBodyPOSS(java.nio.ByteBuffer byteBuffer,
                     int frameSize)
              throws InvalidTagException
Creates a new FrameBodyPOSS datatype.

Parameters:
byteBuffer -
frameSize -
Throws:
InvalidTagException - if unable to create framebody from buffer
Method Detail

getIdentifier

public java.lang.String getIdentifier()
The ID3v2 frame identifier

Specified by:
getIdentifier in class AbstractID3v2FrameBody
Returns:
the ID3v2 frame identifier for this frame type

setupObjectList

protected void setupObjectList()
Description copied from class: AbstractTagFrameBody
Create the list of Datatypes that this body expects in the correct order This method needs to be implemented by concrete subclasses

Specified by:
setupObjectList in class AbstractTagFrameBody