> I believe there is new resampling functionality in the speex svn head, > although I haven't tested it yet. You might also want to check out > 'Secret Rabbit Code' for your resampling.Yes, I've just been working on a resampler recently. Its changing a lot, but it's now usable. I'd actually be quite happy to have some feedback on it. Jean-Marc> Hope this helps. > Dave > > > ________________________________ > > From: speex-dev-bounces@xiph.org > [mailto:speex-dev-bounces@xiph.org] On Behalf Of Randy Schefiele > Sent: Saturday, 3 February 2007 7:12 AM > To: speex-dev@xiph.org > Subject: [Speex-dev] Speex and RTP > > > Hi - > > I am currently developing a RTSP/RTP/SDP solution to stream > Speex encoded data. Using my current source, I have successfully > streamed u-law and PCM encoded audio but have been unsuccessful thus far > with Speex. > > Because of some constraints of my system, I am encoding audio at > 11.025kHz. I am still using the 160 samples per frame which makes my > frame size 28 bytes. I have successfully written the SDP needed to > describe the Speex stream but I haven't found a player that will play > the stream. I could be doing something wrong, but does anyone know of > any players that can play RTP Speex streams so I can be sure that my > solution is incorrect? > > Also, I have looked over the draft RFC of the Speex RTP payload > and I was curious to know if, because I am not using a standard sample > rate, my solution will work. In the draft RFC (and the Speex manual for > that matter) it always refers to Speex frames containing 20ms of audio. > In my case, a Speex frame actually contains roughly 14.5 seconds of > audio. Am I going to need to hack the Speex encoder to make my frames > be 20ms in order for the RTP to successfully play? > > Any advice/help anyone can give would be greatly appreciated. > > Thanks! > Randy > > > > ________________________________ > > The fish are biting. > Get more visitors > <http://us.rd.yahoo.com/evt=49679/*http://searchmarketing.yahoo.com/arp/ > sponsoredsearch_v2.php?o=US2140&cmp=Yahoo&ctv=Q107Tagline&s=Y&s2=EM&b=50 >> on your site using Yahoo! Search Marketing. > <http://us.rd.yahoo.com/evt=49679/*http://searchmarketing.yahoo.com/arp/ > sponsoredsearch_v2.php?o=US2140&cmp=Yahoo&ctv=Q107Tagline&s=Y&s2=EM&b=50 > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Speex-dev mailing list > Speex-dev@xiph.org > http://lists.xiph.org/mailman/listinfo/speex-dev
Hi Jean-Marc, Just some initial feedback, I've just tried to build svn head using the Visual Studio 2005 compiler, and had the following issues: 1. Missing definition of M_PI if it's undefined (and it is on this platform) 2. In speex_resampler_process_int, the compliler can't determine the value of *in_len and *out_len at compile time and thus determine the size of the x and y arrays. I've resolved these issues locally with quick and obvious hacks and when I get a chance I'll integrate your resampler into some code of ours and see how it goes. We're currently using a combination of my own resampling code (for simple cases) and the Windows ACM Library (which yields poor results, no filtering as far as I can tell) so your development of this functionality is quite timely for us (thanks :) ). Cheers, Dave> -----Original Message----- > From: Jean-Marc Valin [mailto:jean-marc.valin@usherbrooke.ca] > Sent: Monday, 5 February 2007 9:27 PM > To: David Hogan > Cc: Randy Schefiele; speex-dev@xiph.org > Subject: Re: [Speex-dev] Speex and RTP > > > I believe there is new resampling functionality in the > speex svn head, > > although I haven't tested it yet. You might also want to check out > > 'Secret Rabbit Code' for your resampling. > > Yes, I've just been working on a resampler recently. Its > changing a lot, > but it's now usable. I'd actually be quite happy to have some feedback > on it. > > Jean-Marc > > > > Hope this helps. > > Dave > > > > > > ________________________________ > > > > From: speex-dev-bounces@xiph.org > > [mailto:speex-dev-bounces@xiph.org] On Behalf Of Randy Schefiele > > Sent: Saturday, 3 February 2007 7:12 AM > > To: speex-dev@xiph.org > > Subject: [Speex-dev] Speex and RTP > > > > > > Hi - > > > > I am currently developing a RTSP/RTP/SDP solution to stream > > Speex encoded data. Using my current source, I have successfully > > streamed u-law and PCM encoded audio but have been > unsuccessful thus far > > with Speex. > > > > Because of some constraints of my system, I am encoding audio at > > 11.025kHz. I am still using the 160 samples per frame > which makes my > > frame size 28 bytes. I have successfully written the SDP needed to > > describe the Speex stream but I haven't found a player that > will play > > the stream. I could be doing something wrong, but does > anyone know of > > any players that can play RTP Speex streams so I can be sure that my > > solution is incorrect? > > > > Also, I have looked over the draft RFC of the Speex RTP payload > > and I was curious to know if, because I am not using a > standard sample > > rate, my solution will work. In the draft RFC (and the > Speex manual for > > that matter) it always refers to Speex frames containing > 20ms of audio. > > In my case, a Speex frame actually contains roughly 14.5 seconds of > > audio. Am I going to need to hack the Speex encoder to > make my frames > > be 20ms in order for the RTP to successfully play? > > > > Any advice/help anyone can give would be greatly appreciated. > > > > Thanks! > > Randy > > > > > > > > ________________________________ > > > > The fish are biting. > > Get more visitors > > > <http://us.rd.yahoo.com/evt=49679/*http://searchmarketing.yahoo.com/arp/> > > sponsoredsearch_v2.php?o=US2140&cmp=Yahoo&ctv=Q107Tagline&s=Y&s2=EM&b=50> >> on your site using Yahoo! Search Marketing. > > > <http://us.rd.yahoo.com/evt=49679/*http://searchmarketing.yahoo.com/arp/> > > sponsoredsearch_v2.php?o=US2140&cmp=Yahoo&ctv=Q107Tagline&s=Y&s2=EM&b=50> > > > > > > > > -------------------------------------------------------------- > ---------- > > > > _______________________________________________ > > Speex-dev mailing list > > Speex-dev@xiph.org > > http://lists.xiph.org/mailman/listinfo/speex-dev >
> 1. Missing definition of M_PI if it's undefined (and it is on this > platform)Just fixed it in svn. Thanks.> 2. In speex_resampler_process_int, the compliler can't determine the > value of *in_len and *out_len at compile time and thus determine the > size of the x and y arrays.Yes, it's still an annoyance that MS can't figure out how to write a C99 compiler :-( I'll (eventually) "fix" that by falling back on alloca() and/or malloc().> I've resolved these issues locally with quick and obvious hacks and when > I get a chance I'll integrate your resampler into some code of ours and > see how it goes. We're currently using a combination of my own > resampling code (for simple cases) and the Windows ACM Library (which > yields poor results, no filtering as far as I can tell) so your > development of this functionality is quite timely for us (thanks :) ).I wouldn't be surprised if it was yet another library that thinks linear interpolation is OK (hint to all audio library developers it NOT). One of the main reason why I wrote this resampler is that I'm really tired of hearing aliasing coming from linear interpolation resamplers. Anyway, let me know how it works for you and if there's anything else that needs to be fixed. Jean-Marc> Cheers, > Dave > > >> -----Original Message----- >> From: Jean-Marc Valin [mailto:jean-marc.valin@usherbrooke.ca] >> Sent: Monday, 5 February 2007 9:27 PM >> To: David Hogan >> Cc: Randy Schefiele; speex-dev@xiph.org >> Subject: Re: [Speex-dev] Speex and RTP >> >>> I believe there is new resampling functionality in the >> speex svn head, >>> although I haven't tested it yet. You might also want to check out >>> 'Secret Rabbit Code' for your resampling. >> Yes, I've just been working on a resampler recently. Its >> changing a lot, >> but it's now usable. I'd actually be quite happy to have some feedback >> on it. >> >> Jean-Marc >> >> >>> Hope this helps. >>> Dave >>> >>> >>> ________________________________ >>> >>> From: speex-dev-bounces@xiph.org >>> [mailto:speex-dev-bounces@xiph.org] On Behalf Of Randy Schefiele >>> Sent: Saturday, 3 February 2007 7:12 AM >>> To: speex-dev@xiph.org >>> Subject: [Speex-dev] Speex and RTP >>> >>> >>> Hi - >>> >>> I am currently developing a RTSP/RTP/SDP solution to stream >>> Speex encoded data. Using my current source, I have successfully >>> streamed u-law and PCM encoded audio but have been >> unsuccessful thus far >>> with Speex. >>> >>> Because of some constraints of my system, I am encoding audio at >>> 11.025kHz. I am still using the 160 samples per frame >> which makes my >>> frame size 28 bytes. I have successfully written the SDP needed to >>> describe the Speex stream but I haven't found a player that >> will play >>> the stream. I could be doing something wrong, but does >> anyone know of >>> any players that can play RTP Speex streams so I can be sure that my >>> solution is incorrect? >>> >>> Also, I have looked over the draft RFC of the Speex RTP payload >>> and I was curious to know if, because I am not using a >> standard sample >>> rate, my solution will work. In the draft RFC (and the >> Speex manual for >>> that matter) it always refers to Speex frames containing >> 20ms of audio. >>> In my case, a Speex frame actually contains roughly 14.5 seconds of >>> audio. Am I going to need to hack the Speex encoder to >> make my frames >>> be 20ms in order for the RTP to successfully play? >>> >>> Any advice/help anyone can give would be greatly appreciated. >>> >>> Thanks! >>> Randy >>> >>> >>> >>> ________________________________ >>> >>> The fish are biting. >>> Get more visitors >>> >> <http://us.rd.yahoo.com/evt=49679/*http://searchmarketing.yaho > o.com/arp/ >> sponsoredsearch_v2.php?o=US2140&cmp=Yahoo&ctv=Q107Tagline&s=Y& > s2=EM&b=50 >>>> on your site using Yahoo! Search Marketing. >> <http://us.rd.yahoo.com/evt=49679/*http://searchmarketing.yaho > o.com/arp/ >> sponsoredsearch_v2.php?o=US2140&cmp=Yahoo&ctv=Q107Tagline&s=Y& > s2=EM&b=50 >>> >>> >>> >> -------------------------------------------------------------- >> ---------- >>> _______________________________________________ >>> Speex-dev mailing list >>> Speex-dev@xiph.org >>> http://lists.xiph.org/mailman/listinfo/speex-dev >
Hi Jean-Marc, As promised, I 'got a chance' and had a play with your resampler :) I've tested the following conversions: 48000 <-> 16000 44100 <-> 16000 48000 <-> 8000 44100 <-> 8000 16000 <-> 8000 One thing I've noticed is that even on the highest quality, I seem to be getting plenty of high pitch artifacts - perhaps I am using it wrong. My main test is from 48000Hz -> 8000Hz, for which I previously ran a 4000Hz lowpass filter over the 48000Hz data, followed by dropping 5/6 samples. Integrating either a 4000Hz or 8000Hz lowpass filter for each of the above cases however produces nice results. It's definitely handy to be able to do 44100Hz conversions now :) Was it your intention that additional filtering be required when using the resampler? If not then I've probably botched the usage somehow. Cheers, Dave> and > when > I get a chance I'll integrate your resampler into some code of oursand> see how it goes. We're currently using a combination of my own > resampling code (for simple cases) and the Windows ACM Library (which > yields poor results, no filtering as far as I can tell) so your > development of this functionality is quite timely for us (thanks :) ). > > Cheers, > Dave > > > > -----Original Message----- > > From: Jean-Marc Valin [mailto:jean-marc.valin@usherbrooke.ca] > > Sent: Monday, 5 February 2007 9:27 PM > > To: David Hogan > > Cc: Randy Schefiele; speex-dev@xiph.org > > Subject: Re: [Speex-dev] Speex and RTP > > > > > I believe there is new resampling functionality in the > > speex svn head, > > > although I haven't tested it yet. You might also want to check out > > > 'Secret Rabbit Code' for your resampling. > > > > Yes, I've just been working on a resampler recently. Its > > changing a lot, > > but it's now usable. I'd actually be quite happy to have some > feedback > > on it. > > > > Jean-Marc > > > > > > > Hope this helps. > > > Dave