Closed

Measure Audio Latency on Android app and delay audio Playing

This is a toy project to see how one aspect of the technology really works.

There is some code to don on a PC and some code for an Android App. (Gingerbread version if possible).

In details: -- On the PC:

1. There is on the PC an audio file played with the same speed as the media-player, but transmitted via a specific UDP port.

The audio is being requested from an App. The data provided are in the RTP protocol.

2. There is the same audio played on a PC and outputted on the loudspeaker using a standard media player, but delayed by

a by few hundred milliseconds (say 100-3000msec)

There is a very simple android app (no fancy design necessary) with 2 interfaces

3. Audio Latency Measurement: An App is listening to audio from loud-speaker via the Apps microphone.

a. At the same time, the App is requesting the audio data (via RTP) from the PC (UDP) port.

. Note: The IP address of the PC has to be inserted manually into the App, but then saved for the next use.

One button should be there to delete a previous IP address

b. Once the data on the PC are requested by the App, the Media player is starting on the PC with a delayed of 100-3000 msec

to play the same audio file on the loudspeaker. (There is some easy way to set the delay-time outside the code – you can

suggest how/where)

c. Using cross correlation, the audio latency between the audio from the loudspeaker and the audio from the RTP audio stream

is measured (in milliseconds).

More information on this algorithm can be found in [url removed, login to view] ,

[url removed, login to view]

and using FFT: [url removed, login to view]

d. Once audio latency is determined, the Interface switches to the Audio Player interface.

4. Audio Player Interface: The Audio Player in the App is delaying the output of the audio-stream by the measured latency amount

and is then playing the RTP audio stream using a standard audio player in the App. (the audio from the loudspeaker and the

app should be in sync).

Skills: Android, C Programming, Software Architecture

See more: android audio latency, wiki android, speed and sound app, project calc, playing time app, play android apps on pc, on android, next version of android, next android version, media player for android, https code org, how to design algorithm, how to delete apps on android, how to delete android apps, how algorithm works, greycat software, delete apps android, delete android apps, code org 6 d, architecture design app, android wikipedia, android wiki, android version 4.1.2, android toy, android to pc

About the Employer:
( 52 reviews ) Henderson, United States

Project ID: #5178135