VotreWaken/CelestialRTP

Recorder That is responsible on Wave Recording

VotreWaken opened this issue · 0 comments

Implement Recorder That is responsible on Wave Recording, might be responsible for creating WaveIn Headers, their allocation, initialization, and releasing WaveIn headers, creating a stream for recording, opening WaveIn, defining the format, WaveIn device.
Initializing and opening OpenWaveIn and its starting, stopping and closing

Responsible for creating and behaving a stream for WaveIn devices, creating a playback buffer and copying and playing data from this buffer and monitors changes in WaveIn Devices.

Methods that Recorder might contain:

  1. CreateWaveInHeaders
    Recorder in the CreateWaveInHeaders method uses the Win32 class for memory allocation and
    initializing the buffer, adding WaveIn Headers that will be passed for recording

  2. FreeWaveInHeaders
    Frees allocated memory from WaveIn using the Win32 class

  3. StartThreadRecording
    Starts a stream in which WaveIn will be played

  4. OpenWaveIn
    Opens WaveIn, specifying the format, WaveIn device

  5. Start
    creating a stream for recording, opening WaveIn, defining the format, WaveIn device.

  6. Stop
    Ends playback of a recording by closing and deleting the allocated memory

  7. CloseWaveIn
    Closes WaveIn devices by deleting allocated memory

  8. IsAnyWaveInHeaderInState
    Checks state flags to determine the state of WaveIn headers

  9. OnThreadRecording
    Responsible for behavior when a thread is running using StartThreadPlayWaveIn, monitors
    until the recording is completed, for the allocation of the playback buffer, copying and writing data
    to buffer