An application that allows repeating the last 10s of audio "heard" by the phone microphone in 2x speed until the present moment. (The present moment being after the moment of activating the repeat playback function as time will pass during playback)
- A single view iOS application with three buttons: "replay", "Record/Play", "Replay previous", and "Settings"
- Continously record audio (rolling buffer of at least 10s) from a Microphone (main microphone, headphone or Bluetooth headset as input).
- At "replay" button press:
Replay (to headphone, or bluetooth headset) the last 10 seconds in 2x speed, including the the recording that has elapsed during replaying:
The replay function needs to play beyond the time of the button press, as 5s of time has passed when listening the previous 10s in 2x speed, and during playback of the 5s since buttopn press even more time (2.5s) has passed: 10s/2 + 5s/2 + 2.5s/2 + 1.25/2s +.. = 10s.
-The replayed recording should preserve the pitch (i.e. not result in "donald duck" sounding playback)
- At "Settings" button press: (prio 2)
- Ability to choose the input and output devices. Key is to be able to choose recording from phone microphone, or BT microphone.
- Ability to set replay length other than 10s
- Ability to set playback speed other than 2x
- At "Record" button press: (prio 3)
- Start storing a stream from the time point of button press in addition to the 30s rolling buffer.
- Change button name to "Play", and pressing it plays until current time as defined for "replay" button, and stores the file in the filesystem.
- Add "stop" button next to "play" button, that cancels the recording operation.
- At "Replay previous" button press: (prio 4)
- Opens a new view with the recorded clips, with click to play the recordings.
- The result should be a documented xcode project (in SWIFT) that can be copmpiled with the current Xcode, and deployed to an iPhone 8.
- More additional feature requests likely to follow a completed project.