2 registered members (PeroPero, 1 invisible),
854
guests, and 6
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Speex format support for compressed voice files
#134439
06/07/07 10:01
06/07/07 10:01
|
Joined: Aug 2000
Posts: 7,490
Orange Brat
OP
Senior Expert
|
OP
Senior Expert
Joined: Aug 2000
Posts: 7,490
|
3DGS already has ogg support, so it would only make sense to complement it with support for Speex given it uses ogg as a container. I can convert any audio format to a Speex file using the new encoder provided by dBpoweramp, but we need a way for the engine to open the format and spit out the sound. http://www.speex.org/Quote:
Speex is an Open Source/Free Software patent-free audio compression format designed for speech. The Speex Project aims to lower the barrier of entry for voice applications by providing a free alternative to expensive proprietary speech codecs. Moreover, Speex is well-adapted to Internet applications and provides useful features that are not present in most other codecs. Finally, Speex is part of the GNU Project and is available under the revised BSD license.
The developers of the AI project Façade integrated Speex and the download size of the application plummeted from 800MB to 167MB, so the space savings are significant for projects featuring large amounts of audio.
Just in case Conitec says no way......
If there are any bored programmers are out there who might want to take a crack at creating an A6/A7 compatible DLL to allow 3DGS to open/read the Speex format, this would be most appreciated. Please post here or in User Contributions if someone should ever decide to do so. Information relevant for programming needs is here: http://www.speex.org/docs/
If someone has already done this, please post a link if it's a public application. I know A.Russell had mentioned it a while back, but there hasn't been any movement on that front in some time.
My User Contributions master list - my initial post links are down but scroll down page to find list to active links
|
|
|
Re: Speex format support for compressed voice files
[Re: Orange Brat]
#134440
06/07/07 19:00
06/07/07 19:00
|
Joined: Mar 2003
Posts: 5,377 USofA
fastlane69
Senior Expert
|
Senior Expert
Joined: Mar 2003
Posts: 5,377
USofA
|
Quote:
large amounts of audio.
...or large amounts of speech? I ask because lot's of 3DGS games have the former but almost none the latter.
And I have to admit I have no idea what the difference between speech and audio would be nor how the compression scheme would be different.
|
|
|
Re: Speex format support for compressed voice file
[Re: fastlane69]
#134441
06/08/07 00:00
06/08/07 00:00
|
Joined: Aug 2000
Posts: 7,490
Orange Brat
OP
Senior Expert
|
OP
Senior Expert
Joined: Aug 2000
Posts: 7,490
|
Good catch, I meant large amounts of speech. For audio, you can use the already supported Vorbis format (ogg). According to what I've read, Speex is designed specifically for speech. That dBpoweramp codec page says specifically not to use it for music. I guess it's "smart" enough to know the difference, and I don't see why the same company would create two formats, one for standard audio (Vorbis) and another for speech (Speex). The also have their answer to MPEG4 video called Theora (Wintermute Engine has supported this for sometime), and a few other projects, but Speex, Theora, and Vorbis (which 3DGS can already read) are the main ones for us. Anyway, thanks for catching that. It actually does make a difference. I'm going to do a bit more research on it, and if I find anything that really outlines the difference between "speech" and "audio" I'll post it here. @jcl: When you see this, if you could verify whether you might add this to your todo list, I would appreciate it greatly. It's not one of those "I need it now not yesterday" deals, but it would determine my next move in regards to a 3rd party alternative sooner rather than later. If you think it might make it in (should you decide to implement it) say in the next 6 months, then that's fine by me. I'm getting to the point in my project where I'm needing to make some decisions (some free, some not), so I'm in a heavy duty organizing mode. Sorry if I become a bother. Implementing Theora playback would be nice, too.
My User Contributions master list - my initial post links are down but scroll down page to find list to active links
|
|
|
Re: Speex format support for compressed voice file
[Re: Orange Brat]
#134442
06/08/07 05:27
06/08/07 05:27
|
Joined: Mar 2006
Posts: 2,503 SC, United States
xXxGuitar511
Expert
|
Expert
Joined: Mar 2006
Posts: 2,503
SC, United States
|
speech requires a lot less detail, and can be compressed differently to save space. Speech is mostly mid-range. Not too much of the high's or lows...
xXxGuitar511 - Programmer
|
|
|
Re: Speex format support for compressed voice file
[Re: adoado]
#134444
06/08/07 06:21
06/08/07 06:21
|
Joined: Aug 2000
Posts: 7,490
Orange Brat
OP
Senior Expert
|
OP
Senior Expert
Joined: Aug 2000
Posts: 7,490
|
Probably both. All 3DGS needs is the ability to open it up and play the format. The dBpoweramp audio convertor I linked to has an encoder plugin and it'll compress a non-compressed original voice file (probably a WAV) to the spx format. If you don't use any spoken dialogue or very little then it probably isn't something to use, however for projects with ALOT of spoken dialogue this is what it would be best used for. See the Facade example I gave in the first post. I remember when it was first released it was a massive 800MB download. I just recently looked at it again after a recent story on it posted at Gamasutra and as of version 1.1 everything had been compressed to the spx format and it reduced the size to 167MB (13XMB for the Mac version since an additional bit of info. isn't required for the Mac version).
While it is true that a lot of 3DGS projects aren't using a lot of spoken dialogue, it's also true that a lot aren't using bones animation, shaders, or multiplayer, yet we have access to those features should we need them. I'd love to be able to use Vorbis for music (which I am), Speex for speech, and Theora for any video files I include. All three formats are stored inside an OGG file, so it's a matter of including the other format (or two if Theora ever makes it in). I just hope the audio "hiccup" that others have cited can be eliminated. The entire process is pointless if a split second delay occurs every single time a new audio file is loaded. The Open Al and FMOD plugins eliminate this hiccup, but would it exist if 3DGS natively supported Speex?
My User Contributions master list - my initial post links are down but scroll down page to find list to active links
|
|
|
Re: Speex format support for compressed voice file
[Re: Orange Brat]
#134445
06/08/07 06:33
06/08/07 06:33
|
Joined: Jul 2006
Posts: 503 Australia
adoado
User
|
User
Joined: Jul 2006
Posts: 503
Australia
|
Oh ok then. So a Speex file is saved as a .spx? Or is it in a .ogg file? Just curious as I am searching the net now for a way to play speex files. Maybe if I can find the right resources I could do something... So far I cannot find many resources on this Thanks, adoado.
Last edited by adoado; 06/08/07 06:43.
|
|
|
Re: Speex format support for compressed voice file
[Re: adoado]
#134446
06/08/07 10:50
06/08/07 10:50
|
Joined: Aug 2000
Posts: 7,490
Orange Brat
OP
Senior Expert
|
OP
Senior Expert
Joined: Aug 2000
Posts: 7,490
|
From what I gather, the data is contained in the spx format but is stored in the ogg file, and you have to parse it or whatever. Given 3DGS will read an ogg audio file, I'm assuming they're parsing the Vorbis file from it. Ogg is the "transparent layer" container object that all of their formats are stored in (vorbis, theora, speex, etc). Check out the documentation section at the Speex site for technical info: http://www.speex.org/docs/api/speex-api-reference/index.html. Info related to their video format is at http://www.theora.org/. That encoder I keep mentioning (see my initial post for link) compresses an audio file into the spx format, so I'm assuming this needs to be "placed" into an ogg file or perhaps it can be read in the raw spx format. That info is likely on the speex site and would be something for a potential programmer or Conitec to research. Quote:
Speex is based on CELP and is designed to compress voice at bitrates ranging from 2 to 44 kbps. Some of Speex's features include:
-Narrowband (8 kHz), wideband (16 kHz), and ultra-wideband (32 kHz) compression in the same bitstream -Intensity stereo encoding -Packet loss concealment -Variable bitrate operation (VBR) -Voice Activity Detection (VAD) -Discontinuous Transmission (DTX) -Fixed-point port -Acoustic echo canceller -Noise suppression
Note that Speex has a number of features that are not present in other codecs, such as intensity stereo encoding, integration of multiple sampling rates in the same bitstream (embedded coding), and a VBR mode; see our comparison page for more.
My User Contributions master list - my initial post links are down but scroll down page to find list to active links
|
|
|
Re: Speex format support for compressed voice file
[Re: fastlane69]
#134448
06/09/07 05:52
06/09/07 05:52
|
Joined: Mar 2006
Posts: 2,503 SC, United States
xXxGuitar511
Expert
|
Expert
Joined: Mar 2006
Posts: 2,503
SC, United States
|
Speech is not on my priority list for my current project, so I will save it until my project is becomming finished. My project is small and won't require too much speech, just little phrases every now and then, so I'm not really in need of this right now. However, if you were creating an RPG then long texts might be really important
xXxGuitar511 - Programmer
|
|
|
|