Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright 2002 Sun Microsystems, Inc.; Nokia Corporation. See the Copyright Notice and Specification License for more details.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.microedition.media.control
Interface RateControl

All Superinterfaces:
  Control

All Known Subinterfaces:
  TempoControl

public interface RateControl
extends Control

`RateControl` controls the playback rate of a `Player`.

The rate defines the relationship between the `Player's` media time and its `TimeBase`. Rates are specified in "milli- percentage".

For example, a rate of 200'000 indicates that media time will pass twice as fast as the `TimeBase` time once the `Player` starts. Similarly, a negative rate indicates that the `Player` runs in the opposite direction of its `TimeBase`, i.e. playing in reverse.

All `Player` must support the default rate 100'000. `Player`s that support only the default rate must not implement this interface. `Player`s that support other rates besides 100'000, should implement this interface and specify the appropriate minimum and maximum playback rates.

For audio, specific implementations may change the playback pitch when changing the playback rate. This may be viewed as an undesirable side-effect. See `PitchControl` for changing pitch without changing playback rate.

See Also:
  `Player`, `TempoControl`, `PitchControl`

Method Summary
`int` | `getMaxRate()` Gets the maximum playback rate supported by the `Player`.
`int` | `getMinRate()` Gets the minimum playback rate supported by the `Player`.
`int` | `getRate()` Gets the current playback rate.
`int` | `setRate(int millirate)` Sets the playback rate.

Method Detail

### setRate

    public int setRate(int millirate)

  Sets the playback rate. The specified rate is 1000 times the percentage of the actual rate. For example, to play back at twice the speed, specify a rate of 200'000.

  The `setRate` method returns the actual rate set by the `Player`. `Player` should set their rate as close to the requested value as possible, but are not required to set the rate to the exact value of any argument other than 100'000. A `Player` is only guaranteed to set its rate exactly to 100'000. If the given rate is less than `getMinRate` or greater than `getMaxRate`, the rate will be adjusted to the minimum or maximum supported rate respectively.

  If the `Player` is already started, `setRate` will immediately take effect.

  Parameters:
    `millirate` - The playback rate to set. The rate is given in a "milli-percentage" value.
  Returns:
    The actual rate set in "milli-percentage".
  See Also:
    `getRate()`

### getRate

    public int getRate()

  Gets the current playback rate.
  Returns:
    the current playback rate in "milli-percentage".
  See Also:
    `setRate(int)`

### getMaxRate

    public int getMaxRate()

  Gets the maximum playback rate supported by the `Player`.
  Returns:
    the maximum rate in "milli-percentage".

### getMinRate

    public int getMinRate()

  Gets the minimum playback rate supported by the `Player`.
  Returns:
    the minimum rate in "milli-percentage".

Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright 2002 Sun Microsystems, Inc.; Nokia Corporation. See the Copyright Notice and Specification License for more details.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD