[Speex-dev] Problem encoding sine wave in 1.1.6 and somewhat in 1.0.4

Jean-Marc Valin Jean-Marc.Valin at USherbrooke.ca
Thu Jan 13 09:42:13 PST 2005


Le jeudi 13 janvier 2005 à 10:59 -0500, Jared Whitby a écrit :
> Interestingly enough.. I started playing around with preprocessing
> options in 1.1.6 and happened upon the denoise filter
> (SPEEX_PREPROCESS_SET_DENOISE). When i run the test tone using that
> option it is completely filtered out and I just get (complete)
> silence. When the test tone is intermixed with regular voice I only
> get the voice. So while i still don't quite understand why the test
> tone dorks up the encoder, it looks like I have a way around it.

Well, the denoiser is designed to remove any kind of stationary
background noise. You sinusoid fits that definition pretty well :-)

	Jean-Marc

> On Tue, 11 Jan 2005 08:54:38 -0500, Jared Whitby <jwhitby at gmail.com> wrote:
> > The test pattern is a part of our operations, and while it doesn't
> > matter if it is reproduced accurately, after it is run through the
> > encoder it never seems to recover. When only voice is used the codec
> > works great with no problems seeking and playing back on 1.0.4 or
> > 1.1.6.
> > 
> > I'm not quite sure why you didn't have a problem with the files. When
> > i ran test.wav through speexenc i didn't use any special settings just
> > speexenc infile outfile. I did use the windows version of speexenc...
> > I guess i could try it on linux also and see what results i get. Did
> > the file Speex1.1.6.spx i encoded play right for you? Or did it just
> > sound right on the one you encoded?
> > 
> > When i encode a file using 1.1.6 mixed with voice and the test
> > signal... as soon as the test signal occurs, the sound goes to garbage
> > after a couple of seconds and stays that way even after the test
> > signal has ended. If i seek past the test signal to good data... the
> > voice data starts playing again fine.
> > 
> > For 1.0.4 with mixed it works fine as long as I don't seek to a point
> > where the test signal is occuring. If i seek to a spot where voice
> > is.. everything is still fine. Even the test signal sounds fine, as
> > long as I let it play through.. and not seek to it.
> > 
> > Theres just something funny with that test signal that seems to put
> > the encoder in a degenerate state. When seeking I believe the encoder
> > state is reset so that would explain why when i seek to actual voice
> > data the sound clears up.
> > 
> > If you have a file encoded from test.wav that seems to work properly
> > could you forward it along to me so I can take a look at it?
> > 
> > When i use speexenc on the wav files, or my own encoder taking data
> > from our hardware card I still get the same results. I guess it could
> > be a problem with foobar2000 and the illiminable plugins I'm using for
> > playback, though I wouldn't think both would reproduce the exact same
> > results.
> > 
> > Jared
> > 
> > On Tue, 11 Jan 2005 05:38:58 -0500, Jean-Marc Valin
> > <Jean-Marc.Valin at usherbrooke.ca> wrote:
> > > Hi,
> > >
> > > The first thing I should saw is that Speex isn't designed to handle
> > > sinusoids, although it shouldn't produce garbage. I checked the files
> > > you upload and I've had no problem with it. Are you using any particular
> > > setting? Of course, this is one example of a file for which you cannot
> > > seek unless you actually seek on the decoded signal.
> > >
> > >         Jean-Marc
> > >
> > > Le lundi 10 janvier 2005 à 13:31 -0500, Jared Whitby a écrit :
> > > > I am currently using speex and ogg to archive voice data. The data
> > > > comes in PCM ulaw at
> > > > 8kHz and I use a table look up to convert it to normal 16-bit PCM
> > > > data. Whenver the sound
> > > > coming in is voice everything works perfectly. However, we
> > > > periodically run test signals through
> > > > our system to determine link problems.. etc. This test signal totally
> > > > hoses speex during
> > > > playback, but only when you try to seek. If you let it play straight
> > > > through everything is fine.
> > > > (Speex 1.0.4 library)
> > > >
> > > > I figured i would try 1.1.6 and see if it got any better... It works
> > > > for 2 seconds or so and goes to
> > > > garbage without seeking. I tried saving a sample of the data and
> > > > running it through the example
> > > > encoders and got the same result.
> > > >
> > > > If you go to http://www.digitalfoo.com/speex/ there are 3 files.
> > > >
> > > > test.wav is a 8kHz 16-bit wav of our test signal.
> > > >
> > > > Speex1.0.4.spx is test.wav run through speexenc v1.0.4
> > > >
> > > > Speex1.1.6.spx is test.wav run through speexenc v1.1.6
> > > >
> > > >
> > > > The 1.0.4 version seems fine until i try to seek to a different spot
> > > > in the file.
> > > >
> > > > For now I have been using foobar2000 and windows media player to play
> > > > the files back out
> > > > until I get the encoder working properly and write my own.
> > > >
> > > > Anyone have any suggestions or insight into this?
> > > >
> > > > Jared
> > > > _______________________________________________
> > > > Speex-dev mailing list
> > > > Speex-dev at xiph.org
> > > > http://lists.xiph.org/mailman/listinfo/speex-dev
> > > >
> > > --
> > > Jean-Marc Valin <Jean-Marc.Valin at USherbrooke.ca>
> > > Université de Sherbrooke
> > >
> > >
> > 
> 
> 
-- 
Jean-Marc Valin <Jean-Marc.Valin at USherbrooke.ca>
Université de Sherbrooke



More information about the Speex-dev mailing list