aboutsummaryrefslogtreecommitdiff
path: root/externals/oboe/samples/minimaloboe/src/main/cpp/SimpleNoiseMaker.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'externals/oboe/samples/minimaloboe/src/main/cpp/SimpleNoiseMaker.cpp')
-rw-r--r--externals/oboe/samples/minimaloboe/src/main/cpp/SimpleNoiseMaker.cpp92
1 files changed, 0 insertions, 92 deletions
diff --git a/externals/oboe/samples/minimaloboe/src/main/cpp/SimpleNoiseMaker.cpp b/externals/oboe/samples/minimaloboe/src/main/cpp/SimpleNoiseMaker.cpp
deleted file mode 100644
index 40583917b1..0000000000
--- a/externals/oboe/samples/minimaloboe/src/main/cpp/SimpleNoiseMaker.cpp
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright 2022 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <stdlib.h>
-
-static const char *TAG = "SimpleNoiseMaker";
-
-#include <android/log.h>
-
-#include <SimpleNoiseMaker.h>
-
-using namespace oboe;
-
-oboe::Result SimpleNoiseMaker::open() {
- // Use shared_ptr to prevent use of a deleted callback.
- mDataCallback = std::make_shared<MyDataCallback>();
- mErrorCallback = std::make_shared<MyErrorCallback>(this);
-
- AudioStreamBuilder builder;
- oboe::Result result = builder.setSharingMode(oboe::SharingMode::Exclusive)
- ->setPerformanceMode(oboe::PerformanceMode::LowLatency)
- ->setFormat(oboe::AudioFormat::Float)
- ->setChannelCount(kChannelCount)
- ->setDataCallback(mDataCallback)
- ->setErrorCallback(mErrorCallback)
- // Open using a shared_ptr.
- ->openStream(mStream);
- return result;
-}
-
-oboe::Result SimpleNoiseMaker::start() {
- return mStream->requestStart();
-}
-
-oboe::Result SimpleNoiseMaker::stop() {
- return mStream->requestStop();
-}
-
-oboe::Result SimpleNoiseMaker::close() {
- return mStream->close();
-}
-
-/**
- * This callback method will be called from a high priority audio thread.
- * It should only do math and not do any blocking operations like
- * reading or writing files, memory allocation, or networking.
- * @param audioStream
- * @param audioData pointer to an array of samples to be filled
- * @param numFrames number of frames needed
- * @return
- */
-DataCallbackResult SimpleNoiseMaker::MyDataCallback::onAudioReady(
- AudioStream *audioStream,
- void *audioData,
- int32_t numFrames) {
- // We requested float when we built the stream.
- float *output = (float *) audioData;
- // Fill buffer with random numbers to create "white noise".
- int numSamples = numFrames * kChannelCount;
- for (int i = 0; i < numSamples; i++) {
- // drand48() returns a random number between 0.0 and 1.0.
- // Center and scale it to a reasonable value.
- *output++ = (float) ((drand48() - 0.5) * 0.6);
- }
- return oboe::DataCallbackResult::Continue;
-}
-
-void SimpleNoiseMaker::MyErrorCallback::onErrorAfterClose(oboe::AudioStream *oboeStream,
- oboe::Result error) {
- __android_log_print(ANDROID_LOG_INFO, TAG,
- "%s() - error = %s",
- __func__,
- oboe::convertToText(error)
- );
- // Try to open and start a new stream after a disconnect.
- if (mParent->open() == Result::OK) {
- mParent->start();
- }
-}