Pat Smith
2007-Aug-23 11:52 UTC
[Speex-dev] Hints & examples for content creators & packagers
At speex.org, I read that Speex is well-suited to internet audio streaming and audio books. However, I am having difficulty finding or creating audio-book-type material of acceptable audio quality vs file size. For the sake of comparison, look at the speex sample in Ubuntu's example-content_26_all.deb vs http://podcast.msnbc.com/audio/podcast/pd_mtp.mp3 The mp3 sounds ok, streams and seeks well over poor net connections, and can easily have textual info added/modified as ID3 tags. The mp3 sounds much better, with a size of ~0.25MB/minute, vs ~0.3 for speex. Questions... Is there a simple app that will record to speex using a simple tape recorder-like interface (eg you can quickly rewind to your error, and continue from that point)? Is there any kind of filter/processor that will produce very compact low-bandwidth results so that playback sounds like telephone quality, without any of the scary digital overcompression effects? Can any user app play and seek speex streamed over http, and display and modify author/title/comments? Is there a way that someone listening to an audio book in Speex format can skip to a bookmark or to the next page? Is there a preprocessor that can help with spoken word that has music in the background? Is it unreasonable to suggest that all xiph formats use the same comment tools? Can vorbiscomment be adapted? Wish... Would anyone here be willing & able to provide a few diverse examples that show speex at its realworldish finest, along with technical details of how the speex files were created? eg: # interview recorded in an igloo # using builtin mic on a microsoft xpod at 48kHz # processed using sux 5.5: sux -l3 -m300 -r -nfg talk48kHz.wav talk4kHz.wav # encoded using speex 3.0: speexenc --vad --vbr --secretcode talk4kHz.wav talk.spx ... and then attach those details to the spx file as comments. Wouldn't it be worth creating even 1 good example to replace what's being distributed by the millions in Ubuntu? -- screech squawk wail
Jean-Marc Valin
2007-Aug-23 16:47 UTC
[Speex-dev] Hints & examples for content creators & packagers
Pat Smith a ?crit :> At speex.org, I read that Speex is well-suited to > internet audio streaming and audio books. However, I am > having difficulty finding or creating audio-book-type > material of acceptable audio quality vs file size.Speex is only well suited for those applications if the input is speech and the bit-rate is low (< 32 kbps).> For the sake of comparison, look at the speex sample in > Ubuntu's example-content_26_all.deb > vs > http://podcast.msnbc.com/audio/podcast/pd_mtp.mp3In general, you can't compare the quality on different input files.> The mp3 sounds ok, streams and seeks well over poor net > connections, and can easily have textual info > added/modified as ID3 tags. The mp3 sounds much better, > with a size of ~0.25MB/minute, vs ~0.3 for speex.0.3 MB/s means around 40 kbps, which is the highest bit-rate you can use for Speex. Also, it turns out that the file was recorded at 44.1 kHz, which is explicitly discouraged because Speex wasn't designed for that (only for 8, 16, 32 kHz). Also, at these rates, Vorbis is likely to perform better for your application, even for Speech. In any case, just listen to the samples on speex.org to get an idea.> Is there a simple app that will record to speex using a > simple tape recorder-like interface (eg you can quickly > rewind to your error, and continue from that point)?Not that I'm aware of, nor would I recommend it. You should always record to a wav file and *then* compress to Speex (or whatever codec), while tuning the parameters.> Is there any kind of filter/processor that will produce > very compact low-bandwidth results so that playback > sounds like telephone quality, without any of the scary > digital overcompression effects?Speex is designed for telephone-like quality. You'll need to resample your recording at 8 kHz and then encode with Speex. You'll then be able to get rates around 8 kbps (60 kB per minute).> Can any user app play and seek speex streamed over http, > and display and modify author/title/comments?Any app can do it... if they have support for Speex.> Is there a way that someone listening to an audio book > in Speex format can skip to a bookmark or to the next > page?Sure, if the app supports seeking and has the offsets somewhere.> Is there a preprocessor that can help with spoken word > that has music in the background?Speex is not designed for music. If you increase the bit-rate enough, it may be encoded not too badly, but that's all.> Is it unreasonable to suggest that all xiph formats use > the same comment tools? Can vorbiscomment be adapted?It could, it should, it hasn't yet.> Would anyone here be willing & able to provide a few > diverse examples that show speex at its realworldish > finest, along with technical details of how the speex > files were created? eg:If you want the finest quality, use Vorbis. If you want decent speech quality at very low rate, then use Speex.> # interview recorded in an igloo > > # using builtin mic on a microsoft xpod at 48kHzSpeex is not designed for 48 kHz and will perform poorly.> # processed using sux 5.5: > sux -l3 -m300 -r -nfg talk48kHz.wav talk4kHz.wav > > # encoded using speex 3.0: > speexenc --vad --vbr --secretcode talk4kHz.wav talk.spx > > ... and then attach those details to the spx file as > comments.If you give me a URL for a speech file (don't email it to me directly), I can encode it with Speex and send it back to you if you like.> Wouldn't it be worth creating even 1 good example to > replace what's being distributed by the millions in > Ubuntu?You mean like these ones: http://www.speex.org/samples/ . You know, I have no control over what crap Ubuntu puts in their examples. Jean-Marc