An information processing apparatus having a device which processes data at
a rate exactly adjusted relative to the rate of a data supplying device
without requiring a common clock signal. A writing unit writes data into a
buffer memory. When a first half of the buffer memory has become filled
with data, a starter makes a reading unit start reading data from the
buffer memory. A writing time measurement unit and a reading time
measurement unit respectively measure the writing time required to write
data in the buffer memory and the reading time required to read data from
the buffer memory starting from the first storage location to the exact
middle storage location of the buffer memory. A controller controls the
rate at which data is read from the buffer memory based on the
relationship between the writing time and the reading time.