New installation of openFrameworks says something wrong with sound

I was trying to install OF using: “of_v20230804_msys2_mingw64_release”

With reference to “msys2 | openFrameworks” I did this:
(1) cd your_oF_directory/libs/openFrameworksCompiled/project
(2) make

This error came up:

Compiling /c/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp
/mingw64/bin/g++ -g3 -DDEBUG -std=gnu++17 -DUNICODE -D_UNICODE -Wall -fexceptions -DOF_VIDEO_PLAYER_DIRECTSHOW -DOF_USING_MPG123 -IC:/msys64/mingw64/include/rtaudio -IC:/msys64/mingw64/include/AL -IC:/msys64/mingw64/include/cairo -IC:/msys64/mingw64/include/freetype2 -IC:/msys64/mingw64/include/pixman-1 -IC:/msys64/mingw64/include/opus -IC:/msys64/mingw64/include/glib-2.0 -IC:/msys64/mingw64/lib/glib-2.0/include -IC:/msys64/mingw64/include/libpng16 -IC:/msys64/mingw64/include/harfbuzz -I/c/oF/libs/kiss/include -I/c/oF/libs/tess2/include -I/c/oF/libs/videoInput/include -I/c/oF/libs/openFrameworks -I/c/oF/libs/openFrameworks/3d -I/c/oF/libs/openFrameworks/app -I/c/oF/libs/openFrameworks/communication -I/c/oF/libs/openFrameworks/events -I/c/oF/libs/openFrameworks/gl -I/c/oF/libs/openFrameworks/graphics -I/c/oF/libs/openFrameworks/math -I/c/oF/libs/openFrameworks/sound -I/c/oF/libs/openFrameworks/types -I/c/oF/libs/openFrameworks/utils -I/c/oF/libs/openFrameworks/video -MMD -MP -MF /c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.d -MT/c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.o -o /c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.o -c /c/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp
C:/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp: In static member function ‘static
bool ofMediaFoundationSoundPlayer::sInitXAudio2()’:
C:/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp:125:48: error: no matching function
for call to ‘IXAudio2::CreateMasteringVoice(IXAudio2MasteringVoice**)’
125 | hr = sXAudio2->CreateMasteringVoice(&pMVoice);
| ^~
In file included from C:/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.h:10,
from C:/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp:2:
C:/msys64/mingw64/include/xaudio2.h:1571:39: note: candidate: ‘virtual HRESULT IXAudio2::CreateMaste
ringVoice(IXAudio2MasteringVoice**, UINT32, UINT32, UINT32, LPCWSTR, const XAUDIO2_EFFECT_CHAIN*, AU
DIO_STREAM_CATEGORY)’
1571 | virtual HRESULT STDMETHODCALLTYPE CreateMasteringVoice(
| ^
~
C:/msys64/mingw64/include/xaudio2.h:1571:39: note: candidate expects 7 arguments, 1 provided
C:/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp:114:16: warning: unused variable ‘f
lags’ [-Wunused-variable]
114 | UINT32 flags = 0;
| ^

C:/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp: In member function ‘void ofMediaFo
undationSoundPlayer::update(ofEventArgs&)’:
C:/oF/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.cpp:484:33: warning: unused variable ‘h
r’ [-Wunused-variable]
484 | HRESULT hr = mSrcReader->ReadSample(MF_SOURCE_READER_FIRST_AUDIO_STR
EAM, 0, nullptr, nullptr, nullptr, nullptr);
| ^~
make[2]: *** [makefileCommon/compile.core.mk:240: /c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/sound/ofMediaFoundationSoundPlayer.o] Error 1
make[1]: *** [makefileCommon/compile.core.mk:212: Debug] Error 2
make: *** [makefileCommon/compile.core.mk:228: all] Error 2

I can see a similar error in github actions, and opened an issue here:

Thank you for linking this issue with github report. Hopefully it will get fixed soon so I may carry on using openFrameworks. Thank you.

1 Like

I’ve fixed the issue in github actions, please use the latest changes to see if it works for you

Thank you for helping.

I took your latest master build and couldnt complete the installation due to another error. This is the message I got:

Compiling /c/oF/libs/openFrameworks/3d/of3dPrimitives.cpp
/mingw64/bin/g++ -g3 -DDEBUG -std=gnu++17 -DUNICODE -D_UNICODE -Wall -fexceptions -DOF_VIDEO_PLAYER_DIRECTSHOW -DOF_USING_MPG123 -IC:/msys64/mingw64/include/rtaudio -IC:/msys64/mingw64/include/AL -IC:/msys64/mingw64/include/cairo -IC:/msys64/mingw64/include/freetype2 -IC:/msys64/mingw64/include/pixman-1 -IC:/msys64/mingw64/include/opus -IC:/msys64/mingw64/include/glib-2.0 -IC:/msys64/mingw64/lib/glib-2.0/include -IC:/msys64/mingw64/include/libpng16 -IC:/msys64/mingw64/include/harfbuzz -I/c/oF/libs/openFrameworks -I/c/oF/libs/openFrameworks/3d -I/c/oF/libs/openFrameworks/app -I/c/oF/libs/openFrameworks/communication -I/c/oF/libs/openFrameworks/events -I/c/oF/libs/openFrameworks/gl -I/c/oF/libs/openFrameworks/graphics -I/c/oF/libs/openFrameworks/math -I/c/oF/libs/openFrameworks/sound -I/c/oF/libs/openFrameworks/types -I/c/oF/libs/openFrameworks/utils -I/c/oF/libs/openFrameworks/video -MMD -MP -MF /c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/3d/of3dPrimitives.d -MT/c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/3d/of3dPrimitives.o -o /c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/3d/of3dPrimitives.o -c /c/oF/libs/openFrameworks/3d/of3dPrimitives.cpp
In file included from C:/oF/libs/openFrameworks/math/ofMathConstants.h:3,
from C:/oF/libs/openFrameworks/graphics/ofGraphicsConstants.h:3,
from C:/oF/libs/openFrameworks/gl/ofGLUtils.h:10,
from C:/oF/libs/openFrameworks/3d/ofMesh.h:6,
from C:/oF/libs/openFrameworks/3d/of3dPrimitives.h:3,
from C:/oF/libs/openFrameworks/3d/of3dPrimitives.cpp:9:
C:/oF/libs/openFrameworks/utils/ofConstants.h:289:10: fatal error: tesselator.h: No such file or dir
ectory
289 | #include “tesselator.h”
| ^~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [makefileCommon/compile.core.mk:240: /c/oF/libs/openFrameworksCompiled/lib/msys2/obj/Debug/libs/openFrameworks/3d/of3dPrimitives.o] Error 1
make[1]: *** [makefileCommon/compile.core.mk:212: Debug] Error 2
make: *** [makefileCommon/compile.core.mk:228: all] Error 2

1 Like

With the ‘master’ branch, you do not get the libs from apothecary installed as it is done with the msys2 download.
To fix that, you need to run the dowload_libs.sh script in ‘scripts/msys2’.

1 Like