Hi list ! I'm Patrick, a french student. i am developping a kind of softphone for pocket PC using speex. Sorry in advance for my bad english. Till now, i had good results, but now i've a problem with encoding. so to summarize, here is a short description of my work : I'm working on pocket pc I'm developing a GUI in C# I'm developing a dll in C++ which use speex functions I capture audio from microphone using windows wave API. For it, I fill several buffers of 20ms, 160 samples. When the first or one of this buffer is full, a callback is called by wave API. So, at this moment, i want to encode this audio data. (and write them in a file) But apparently, it's to slow, and consequently, all my data are not written. I've read some topic about that, and i guess i need to use the fixed-point stuff. I tried to use speex_encode_int(...) instead of speex_encode(...) but i have the same result when i read my file : no sound. I tried as well to change quality and complexity, and i have same bad result. My program work correctly if i don't encode the data, i get a perfect sound. So my problem is the encoding ... So my question is, how can i use fixed-point instead of floating-point ? (maybe i need to specify "--enable-fixed-point" but how can i do that on VS2005 ? ) Thanks a lot for your help. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20060705/10460570/attachment.htm
Most important thing: have you compiled Speex with FIXED_POINT enabled? Jean-Marc Le mercredi 05 juillet 2006 ? 17:51 +0100, patrick andrieux a ?crit :> Hi list ! > > I'm Patrick, a french student. > i am developping a kind of softphone for pocket PC using speex. > Sorry in advance for my bad english. > > Till now, i had good results, but now i've a problem with encoding. > > so to summarize, here is a short description of my work : > I'm working on pocket pc > I'm developing a GUI in C# > I'm developing a dll in C++ which use speex functions > > I capture audio from microphone using windows wave API. > For it, I fill several buffers of 20ms, 160 samples. > When the first or one of this buffer is full, a callback is called by > wave API. > So, at this moment, i want to encode this audio data. (and write them > in a file) > > But apparently, it's to slow, and consequently, all my data are not > written. > I've read some topic about that, and i guess i need to use the > fixed-point stuff. > > I tried to use speex_encode_int(...) instead of speex_encode(...) > but i have the same result when i read my file : no sound. > I tried as well to change quality and complexity, and i have same bad > result. > My program work correctly if i don't encode the data, i get a perfect > sound. > So my problem is the encoding ... > > So my question is, > how can i use fixed-point instead of floating-point ? > (maybe i need to specify "--enable-fixed-point" but how can i do that > on VS2005 ? ) > > Thanks a lot for your help. > _______________________________________________ > Speex-dev mailing list > Speex-dev@xiph.org > http://lists.xiph.org/mailman/listinfo/speex-dev
If you look at the svn version of the code. In the win32/vs2005 directory is the vcproj file for speex. It already contains build configurations for windows mobile 5 pocketpc editions. You can use/look at that. Zen. patrick andrieux wrote:> Hi list ! > > I'm Patrick, a french student. > i am developping a kind of softphone for pocket PC using speex. > Sorry in advance for my bad english. > > Till now, i had good results, but now i've a problem with encoding. > > so to summarize, here is a short description of my work : > I'm working on pocket pc > I'm developing a GUI in C# > I'm developing a dll in C++ which use speex functions > > I capture audio from microphone using windows wave API. > For it, I fill several buffers of 20ms, 160 samples. > When the first or one of this buffer is full, a callback is called by > wave API. > So, at this moment, i want to encode this audio data. (and write them > in a file) > > But apparently, it's to slow, and consequently, all my data are not > written. > I've read some topic about that, and i guess i need to use the > fixed-point stuff. > > I tried to use speex_encode_int(...) instead of speex_encode(...) > but i have the same result when i read my file : no sound. > I tried as well to change quality and complexity, and i have same bad > result. > My program work correctly if i don't encode the data, i get a perfect > sound. > So my problem is the encoding ... > > So my question is, > how can i use fixed-point instead of floating-point ? > (maybe i need to specify "--enable-fixed-point" but how can i do that > on VS2005 ? ) > > Thanks a lot for your help. > ------------------------------------------------------------------------ > > _______________________________________________ > Speex-dev mailing list > Speex-dev@xiph.org > http://lists.xiph.org/mailman/listinfo/speex-dev >