Displaying 20 results from an estimated 1000 matches similar to: "Where can I find the implementation of function speex_encode( )"
2011 Nov 16
2
Just getting noise
I'm completely new to speex and I'm having issues adding it to my
application. I can pass raw PCM and that works fine so I know my
transmission code is fine however when I try to encode/decode using
speex I get noise almost like a whining/buzzing sound. I'm sure it's
and issue in my code but I'm not sure where to start looking other
then my gut tells me I'm not sizing or
2011 Nov 16
2
Just getting noise
Alright noted, I changed me code so that the state is created in the
constructor and destroyed in the destructor of the object. However I'm
still getting the same issue although I'm sure that would have bit me
sooner or later.
The new code is as follows.
virtual Enigma::u8* Encode(Enigma::u8* inputBuffer,size_t inputSize,
size_t& outputSize)
{
short *in=(short*)inputBuffer;
2005 Jun 22
1
Newbie - Encoding PCM
Hi all,
i've to encode voice from a voicemodem. I choose speex 1.0.5 for its quality
in voice encoding. I've tried to implement an encoder but unsuccesfully.
Here's my code:
/* ============ SPEEX stream ENCODER
============================================ */
int SPEEX_EncodePCM(struct _IDA_ClientSocket *IDA,char *buffer,unsigned char
*PCM,int num_samples) {
/* buffer point to the
2011 Nov 17
1
Just getting noise
I'm only doing one frame using speex_encode_int greatly simplifies my
code I'm not sure why the sample I was working off of was converting
the shorts to floats then calling the other encode/decode methods.
Based off of your suggestions I tried the following but I get the same
result.
virtual Enigma::u8* Encode(Enigma::u8* inputBuffer,size_t inputSize,
size_t& outputSize)
{
2004 Aug 06
1
openh323 conflict; can speex_encode take short?
openh323 speexcodec.cxx has:
BOOL SpeexCodec::EncodeFrame(BYTE * buffer, unsigned & length)
{
// convert PCM to float
float floatData[SAMPLES_PER_FRAME];
PINDEX i;
for (i = 0; i < SAMPLES_PER_FRAME; i++)
floatData[i] = sampleBuffer[i];
// encode PCM data in sampleBuffer to buffer
speex_bits_reset(bits);
speex_encode(coder_state, floatData, bits);
2008 Mar 29
0
GCC/ELF Visibility patch
Hi,
I've attached a patch against SVN r14645 which adds GCC visibility
information to all symbols exported from libspeex.so and libspeexdsp.so.
It includes a configure.ac change to test that both the compiler flags and
__attribute__((visibility)) works, and if so will
#define EXPORT __attribute__((visibility("default")))
and if not
#define EXPORT
I've attached a diff output
2008 Mar 29
2
GCC/ELF Visibility patch (fwd)
Hi,
I've attached a patch against SVN r14645 which adds GCC visibility information
to all symbols exported from libspeex.so and libspeexdsp.so. It includes a
configure.ac change to test that both the compiler flags and
__attribute__((visibility)) works, and if so will
#define EXPORT __attribute__((visibility("default")))
and if not
#define EXPORT
I've attached a diff output
2004 Aug 06
4
speex_encode / speex_encode_int ... already sorry =)
Hi, i know this question has already been asked, i've checked mailing
list logs but ...
I didn't figure out the solution for my question.
I want to use basic functionnality of speex, only VAD, no pre/post
filter, even no VBR. But i *really* want to use less mem/cpu i can.
So in which format should i pass data to speex_encode(_int) , float or
short ?
I quickly looked at the source code
2004 Aug 06
3
What is the format of the PCM/WAV data for speex_encode & speex_decode?
I'm confused about the format of the PCM/WAV data for speex_encode &
speex_decode
speex_encode(enc_state, input_frame, &bits);
In the manual, it says "input_frame is a (float *) pointing to the beginning
of a speech frame" (for encode)
But I've found that in speexenc.c and testenc.c, short* is used instead of
float*
So, isn't it signed 16 bit samples(if
2009 Nov 25
1
SpeexBits ...
Hi Marian,
I took a brief look at RFC 5574 and as far as I understand, you can simply do it like this:
SpeexBits b;
speex_encode(state, some320bytePCM1, &b);
speex_encode(state, some320bytePCM2, &b);
After that, get the encoded data with speex_bits_write and put it in your packet.
Mark
-----Original Message-----
From: speex-dev-bounces at xiph.org [mailto:speex-dev-bounces at
2008 Jun 30
0
Fwd: cannot install the package RMySQL
Hi,
I first report the installing error to the r-sig-mac mailing list but
it seems
nobody ever encounter this annoying problem and I got no replies. so I
am trying to forward it to this list, hope it never bothers.
Anyone had the same problem, or what does the warning message mean ?
Thank you in advance !
Begin forwarded message:
> From: Peng Jiang <jp021@sjtu.edu.cn>
> Date:
2011 Nov 16
0
Just getting noise
The way I do this is to compute the number of frames (by dividing the
size of my input by the number of bytes per frame and then calling
speex_encode_int() that many times. Something like
speex_bits_reset( &bits );
for( n = 0; n < num_frames; ++n )
{
speex_encode_int( enc_state,
(int16_t*)input_tail,
2011 Nov 16
0
Just getting noise
At just a first quick glance, I'm pretty sure that you don't want to be
creating and destroying the speex encoder/decoder with each frame. That's
supposed to stay the same for more-or-less the entire session.
Ken Smith
Cell: 425-443-2359
Email: ken at alanta.com
Blog: http://blog.wouldbetheologian.com/
On Wed, Nov 16, 2011 at 2:52 PM, Christopher Schaefer <disks86 at
2004 Sep 29
1
ARM w/ assembly & fixed point crash
I've targeted Speex to run under eCos with Thumb interworking using
arm-elf-gcc 3.3.3
I'd written a small test case to verifiy the operation:
#include <speex/speex.h>
void
speex_test(void)
{
SpeexBits bits;
unsigned int frame_size;
void *enc_state;
float *speex_frame;
cyg_uint64 t1, t2;
int i;
speex_frame = (float *)0x00030000; /* Address of Speex data
2004 Aug 06
0
speex_encode / speex_encode_int ... already sorry =)
On Sun, Apr 25, 2004 at 04:18:16PM +0200, crazylord wrote:
> Hi, i know this question has already been asked, i've checked mailing
> list logs but ...
> I didn't figure out the solution for my question.
>
> I want to use basic functionnality of speex, only VAD, no pre/post
> filter, even no VBR. But i *really* want to use less mem/cpu i can.
> So in which format
2006 May 21
2
Re: High pitched whine with Speex
When I just copy the microphone input buffer to the output buffer the
sound plays OK. But if I encode and decode the buffer through Speex I
get a high pitched constant tone in the background. I actually do hear
my voice speaking when I talk, but it's faint and much quieter than the
tone.
Here's what my data looks like:
Input is the first 5 floats of each input buffer.
Output is
2005 Jun 06
1
SpeexBits Questions
Thanks, it makes more sense to me now. Does speex_bit_read_from also
append in that manner?
Jean-Marc Valin wrote:
> speex_bits_reset is before encoding, not decoding. If you don't call it,
> then everything you encode will be appended so it will grow without end.
> As for the point of the SpeexBits struct, it's there as a sort of "array
> of bits" to it's easy
2005 Jun 06
1
SpeexBits Questions
The example in the documentation demonstrates using speex_bits_reset
before encoding and decoding each frame.
"
speex_bits_reset(&bits);
speex_encode(enc_state, input_frame, &bits);
nbBytes = speex_bits_write(&bits, byte_ptr, MAX_NB_BYTES);
"
What happens if this is not done? I think I'm missing the point of
having a SpeexBits object.
2004 Aug 06
0
What is the format of the PCM/WAV data for speex_encode & speex_decode?
Speex 1.0.3 uses floats, but the unstable version 1.1.x uses short.
Jean-Marc
Le ven 16/04/2004 16:04, Kenji Chan a crit :
> Im confused about the format of the PCM/WAV data for speex_encode &
> speex_decode
>
> speex_encode(enc_state, input_frame, &bits);
>
> In the manual, it says input_frame is a (float *) pointing to the
> beginning of a speech
2005 Jun 30
0
speex_encode segfault
Hi,
i'm following encoder example in the manual.pdf of speex documentation. Here's
my portion of code:
int SPEEX_EncodePCM(struct _IDA_ClientSocket *IDA,char *buffer,unsigned char
*PCM,int num_samples) {
int ret,c,d=0,nbBytes,ttBytes=0;
float PCM_F[160];
char cBits[200];
#ifndef DISABLESPEEX
speex_bits_reset(&IDA->speex_bits);
for(c=0;c<num_samples;c++) {