Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
miniaudio
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
miniaudio
Commits
6c60953e
Commit
6c60953e
authored
Dec 15, 2020
by
David Reid
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add support for MA_NO_RUNTIME_LINKING to the OpenSL backend.
Public issue
https://github.com/mackron/miniaudio/issues/247
parent
d9a95b08
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
1 deletion
+16
-1
miniaudio.h
miniaudio.h
+16
-1
No files found.
miniaudio.h
View file @
6c60953e
...
@@ -10472,7 +10472,7 @@ not officially supporting this, but I'm leaving it here in case it's useful for
...
@@ -10472,7 +10472,7 @@ not officially supporting this, but I'm leaving it here in case it's useful for
/* Disable run-time linking on certain backends. */
/* Disable run-time linking on certain backends. */
#ifndef MA_NO_RUNTIME_LINKING
#ifndef MA_NO_RUNTIME_LINKING
#if defined(MA_
ANDROID) || defined(MA_
EMSCRIPTEN)
#if defined(MA_EMSCRIPTEN)
#define MA_NO_RUNTIME_LINKING
#define MA_NO_RUNTIME_LINKING
#endif
#endif
#endif
#endif
...
@@ -31350,15 +31350,19 @@ static ma_result ma_context_init_engine_nolock__opensl(ma_context* pContext)
...
@@ -31350,15 +31350,19 @@ static ma_result ma_context_init_engine_nolock__opensl(ma_context* pContext)
static ma_result ma_context_init__opensl(const ma_context_config* pConfig, ma_context* pContext)
static ma_result ma_context_init__opensl(const ma_context_config* pConfig, ma_context* pContext)
{
{
ma_result result;
ma_result result;
#if !defined(MA_NO_RUNTIME_LINKING)
size_t i;
size_t i;
const char* libOpenSLESNames[] = {
const char* libOpenSLESNames[] = {
"libOpenSLES.so"
"libOpenSLES.so"
};
};
#endif
MA_ASSERT(pContext != NULL);
MA_ASSERT(pContext != NULL);
(void)pConfig;
(void)pConfig;
#if !defined(MA_NO_RUNTIME_LINKING)
/*
/*
Dynamically link against libOpenSLES.so. I have now had multiple reports that SL_IID_ANDROIDSIMPLEBUFFERQUEUE cannot be found. One
Dynamically link against libOpenSLES.so. I have now had multiple reports that SL_IID_ANDROIDSIMPLEBUFFERQUEUE cannot be found. One
report was happening at compile time and another at runtime. To try working around this, I'm going to link to libOpenSLES at runtime
report was happening at compile time and another at runtime. To try working around this, I'm going to link to libOpenSLES at runtime
...
@@ -31425,6 +31429,16 @@ static ma_result ma_context_init__opensl(const ma_context_config* pConfig, ma_co
...
@@ -31425,6 +31429,16 @@ static ma_result ma_context_init__opensl(const ma_context_config* pConfig, ma_co
ma_post_log_message(pContext, NULL, MA_LOG_LEVEL_INFO, "[OpenSL|ES] Cannot find symbol slCreateEngine.");
ma_post_log_message(pContext, NULL, MA_LOG_LEVEL_INFO, "[OpenSL|ES] Cannot find symbol slCreateEngine.");
return MA_NO_BACKEND;
return MA_NO_BACKEND;
}
}
#else
pContext->opensl.SL_IID_ENGINE = (ma_handle)SL_IID_ENGINE;
pContext->opensl.SL_IID_AUDIOIODEVICECAPABILITIES = (ma_handle)SL_IID_AUDIOIODEVICECAPABILITIES;
pContext->opensl.SL_IID_ANDROIDSIMPLEBUFFERQUEUE = (ma_handle)SL_IID_ANDROIDSIMPLEBUFFERQUEUE;
pContext->opensl.SL_IID_RECORD = (ma_handle)SL_IID_RECORD;
pContext->opensl.SL_IID_PLAY = (ma_handle)SL_IID_PLAY;
pContext->opensl.SL_IID_OUTPUTMIX = (ma_handle)SL_IID_OUTPUTMIX;
pContext->opensl.SL_IID_ANDROIDCONFIGURATION = (ma_handle)SL_IID_ANDROIDCONFIGURATION;
pContext->opensl.slCreateEngine = (ma_proc)slCreateEngine;
#endif
/* Initialize global data first if applicable. */
/* Initialize global data first if applicable. */
...
@@ -64646,6 +64660,7 @@ REVISION HISTORY
...
@@ -64646,6 +64660,7 @@ REVISION HISTORY
================
================
v0.10.28 - TBD
v0.10.28 - TBD
- Fix a crash when initializing a POSIX thread.
- Fix a crash when initializing a POSIX thread.
- OpenSL|ES: Respect the MA_NO_RUNTIME_LINKING option.
v0.10.27 - 2020-12-04
v0.10.27 - 2020-12-04
- Add support for dynamically configuring some properties of `ma_noise` objects post-initialization.
- Add support for dynamically configuring some properties of `ma_noise` objects post-initialization.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment