|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Mar 02, 2006 12:16 am
Improved Sound support in CMUD |
I realized that I hadn't talked about the new sound support in CMUD yet...
CMUD uses DirectSound and DirectMusic for sound. Specifically for the MUD Sound Protocol (MSP) and #PLAY commands.
Why is this better than zMUD? Well, in zMUD there were two kinds of "sound" support: the !!SOUND MSP command and the !!MUSIC MSP command. The !!MUSIC command sent the file to the Windows MCI drivers and could play different types of sounds, but only one at a time. The !!SOUND command uses a 3rd party sound mixer (the DWSW32.DLL file that comes with zMUD) to mix multiple wav sounds. However, it only supported a subset of possible WAV file formats and there were lots of files it couldn't play. Also, zMUD did some messing around with the sound card volume that could mess up other audio applications running at the same time.
CMUD has bi-level sound support depending upon what version of DirectX it detects. If you have an older version of DirectX, it uses the DirectSound interface for the !!SOUND command to mix any number of wav files, and it supports any wav file that Windows recognizes. The !!MUSIC command still uses the MCI drivers like in zMUD.
However, if you have DirectX9 installed, then CMUD will use the newer DirectMusic interface, which allows playing *any* file that Media Player can handle, and it will play any number of different files playing simutaneously (each with it's own pan and volume settings).
What this means in layman terms is that CMUD supports playing MP3 files! Using either the !!SOUND or #PLAY command you can play MP3 files in CMUD if you have DirectX9 installed.
This is one of the main areas that prevents CMUD from working on older versions of Windows (like Windows 95 or Windows NT). Even though I will try to make it so that CMUD can load (with audio disabled) without DirectX, eventually CMUD will use other parts of DirectX for graphics. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Mar 02, 2006 1:59 am |
Actually I mispoke just a bit. CMUD is using DirectShow, not DirectMusic. Specifically, it uses the FilterGraph.Render function to play a media file. I'm not actually sure which version of DirectX added the FilterGraph and DirectShow, so maybe you won't need DirectX9. I'll try to find out which version of DirectX is really needed for this.
|
|
|
|
cazador Apprentice
Joined: 08 Dec 2005 Posts: 108
|
Posted: Thu Mar 02, 2006 3:10 am |
I can't wait to hear the new features. Sounds like something that can really bring muds to life.
|
|
|
|
hav Wanderer
Joined: 05 Oct 2004 Posts: 61 Location: Riga, Latvia
|
Posted: Fri Mar 10, 2006 10:33 am |
while on sound topic, i would want to see built-in support for speech engine, #SPEAK, #SPEECH_VOLUME, #SPEECH_VOICE, rather than relying on old as dinosaurs unsupported buggy mudreader plugin
windows xp has text to speech engine built in, next windows will probably too, so why not. |
|
|
|
Carabas GURU
Joined: 28 Sep 2000 Posts: 434 Location: USA
|
Posted: Fri Mar 10, 2006 3:50 pm |
Yeah, I agree that would be an awesome addition. There are a lot more visually challenged persons trying to MUD lately. Such a feature would most definitely differentiate CMUD from the others. Although it would be a very niche market within an already niche market, it could help with sales.
|
|
_________________ Carabas |
|
|
|
Darker GURU
Joined: 24 Sep 2000 Posts: 1237 Location: USA
|
Posted: Fri Mar 10, 2006 4:15 pm |
Yeah, I can see how that'd work well for blind users.
[speech synthesizer voice]
You have entered the lair of th/
hits you with/
DYING!!/
Please log in.
[/speech]
That'll keep a lot of vision-challenged users playing. :) |
|
_________________ Darker
New and Improved, for your Safety. |
|
|
|
TonDiening GURU
Joined: 26 Jul 2001 Posts: 1958 Location: Canada
|
Posted: Fri Mar 10, 2006 4:17 pm |
I`ve played with 3 screen reader mudders over the years. They appear to play well enough :)
|
|
|
|
Carabas GURU
Joined: 28 Sep 2000 Posts: 434 Location: USA
|
Posted: Fri Mar 10, 2006 4:48 pm |
Yeah Darker. I kind of wondered how well something like that would work too. However, just as TonDiening, I have seen some visually challenged people play. You'd never know that there were listening instead of reading.
|
|
_________________ Carabas |
|
|
|
MattLofton GURU
Joined: 23 Dec 2000 Posts: 4834 Location: USA
|
Posted: Fri Mar 10, 2006 9:38 pm |
We have at least two trying to play one or the other Simutronics games, but they had issues with the fact that the TTS stuff was reading prompts and visual-cue items (ie, asterisks on the line or boxing up important text) on a literal level. It was rather difficult for them to sort out the stuff we would normally ignore as eye candy.
To make the TTS support stand out, you'd probably want to allow for some mudding-specific features like prompt recognition and either ignore lists (ie, don't say LESS THAN every time the prompt appears) or function lists (ie, instead of saying "LESS THAN" have it say "PROMPT"). This should allow them to get up and running fairly quickly and easily |
|
_________________ EDIT: I didn't like my old signature |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Sun Mar 12, 2006 6:46 pm |
If someone could point me to a link on the Microsoft site for the Text-to-Speech API then I'll take a look at it. My guess is that it's just simple COM calls, and while I won't be able to put this into the first beta version of CMUD, it might be something I can add later.
|
|
|
|
Carabas GURU
Joined: 28 Sep 2000 Posts: 434 Location: USA
|
Posted: Mon Mar 13, 2006 4:24 pm |
Zugg, I was looking on Microsoft's site for the COM API, but wasn't able to find anything useful. My guess is you'd probably have to download the SDK. Ahh, wait a minute, there is a link on that page to the documentation.
|
|
_________________ Carabas |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Tue Mar 14, 2006 7:33 pm |
Cool, thanks for the link. Looks like everything I need to know is in the help file, and the COM interface looks pretty easy to implement. Definitely something I'll look into adding during the CMUD beta period.
|
|
|
|
Carabas GURU
Joined: 28 Sep 2000 Posts: 434 Location: USA
|
Posted: Wed Mar 15, 2006 4:37 pm |
Cool. Glad I could help
|
|
_________________ Carabas |
|
|
|
|
|