Author Topic: WASAPI and TTS on 12.2  (Read 6423 times)

0 Members and 3 Guests are viewing this topic.

macrho

  • $upporter
  • Contributor
  • *****
  • Posts: 75
  • Karma: 0
    • View Profile
WASAPI and TTS on 12.2
« on: December 01, 2013, 08:01:27 AM »
I'm running XBMC 12.2 on Windows 7 64-bit. The PC is a NUC DC3217IYE that is connected to my receiver via HDMI (Onkyo that can do DTS-MA, TrueHD, etc) and then to the TV via HDMI. As best as I can tell, it is not possible to have TTS running when your audio mode in XBMC is set to WASAPI.  I've tried DirectSound and while TTS does work, I'm unable to watch some of my 1080p films with HD audio (they stutter, having a second or so lapse between frames)

So, does anyone have XBMC 12.2 running with WASAPI and have TTS working with VC?

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: WASAPI and TTS on 12.2
« Reply #1 on: December 01, 2013, 09:28:37 AM »
I recommend you post a screenshot of your XBMC audio settings.

I have a similar setup.  I send my audio to the Onkyo using optical or coax and have my TV connected directly to my PC via HDMI.  This has a number of advantages.  I use direct sound for music but pass through DTS and ac3 for TV and movies.  It works great.  You can't play TTS through the onkyo when movies are playing in pass through mode, so instead I use the HDMI output to my TV for TTS.  The sound on my TV is not great but it is perfect for TTS.

Another advantage to this is that I don't need to have my amp on just to use the TV as a monitor, which saves electricity because the onkyo is a bit power greedy.

When I listen to music I use MediaMonkey and redirect the TTS through the onkyo so that I can turn the TV off.
« Last Edit: December 01, 2013, 09:49:35 AM by jitterjames »

macrho

  • $upporter
  • Contributor
  • *****
  • Posts: 75
  • Karma: 0
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #2 on: December 01, 2013, 09:55:16 AM »
I've attached a screenshot

My understanding is that an optical or coax cable don't have the necessary bandwidth to carry TrueHD or DTS-MA
Also, I have a collection of 24 bit audio that XBMC plays very well.

I don't have optical outs on my NUC but I do have a second HDMI port, hmmm, perhaps the TV speaker can then be used for TTS via HDMI

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: WASAPI and TTS on 12.2
« Reply #3 on: December 01, 2013, 11:06:38 AM »
I recommend that you set your audio output to use direct sound and your passthrough device to use wasapi.  I can actually use directsound for both but there is no point using directsound for passthrough since the TTS won't work anyway while passthrough is enabled.

I still prefer the idea of sending video and TTS directly to the TV but that may not work for you depending on what other stuff you've got going on in your setup.  (e.g. if you want to switch multiple video inputs through your receiver)

I also have my audio output set to 2.0.  In the case of stereo sound sources I allow my receiver to handle the "upmixing" if that is what I want, depending on where I am sitting.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: WASAPI and TTS on 12.2
« Reply #4 on: December 01, 2013, 11:23:25 AM »
I don't have optical outs on my NUC but I do have a second HDMI port, hmmm, perhaps the TV speaker can then be used for TTS via HDMI
I am only using optical because I don't have the capability to output to two different hdmi devices.

On optical I am able to do 5.1 DTS and AC3 audio no problem, but would probably have problems with uncompressed 5.1 24/96 audio etc.  This just doesn't happen to be an issue for me.

If you can output on two hdmi ports I would do that.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: WASAPI and TTS on 12.2
« Reply #5 on: December 01, 2013, 11:26:26 AM »
I think it is worth mentioning that I use WASAPI with MediaMonkey in non-exclusive mode and TTS works fine on the same output while music is playing.  So it is not WASAPI itself that causes the problem, but the fact that XBMC is using it in exclusive mode.  I don't know if there is a way to change that.

macrho

  • $upporter
  • Contributor
  • *****
  • Posts: 75
  • Karma: 0
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #6 on: December 02, 2013, 07:04:15 PM »
I can't get any combination to work that will give me any workable results:

If I shut off exclusive mode in WASAPI, then my music doesn't play BUT VC can tell me what the song is I can't hear

If I put DirectSound on, my music plays and VC can tell me what I'm hearing BUT I can't watch any of my 1080p movies - there's stuttering that happens, and the screen just flashes green for long periods of time

I used my second HDMI out on the NUC to connect to my TV but guess I can't use the TV's audio as that HDMI input isn't active (e.g. the receiver is already connected on another HDMI input to the TV and I guess you can't have multiple HDMI inputs active?)

Nothing winds up being a usable solution; has anyone that listens to 24 bit audio AND watches 1080p movies along with DTS-MA/TrueHD managed to get TTS to work?

xtermin8r

  • $upporter
  • Sr. Member
  • *****
  • Posts: 366
  • Karma: 9
  • Crunchie
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #7 on: December 02, 2013, 08:27:24 PM »
Quote
If I put DirectSound on, my music plays and VC can tell me what I'm hearing BUT I can't watch any of my 1080p movies - there's stuttering that happens, and the screen just flashes green for long periods of time

It's a long shot but try enabling allow hardware acceleration (DXVA2) in xbmc video playback settings.
Neural Net Based Artificial Intelligence.

macrho

  • $upporter
  • Contributor
  • *****
  • Posts: 75
  • Karma: 0
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #8 on: December 02, 2013, 08:36:11 PM »
It's a long shot but try enabling allow hardware acceleration (DXVA2) in xbmc video playback settings.

I can only watch my HD movies with DXVA2 enabled along with WASAPI
I've tried it with DirectSound and my HD movies are unwatchable

xtermin8r

  • $upporter
  • Sr. Member
  • *****
  • Posts: 366
  • Karma: 9
  • Crunchie
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #9 on: December 02, 2013, 10:48:46 PM »
I had a similar problem (green screen) with xbmc 12.2, i stopped using it and reverted back to 12.1

have you tried xbmc 12.1 or any other previous versions ?
Neural Net Based Artificial Intelligence.

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2320
  • Karma: 47
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #10 on: December 03, 2013, 04:52:06 AM »
Quote
Nothing winds up being a usable solution; has anyone that listens to 24 bit audio AND watches 1080p movies along with DTS-MA/TrueHD managed to get TTS to work?

Hi marcroh, VC allowed us to use a different output for the TTS, so you can use for theTTS any other output as HDMi. For example the normal audio output with an extra speaker or with a bluetooth dongle and a "Boombox" or if you have a android device and using VoxWav (VW receive every speak action) there are so much opportunities. VC can switch by an event to this outputs like if XBMC is running, VC use a other TTS output as HDMi over you receiver.

Kalle
***********  get excited and make things  **********

macrho

  • $upporter
  • Contributor
  • *****
  • Posts: 75
  • Karma: 0
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #11 on: December 03, 2013, 07:37:10 AM »
Is your suggestion to switch the HDMI input on my receiver to then play the TTS? The Onkyo only has IR (no network control)

I don't have an android device and was hoping that my TTS audio would come through my receiver
Basically my setup is:

Intel NUC i3 > Onkyo Receiver > TV
All the connections are via HDMI

The NUC does have 2 HDMI ports on it

I wonder if XBMC gives up exclusive audio control when a movie/tv show/cd is paused? I'll have to check that tonight

I'm hoping for seamless voice control of XBMC (which I plan to have on 24/7)

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2320
  • Karma: 47
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #12 on: December 03, 2013, 08:19:09 AM »
I know that you will use only your onkyo for all the audio stuff, but it looks like that is not possible. In my example you can use a extra speaker or what ever on a other output on your NUC for the TTS when you use XBMC to watch movies. Fact is, you can sepparate the TTS in VC from any other output as HDMi, you need only a extra device for the output (like a bluetooth speaker or a extra speaker on the NUC audio output and then you can use events to switch between this outputs for TTS.
***********  get excited and make things  **********

macrho

  • $upporter
  • Contributor
  • *****
  • Posts: 75
  • Karma: 0
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #13 on: December 03, 2013, 09:14:36 AM »
Any suggestions on a speaker? Looks like a lot of apparatus is needed to connect a speaker from HDMI
Bluetooth could work but it would need to be powered (not a rechargeable one)
Lastly, I assume most of the XBMC commands from VC would need to be changed to mute whatever sound is coming out from my receiver, have TTS go to the new external speaker and then unmute the receiver after the TTS is done

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2320
  • Karma: 47
    • View Profile
Re: WASAPI and TTS on 12.2
« Reply #14 on: December 03, 2013, 10:06:41 AM »
I think you can use any bluetooth speaker - the most of them can also connect to the USB port and has a rechargeable battery when you are use it with bluetooh. All devices are mostly cheap.
To mute the sound from XBMC is easy - you can use a event - like when VC is switch from standby to ON mode or you use the prefix mode, then you can use a "ducking start" which do a softmute for XBMC and also unmute XBMC when the TTS is done. In this way you don't need change XBMC commands.

you can search here in the forum for "ducking" or can take a look here http://voxcommando.com/forum/index.php?topic=1262.0

here is a example group for ducking when you use the prefixmode (I have modified the code to pause XBMC instead of softmute - thanks to James for the hint)

Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<commandGroup open="True" name="VC prefix start-end" enabled="True" prefix="" priority="0" requiredProcess="" description="">
  <command id="248" name="start prefix event" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>ProcessRunning</ifType>
      <ifParams>MediaMonkey&amp;&amp;</ifParams>
      <then>
        <action>
          <cmdType>MM.SoftMute</cmdType>
          <cmdString>10</cmdString>
          <cmdRepeat>1</cmdRepeat>
        </action>
      </then>
      <else />
    </if>
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>ProcessRunning</ifType>
      <ifParams>XBMC&amp;&amp;</ifParams>
      <then>
        <action>
          <cmdType>XJson.Raw</cmdType>
          <cmdString>Input.ExecuteAction&amp;&amp;"action":"playpause"</cmdString>
          <cmdRepeat>1</cmdRepeat>
        </action>
      </then>
      <else />
    </if>
    <event>VC.Prefix.Start</event>
  </command>
  <command id="304" name="end prefix event" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>ProcessRunning</ifType>
      <ifParams>MediaMonkey&amp;&amp;</ifParams>
      <then>
        <action>
          <cmdType>MM.SoftUnmute</cmdType>
          <cmdString />
          <cmdRepeat>1</cmdRepeat>
        </action>
      </then>
      <else />
    </if>
    <if ifBlockDisabled="False" ifNot="False">
      <ifType>ProcessRunning</ifType>
      <ifParams>XBMC&amp;&amp;</ifParams>
      <then>
        <action>
          <cmdType>XJson.Raw</cmdType>
          <cmdString>Input.ExecuteAction&amp;&amp;"action":"playpause"</cmdString>
          <cmdRepeat>1</cmdRepeat>
        </action>
      </then>
      <else />
    </if>
    <event>VC.Prefix.End</event>
  </command>
</commandGroup>
« Last Edit: December 03, 2013, 10:28:01 AM by Kalle »
***********  get excited and make things  **********