Sorry for the late reply. The reason why the callback is called twice is that the soundOutput value is undefined at first. It seems it takes a few more time to load. And we checked the sample code with our test TV but couldn’t reproduce the issue. If the problem persists, please email us the following at developer@lge.com:
We checked the .ipk with the same version of TV you tested, but the getARCState failed error was not reproduced. Are you getting the error with the simulator? If so, this is normal operation because the simulator does not support the getARCState. + As we said above, the reason why the callback is called twice is that the soundOutput value is undefined at first. This is also normal operation.