YARP
Yet Another Robot Platform
audioToFileDevice.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
8#include <yarp/sig/Sound.h>
11
12#include <string>
13#include <mutex>
14#include <deque>
15
51{
52public:
58 ~audioToFileDevice() override;
59
60 // Device Driver interface
61 bool open(yarp::os::Searchable &config) override;
62 bool close() override;
63
64public:
65 virtual bool renderSound(const yarp::sig::Sound& sound) override;
66 virtual bool startPlayback() override;
67 virtual bool stopPlayback()override;
68 virtual bool setHWGain(double gain) override;
69 virtual bool configureDeviceAndStart() override;
70 virtual bool interruptDeviceAndClose() override;
71 virtual void waitUntilPlaybackStreamIsComplete() override;
72
73private:
74 yarp::sig::Sound m_audioFile;
75 std::string m_audio_filename = "audio_out.wav";
76 std::deque<yarp::sig::Sound> m_sounds;
77 size_t m_filename_counter = 0;
78 bool m_add_marker=false;
79
80 enum save_mode_t
81 {
82 save_overwrite_file = 0,
83 save_append_data =1,
84 save_rename_file =2,
85 save_break_file =3
86 } m_save_mode = save_overwrite_file;
87
88 void save_to_file();
89};
audioToFileDevice : This device driver, wrapped by default by AudioPlayerWrapper, is used to save to ...
bool open(yarp::os::Searchable &config) override
Open the DeviceDriver.
virtual bool renderSound(const yarp::sig::Sound &sound) override
Render a sound using a device (i.e.
audioToFileDevice(const audioToFileDevice &)=delete
virtual bool configureDeviceAndStart() override
virtual bool interruptDeviceAndClose() override
bool close() override
Close the DeviceDriver.
virtual void waitUntilPlaybackStreamIsComplete() override
audioToFileDevice & operator=(const audioToFileDevice &)=delete
audioToFileDevice(audioToFileDevice &&)=delete
virtual bool setHWGain(double gain) override
Sets the hardware gain of the playback device (if supported by the hardware)
virtual bool startPlayback() override
Start the playback.
virtual bool stopPlayback() override
Stop the playback.
~audioToFileDevice() override
audioToFileDevice & operator=(audioToFileDevice &&)=delete
AudioPlayerDeviceBase : a base class for all audio player devices
Interface implemented by all device drivers.
Definition: DeviceDriver.h:30
A base class for nested structures that can be searched.
Definition: Searchable.h:63
Class for storing sounds See Audio in YARP for additional documentation on YARP audio.
Definition: Sound.h:25