Unity 2019.3.0f6 - ERR_HEADER_MISMATCH

Does FMOD support 2019.3.0f6? I believe it is the latest stable build currently.

FMOD seems to work fine in the editor, however when building for Linux I get the following error:

SystemNotInitializedException: [FMOD] Initialization failed : FMOD.Studio.System.create : ERR_HEADER_MISMATCH : There is a version mismatch between the FMOD header and either the FMOD Studio library or the FMOD Low Level library.
at FMODUnity.RuntimeManager.get_Instance () [0x00148] in G:\turbo\Assets\Plugins\FMOD\src\Runtime\RuntimeManager.cs:113
at FMODUnity.RuntimeManager.get_StudioSystem () [0x00001] in G:\turbo\Assets\Plugins\FMOD\src\Runtime\RuntimeManager.cs:127
at FMODUnity.RuntimeManager.AddListener (FMODUnity.StudioListener listener) [0x000ef] in G:\turbo\Assets\Plugins\FMOD\src\Runtime\RuntimeManager.cs:334
at FMODUnity.StudioListener.OnEnable () [0x00029] in G:\turbo\Assets\Plugins\FMOD\src\Runtime\StudioListener.cs:18

I did not have an issue when building for Unity 2019.2.17f1

Is this the correct place to post this?

The FMOD Unity Integration does work with 2019.3, the ERR_HEADER_MISMATCH error is referring to a mismatch between the FMOD header and either the FMOD libraries. Reimporting the integration may be the easiest solution.

Hello, I’m also having this issue when building for Linux using 2019.3.0f6 and FMOD Unity Integration 2.0.0.7. FMOD project and streaming assets are also migrated to and generated by FMOD Studio 2.0.0.7. I can make the build for Linux 64, but when I try to execute that build on Linux (Ubuntu 18.04.4 LTS) as soon as it tries to initialize FMOD system the game halts and Player.log shows this trace:

SystemNotInitializedException: [FMOD] Initialization failed : FMOD.Studio.System.create : ERR_HEADER_MISMATCH : There is a version mismatch between the FMOD header and either the FMOD Studio library or the FMOD Low Level library.
at FMODUnity.RuntimeManager.get_Instance () [0x00108] in <415f26ad70ee49b09d74100feff18adf>:0
at FMODUnity.RuntimeManager.PathToGUID (System.String path) [0x0001e] in <415f26ad70ee49b09d74100feff18adf>:0
at FMODUnity.RuntimeManager.CreateInstance (System.String path) [0x00000] in <415f26ad70ee49b09d74100feff18adf>:0
at SoundManager+SoundEvent…ctor (System.String soundScenery, System.String path, SoundManager+SoundEvent+TYPE type, System.Single fadeTime) [0x0000d] in <7d79b04fea614b93993224ceeeabd8ea>:0

Of course, I’ve tried to reimport the integration, also I’ve tried to completely delete all FMOD folders in unity project and clean install the integration package again. But the problem persists. Are you sure that all linux .so libraries are correctly matching the version of FMOD integration header in your unity package?

Have you really tested this issue? Did you try to build a project for Linux on Unity 2019.3 using FMOD integration and then effectively execute it on Linux?

Thanks in advance!

I was able to run FMOD in Editor and in a built game using Unity 2019.3.0f6 and Ubuntu 18.04.4 LTS without any errors. Are you able to test it in a new empty project?

Hello, I’ve tested it with a new empty project and the problem persists. These are the steps I’ve followed:

  1. Create a new FMOD Project on FMOD Studio 2.00.07 with just two events assigned to Master bank
    • a sound for testing play oneshot (wav asset)
    • a music loop for testing a start/stop event (mp3 asset)
  2. Create a new Unity 2D Project on Unity 2019.3.0f6 (on Windows 10)
  3. Import FMOD integration package on this new project (fmodstudio20007.unitypackage)
  4. Configure FMOD settings to point to the studio project path
  5. Add a FMOD Studio Listener to the main camera
  6. Create a simple c# MonoBehaviour script that shows 2 buttons on screen
    • One for playing the wav sound
    • Other for start/stop mp3 loop
  7. Assign this script/component to the Main Camera object in Unity Hierarchy
  8. Play this simple project on Editor with success
    • Both buttons are shown on screen and both events are working
  9. Make a Windows 64bits build and test it
    • Both buttons are shown on screen and both events are working
  10. Make a Linux 64bits build
  11. Boot on Linux (Ubuntu 18.04.4 LTS) and execute the build:
    • Buttons are not shown because FMOD fails before
    • ~/.config/unity3d/DefaultCompany/MyTestUnity/Player.log shows this error trace:
SystemNotInitializedException: [FMOD] Initialization failed : FMOD.Studio.System.create : ERR_HEADER_MISMATCH : There is a version mismatch between the FMOD header and either the FMOD Studio library or the FMOD Low Level library.
  at FMODUnity.RuntimeManager.get_Instance () [0x00108] in <5823b14fa90d4e81b237ee60a544d6fb>:0
  at FMODUnity.RuntimeManager.PathToGUID (System.String path) [0x0001e] in <5823b14fa90d4e81b237ee60a544d6fb>:0
  at FMODUnity.RuntimeManager.CreateInstance (System.String path) [0x00000] in <5823b14fa90d4e81b237ee60a544d6fb>:0
  at SoundTestScript.Awake () [0x00000] in <6bbb4c5f231a486ea53b207d3c8c5e57>:0

(Filename: <5823b14fa90d4e81b237ee60a544d6fb> Line: 0)

SystemNotInitializedException: [FMOD] Initialization failed : FMOD.Studio.System.create : ERR_HEADER_MISMATCH : There is a version mismatch between the FMOD header and either the FMOD Studio library or the FMOD Low Level library.
  at FMODUnity.RuntimeManager.get_Instance () [0x00007] in <5823b14fa90d4e81b237ee60a544d6fb>:0
  at FMODUnity.RuntimeManager.get_StudioSystem () [0x00000] in <5823b14fa90d4e81b237ee60a544d6fb>:0
  at FMODUnity.RuntimeManager.AddListener (FMODUnity.StudioListener listener) [0x000bf] in <5823b14fa90d4e81b237ee60a544d6fb>:0
  at FMODUnity.StudioListener.OnEnable () [0x00027] in <5823b14fa90d4e81b237ee60a544d6fb>:0

(Filename: <5823b14fa90d4e81b237ee60a544d6fb> Line: 0)

This is the content of the c# script:

using FMOD.Studio;
using UnityEngine;

public class SoundTestScript : MonoBehaviour {
    private EventInstance fmodEvent;
    private bool playingMusic;

    void Awake() {
        fmodEvent = FMODUnity.RuntimeManager.CreateInstance("event:/music");
        playingMusic = false;
    }

    void OnGUI() {
        if (GUILayout.Button("Test sound")) {
            FMODUnity.RuntimeManager.PlayOneShot("event:/sound");
        }

        if (GUILayout.Button("Play/Stop music loop")) {
            if (playingMusic) {
                playingMusic = false;
                fmodEvent.stop(FMOD.Studio.STOP_MODE.IMMEDIATE);
            } else {
                playingMusic = true;
                fmodEvent.start();
            }
        }
    }
}

I’ve uploaded the test to my server so you can test it if you want. This is the URL:

http://www.nicolasim.com/files/MyTest.zip

The zip contains the FMOD project, the Unity project, a Windows 64 build, and the Linux 64 build that is not working.

Thanks again!

Thanks for all the information, we have been able to reproduce this and will have to investigate this further.

This appears to be a regression in Unity 2019.3 and does still work in Unity 2019.2 and earlier.

Hello, any progress with this issue? We need to launch our game demo on Linux using Unity 2019.3 to solve another bug, so we are stuck on this. Thank you!

This is also happening with XBoxOne on Unity 2019.3.2f1, though I had chalked that up to it not being built against an up to date XDK (QFE12) and ignored it since it seemed to be running fine in our Steam build.

We currently do not have an ETA .

What version of FMOD are you using?

What version of FMOD are you using?
1.10.19

I just built and ran on Xbox One using FMOD 1.10.19 and Unity 2019.3.2f1 without any issues. I would try reimporting the FMOD Unity packages.

Will do, with line numbers enabled in debug as well.

Result:

[LOG] Manager::init : maxchannels = 1024 studioflags = 00000008 flags 00000000 extradriverdata 0000000000000000.
[LOG] SystemI::init : Initialize version=11019 (107203), maxchannels=1024, flags=0x00020000
[ERR] ACPManager::init : AcpHalAllocateShapeContexts returned 0x8AC80001.
[LOG] LiveUpdate::release :
[LOG] LiveUpdate::reset : Reset connection (reason Disconnected)
[FMOD] Studio::System::initialize returned ERR_INTERNAL, defaulting to no-sound mode.
UnityEngine.DebugLogHandler:Internal_Log(LogType, LogOption, String, Object)
UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
UnityEngine.Logger:LogFormat(LogType, String, Object[])
UnityEngine.Debug:LogErrorFormat(String, Object[])
FMODUnity.RuntimeManager:Initialize()
FMODUnity.RuntimeManager:get_Instance()
FMODUnity.RuntimeManager:get_StudioSystem()
FMODUnity.RuntimeManager:AddListener(Int32)
FMODUnity.StudioListener:OnEnable()
UnityEngine.Object:Internal_CloneSingleWithParent(Object, Transform, Boolean)
UnityEngine.Object:Instantiate(Object, Transform, Boolean)
UnityEngine.Object:Instantiate(T, Transform, Boolean)
UnityEngine.Object:Instantiate(T, Transform)
ItCameFromEarth.Cameras.CameraManager:Init()
ItCameFromEarth.d__13:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h
ine: 35)
[LOG] System::create : Header version = 1.10.19. Current version = 1.10.19.
[LOG] SystemI::setOutputInternal : Setting output to ‘FMOD NoSound Output’
[LOG] Manager::init : maxchannels = 1024 studioflags = 00000008 flags 00000000 extradriverdata 0000000000000000.
[LOG] SystemI::init : Initialize version=11019 (107203), maxchannels=1024, flags=0x00020000
[LOG] OutputNoSound::init : Initializing.
[LOG] OutputNoSound::init : Done.
[LOG] Thread::initThread : Init FMOD stream thread. Priority: 2, Stack Size: 98304, Semaphore: No, Sleep Time: 10, Looping: Yes.
[LOG] SystemI::DSPCodecPoolRegister : register codec pool for pool type 4
[LOG] Thread::initThread : Init FMOD mixer thread. Priority: 3, Stack Size: 81920, Semaphore: No, Sleep Time: 3, Looping: Yes.
[LOG] AsyncManager::init : manager 0000020775C50A58 isAsync 1 updatePeriod 0.02
[LOG] Thread::initThread : Init FMOD Studio update thread. Priority: 0, Stack Size: 98304, Semaphore: No, Sleep Time: 1, Looping: No.
[LOG] AsyncManager::init : done
[LOG] PlaybackSystem::init :
[LOG] Thread::initThread : Init FMOD Studio sample load thread. Priority: 0, Stack Size: 98304, Semaphore: No, Sleep Time: 1, Looping: No.
[LOG] PlaybackSystem::init : done
[LOG] Thread::initThread : Init FMOD Studio bank load thread. Priority: 0, Stack Size: 98304, Semaphore: No, Sleep Time: 1, Looping: No.
[LOG] Manager::init : done.
[LOG] Manager::readBank : fileversion = 103, compatVersion = 99 (oldest = 44, newest = 103)
[LOG] Manager::readBank : fileversion = 103, compatVersion = 99 (oldest = 44, newest = 103)
[LOG] PlaybackSystem::acquireMasterBus : Setting master channel group format to 3
[LOG] Manager::readBank : fileversion = 103, compatVersion = 99 (oldest = 44, newest = 103)
[LOG] Manager::readBank : fileversion = 103, compatVersion = 99 (oldest = 44, newest = 103)
[LOG] Manager::readBank : fileversion = 103, compatVersion = 99 (oldest = 44, newest = 103)
SystemNotInitializedException: [FMOD] Initialization failed : Output forced to NO SOUND mode : ERR_INTERNAL : An error occurred that wasn’t supposed to. Contact support.
at FMODUnity.RuntimeManager.get_Instance () [0x00000] in <00000000000000000000000000000000>:0
at FMODUnity.RuntimeManager.get_StudioSystem () [0x00000] in <00000000000000000000000000000000>:0
at FMODUnity.RuntimeManager.AddListener (System.Int32 index) [0x00000] in <00000000000000000000000000000000>:0
at FMODUnity.StudioListener.OnEnable ()

At least it doesn’t have a HEADER error!

You need to disable the built in Unity audio, on Xbox One they especially don’t play well together: https://fmod.com/resources/documentation-unity?version=2.0&page=troubleshooting.html#disabling-unity-inbuilt-audio

Either way it would be best to make a new thread for this as it does not really relate to the original post.

Thanks Cameron. If that doesn’t solve the issues. I will do so now that the HEADER_MISMATCH is gone.

Hello Cameron,

Do you also have a fix estimate? I tooked the test today with both Unity 2019.3.0f6 and 2019.3.3f1 and the same problem happens in both versions.

SystemNotInitializedException: [FMOD] Initialization failed : FMOD.Studio.System.create : ERR_HEADER_MISMATCH : There is a version mismatch between the FMOD header and either the FMOD Studio library or the FMOD Low Level library.

I tried use FMOD Integration 2.00.03 and 2.00.07 to test, but nothing has change.

This problem only occurs on Linux Build, i’ve tested in Windows, Mac, Linux and Nintendo Switch. We really need this fix to can update Linux version from our game.

@cameron-fmod I forgot to tag you on last message.

If this is something you require urgently please contact support@fmod.com.

Still a problem with Unity 2019.3.6 and FMOD Integration 2.00.08 or the 2.01.00 Early Access.

Any update on a possible fix?

1 Like