# Studio Initialize returns FMOD\_ERR\_NEEDSHARDWARE on Huawei Android hardware

**URL:** <https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311>\
**Category:** FMOD Engine\
**Created:** [December 12, 2019, 7:30pm UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311 "2019-12-12T19:30:15Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![cjserio](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cjserio/32/149_2.png) [@cjserio](https://qa.fmod.com/u/cjserio)\
**Post date:** [December 12, 2019, 7:30pm UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/1 "2019-12-12T19:30:15Z")

</div>

The call to initialize the studio::system layer on various Huawei tablets on Android such as the P20 are returning FMOD\_ERR\_NEEDSHARDWARE. We’re using API version 1.08.14. I think that we’re initializing FMOD in about the most generic way possible so I’m surprised what could be going wrong.

Here’s a bit of pseudocode to show you how FMOD is initialized in our app:

```
if(FMOD::Studio::System::create(&m_fmod_studio)) != FMOD_OK)
	return false;

if(m_fmod_studio->getLowLevelSystem(&m_fmod_system)) != FMOD_OK)
	return false;

FMOD_STUDIO_INITFLAGS studioFlags = FMOD_STUDIO_INIT_NORMAL;
if(m_fmod_studio->initialize(512, studioFlags, FMOD_INIT_NORMAL|FMOD_INIT_3D_RIGHTHANDED, 0)) != FMOD_OK)
	return false;
```

---

<div class="post-metadata">

**Author:** ![cameron-fmod](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cameron-fmod/32/261_2.png) [@cameron-fmod](https://qa.fmod.com/u/cameron-fmod)\
**Post date:** [December 17, 2019, 9:51pm UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/2 "2019-12-17T21:51:03Z")

</div>

Are you able to provide the log output at all?  
The logs should be able to provide more information about the hardware.

---

<div class="post-metadata">

**Author:** ![cjserio](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cjserio/32/149_2.png) [@cjserio](https://qa.fmod.com/u/cjserio)\
**Post date:** [December 17, 2019, 10:02pm UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/3 "2019-12-17T22:02:04Z")

</div>

What kind of logs? Like, from the logging version of the FMOD dlls or something from our app itself?

---

<div class="post-metadata">

**Author:** ![cameron-fmod](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cameron-fmod/32/261_2.png) [@cameron-fmod](https://qa.fmod.com/u/cameron-fmod)\
**Post date:** [December 17, 2019, 11:41pm UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/4 "2019-12-17T23:41:42Z")

</div>

Yes, the logging version of the FMOD dlls should provide all the information we need.

---

<div class="post-metadata">

**Author:** ![cjserio](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cjserio/32/149_2.png) [@cjserio](https://qa.fmod.com/u/cjserio)\
**Post date:** [December 19, 2019, 12:09pm UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/5 "2019-12-19T12:09:15Z")

</div>

I bought one of these devices to test on. I should note that sound worked fine with Android 8 (oreo) and stopped working with the phone updated to Android 9.1 (Pie).

Here’s the log output at the call to Studio’s Initialize:

> I/fmod: System::create : Header version = 1.08.14. Current version = 1.08.14.  
> I/fmod: FMOD::supportsLowLatency : Low latency = false, Pro Audio = false, Acceptable Block Size = true (960)  
> I/fmod: SystemI::init : FMOD Studio Version: 00010814 (80900)  
> I/fmod: SystemI::init : maxchannels = 512, flags = 00030004, extradriverdata = 0x0  
> I/fmod: SystemI::close :  
> I/fmod: SystemI::close : Stop all sounds  
> I/fmod: SystemI::close : done.  
> E/fmod: FMOD\_OS\_Init : Could not detect floating point hardware, cannot continue.  
> I/fmod: LiveUpdate::release :  
> I/fmod: LiveUpdate::reset : Reset connection (reason Disconnected)  
> E/FMOD: soun\_fmod.cpp(106): FMOD error 41 - Tried to use a feature that requires hardware support.

I also found this thread which seems to be the same issue though I’m not sure what “flags and checks” you were referring to then. [[Android] "Could not detect floating point hardware"](https://qa.fmod.com/t/android-could-not-detect-floating-point-hardware/13592)

---

<div class="post-metadata">

**Author:** ![cameron-fmod](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cameron-fmod/32/261_2.png) [@cameron-fmod](https://qa.fmod.com/u/cameron-fmod)\
**Post date:** [December 19, 2019, 11:08pm UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/6 "2019-12-19T23:08:48Z")

</div>

It looks like the fix for that issue went out in version 1.08.24.

---

<div class="post-metadata">

**Author:** ![cjserio](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cjserio/32/149_2.png) [@cjserio](https://qa.fmod.com/u/cjserio)\
**Post date:** [December 20, 2019, 1:19am UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/7 "2019-12-20T01:19:12Z")

</div>

Oh excellent! And that would be compatible with 1.08.14 right? I’m a bit embarrassed I didn’t check for updates. I had assumed you moved on to the newer API when I last updated.

---

<div class="post-metadata">

**Author:** ![cameron-fmod](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cameron-fmod/32/261_2.png) [@cameron-fmod](https://qa.fmod.com/u/cameron-fmod)\
**Post date:** [December 20, 2019, 2:39am UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/8 "2019-12-20T02:39:51Z")

</div>

The 1.08.24 API will work with banks built from 1.08.14, if that is what you mean?

---

<div class="post-metadata">

**Author:** ![cjserio](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cjserio/32/149_2.png) [@cjserio](https://qa.fmod.com/u/cjserio)\
**Post date:** [December 20, 2019, 3:11am UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/9 "2019-12-20T03:11:47Z")

</div>

Yes. Though I assume I should just get 1.08.30?

---

<div class="post-metadata">

**Author:** ![cameron-fmod](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/cameron-fmod/32/261_2.png) [@cameron-fmod](https://qa.fmod.com/u/cameron-fmod)\
**Post date:** [December 20, 2019, 3:15am UTC](https://qa.fmod.com/t/studio-initialize-returns-fmod-err-needshardware-on-huawei-android-hardware/15311/10 "2019-12-20T03:15:11Z")

</div>

That would work too, the changes after 1.08.24 have all been SDK updates, as we try not to touch 1.08 any more unless absolutely necessary.
