Skip to content

Commit e12d69e

Browse files
committed
AudioOutI2S, AudioInI2S: Add setBufferSize(...) API
1 parent 9e82f50 commit e12d69e

File tree

5 files changed

+28
-4
lines changed

5 files changed

+28
-4
lines changed

keywords.txt

+2
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ volume KEYWORD2
3838

3939
input KEYWORD2
4040

41+
setBufferSize KEYWORD2
42+
4143
#######################################
4244
# Constants (LITERAL1)
4345
#######################################

src/AudioInI2S.cpp

+7-2
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1717
*/
1818

19-
#include <I2S.h>
20-
2119
#include "AudioInI2S.h"
2220

2321
AudioInI2SClass::AudioInI2SClass() :
@@ -73,6 +71,13 @@ int AudioInI2SClass::channels()
7371
return 2;
7472
}
7573

74+
#ifdef I2S_HAS_SET_BUFFER_SIZE
75+
void AudioInI2SClass::setBufferSize(int bufferSize)
76+
{
77+
I2S.setBufferSize(bufferSize);
78+
}
79+
#endif
80+
7681
int AudioInI2SClass::begin()
7782
{
7883
_callbackTriggered = false;

src/AudioInI2S.h

+6
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
#ifndef _AUDIO_IN_I2S_H_INCLUDED
2020
#define _AUDIO_IN_I2S_H_INCLUDED
2121

22+
#include <I2S.h>
23+
2224
#include "AudioIn.h"
2325

2426
class AudioInI2SClass : public AudioIn
@@ -34,6 +36,10 @@ class AudioInI2SClass : public AudioIn
3436
virtual int bitsPerSample();
3537
virtual int channels();
3638

39+
#ifdef I2S_HAS_SET_BUFFER_SIZE
40+
void setBufferSize(int bufferSize);
41+
#endif
42+
3743
protected:
3844
virtual int begin();
3945
virtual int read(void* buffer, size_t size);

src/AudioOutI2S.cpp

+7-2
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1717
*/
1818

19-
#include <I2S.h>
20-
2119
#include "AudioOutI2S.h"
2220

2321
AudioOutI2SClass::AudioOutI2SClass() :
@@ -112,6 +110,13 @@ int AudioOutI2SClass::isPaused()
112110
return _paused;
113111
}
114112

113+
#ifdef I2S_HAS_SET_BUFFER_SIZE
114+
void AudioOutI2SClass::setBufferSize(int bufferSize)
115+
{
116+
I2S.setBufferSize(bufferSize);
117+
}
118+
#endif
119+
115120
int AudioOutI2SClass::startPlayback(AudioIn& input, bool loop)
116121
{
117122
if (_input) {

src/AudioOutI2S.h

+6
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
#ifndef _AUDIO_OUT_I2S_INCLUDED
2020
#define _AUDIO_OUT_I2S_INCLUDED
2121

22+
#include <I2S.h>
23+
2224
#include "AudioOut.h"
2325

2426
class AudioOutI2SClass : public AudioOut
@@ -38,6 +40,10 @@ class AudioOutI2SClass : public AudioOut
3840
virtual int isPlaying();
3941
virtual int isPaused();
4042

43+
#ifdef I2S_HAS_SET_BUFFER_SIZE
44+
void setBufferSize(int bufferSize);
45+
#endif
46+
4147
private:
4248
int startPlayback(AudioIn& input, bool loop);
4349

0 commit comments

Comments
 (0)