| 1 | package org.farng.mp3.id3; |
| 2 | |
| 3 | /** |
| 4 | * <h3>4.13.Equalisation</h3> |
| 5 | * <p/> |
| 6 | * <p class=t> This is another subjective, alignment frame. It allows the user to predefine an equalisation curve within |
| 7 | * the audio file. There may only be one "EQUA" frame in each tag. </p> |
| 8 | * <p/> |
| 9 | * <p><center> <table border=0> |
| 10 | * <p/> |
| 11 | * <tr><td colspan=2><Header of 'Equalisation', ID: "EQUA"></td></tr> <tr><td>Adjustment |
| 12 | * bits</td><td>$xx</td></tr> </table> </center> |
| 13 | * <p/> |
| 14 | * <p class=t> The 'adjustment bits' field defines the number of bits used for representation of the adjustment. This is |
| 15 | * normally $10 (16 bits) for <a href="#MPEG">MPEG</a> 2 layer I, II and III and MPEG 2.5. This value may not be $00. |
| 16 | * <p/> |
| 17 | * </p> |
| 18 | * <p/> |
| 19 | * <p class=t> This is followed by 2 bytes + ('adjustment bits' rounded up to the nearest byte) for every equalisation |
| 20 | * band in the following format, giving a frequency range of 0 - 32767Hz: </p> |
| 21 | * <p/> |
| 22 | * <p><center> <table border=0> <tr><td>Increment/decrement</td><td>%x (MSB of the Frequency)</td></tr> |
| 23 | * <tr><td>Frequency </td><td>(lower 15 bits)</td></tr> |
| 24 | * <p/> |
| 25 | * <tr><td>Adjustment</td><td>$xx (xx ...)</td></tr> </Table> </center> |
| 26 | * <p/> |
| 27 | * <p class=t> The increment/decrement bit is 1 for increment and 0 for decrement. The equalisation bands should be |
| 28 | * ordered increasingly with reference to frequency. All frequencies don't have to be declared. The equalisation curve |
| 29 | * in the reading software should be interpolated between the values in this frame. Three equal adjustments for three |
| 30 | * subsequent frequencies. A frequency should only be described once in the frame. </p> |
| 31 | * |
| 32 | * @author Eric Farng |
| 33 | * @version $Revision: 1.3 $ |
| 34 | */ |
| 35 | public class FrameBodyEQUA extends AbstractID3v2FrameBody { |
| 36 | |
| 37 | /** |
| 38 | * Creates a new FrameBodyEQUA object. |
| 39 | */ |
| 40 | public FrameBodyEQUA() { |
| 41 | super(); |
| 42 | } |
| 43 | |
| 44 | /** |
| 45 | * Creates a new FrameBodyEQUA object. |
| 46 | */ |
| 47 | public FrameBodyEQUA(final FrameBodyEQUA body) { |
| 48 | super(body); |
| 49 | } |
| 50 | |
| 51 | protected void setupObjectList() { |
| 52 | throw new UnsupportedOperationException("This frame has not been implemented."); |
| 53 | } |
| 54 | |
| 55 | public String getIdentifier() { |
| 56 | throw new UnsupportedOperationException("This frame has not been implemented."); |
| 57 | } |
| 58 | } |