HulaLoop
Simple cross-platform audio loopback and recording.
Record.h
1 #ifndef HL_RECORD_H
2 #define HL_RECORD_H
3 
4 #include <thread>
5 
6 #include <hlaudio/hlaudio.h>
7 
8 namespace hula
9 {
13  class Record {
14 
15  private:
16  Controller *controller;
17  HulaRingBuffer *rb;
18 
19  std::thread recordThread;
20 
21  std::atomic<bool> endRecord;
22 
23  std::vector<std::string> exportPaths;
24 
25  public:
26  Record(Controller *control);
27  ~Record();
28 
29  void recorder();
30 
31  std::vector<std::string> getExportPaths();
32  void clearExportPaths();
33 
34  void start();
35  void stop();
36  };
37 }
38 
39 #endif // END HL_RECORD_H
<hlaudio/hlaudio.h>
void start()
Starts the capture of audio data by adding ringbuffer to Controller and reading from ringbuffer...
Definition: Record.cpp:34
Record(Controller *control)
Construct a new Record to capture audio data and store in temp file.
Definition: Record.cpp:16
HulaLoop wrapper class for PortAudio ring buffer.
Definition: HulaRingBuffer.h:86
Class for Recording audio and abstracting OS specific stuff.
Definition: Record.h:13
Wrapper around translation functions for Qt.
Definition: Controller.h:10
~Record()
Delete instance of the ringbuffer used.
Definition: Record.cpp:128
std::vector< std::string > getExportPaths()
Get list of all files that contains captured audio in the current recording session.
Definition: Record.cpp:109
void stop()
Stops the capture of audio data by removing ringbuffer from Controller.
Definition: Record.cpp:94
Central component of the audio backend.
Definition: Controller.h:18
void clearExportPaths()
Clear the vector to denote that the captured data has been discarded or exported to a new file...
Definition: Record.cpp:119