>That's a totally different topic. I do intend to reduce the wb memory<br>>usage, just like I did with the narrowband for 1.2beta1. Still, don't<br>>know where you take this 160k Word32 number (640 kB). I don't think
<br>>wideband requires anywhere near that amount of memory.<br><br>Sorry, it's 160kB. <br>What do you think?<br>and any suggestions for memory reduction?<br><br>Lianghu<br><br><br><div><span class="gmail_quote">On 11/16/06,
<b class="gmail_sendername">Jean-Marc Valin</b> <<a href="mailto:jean-marc.valin@usherbrooke.ca">jean-marc.valin@usherbrooke.ca</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
> Another issue is the memory allocations distributed so many places that<br>> it's hard to provide a single memory initial function interface.<br>><br>> In a VoIP case on ARM, the total memory size for speex codec should be
<br>> known at the inital stage since all the memories are allocated<br>> at the initial stage.<br><br>If you want everything in the same big block, all you need to do is<br>override the speex_alloc() function to give pointers to a big block
<br>you've previously allocated.<br><br>> In my current implementation, all the memory allocations are collected<br>> together to form one big structure like below,<br>><br>> typedef struct {<br>><br>> EncState enc_state;
<br>><br>> char stack[NB_ENC_STACK];<br>><br>> spx_word16_t winBuf[80];<br>><br>> spx_word16_t excBuf[612];<br>><br>> spx_word16_t swBuf[612];<br>><br>> spx_word16_t lagWindow[22];
<br><br>Yuk. That's so.... G.729 and ITU codecs :-) As much as you'd like<br>something like that, it would be a pain to maintain it. If you want<br>everything in one chunk, just go with the solution above.<br><br>> The structure defined above is used to allocate all memories after call
<br>> the initial function.<br>><br>> The problem here is the size of the structure which is very large(160k<br>> Word32) for wb which is unacceptable for ARM.<br><br>That's a totally different topic. I do intend to reduce the wb memory
<br>usage, just like I did with the narrowband for 1.2beta1. Still, don't<br>know where you take this 160k Word32 number (640 kB). I don't think<br>wideband requires anywhere near that amount of memory.<br><br> Jean-Marc
<br><br>> Any suggestion?<br>><br>> Regards,<br>><br>> Lianghu<br>><br>><br>> On 11/13/06, *Jean-Marc Valin* <<a href="mailto:jean-marc.valin@usherbrooke.ca">jean-marc.valin@usherbrooke.ca</a><br>
> <mailto:<a href="mailto:jean-marc.valin@usherbrooke.ca">jean-marc.valin@usherbrooke.ca</a>>> wrote:<br>><br>> Hi everyone,<br>><br>> As you may have guess, Speex 1.2 is slowly approaching, though there's
<br>> still a lot left to do so I can't say how long it'll take. I thought<br>> this was the right time to ask if there's anything missing or that can<br>> be improved to make 1.2 better. At this point, it can't be anything
<br>> major, but there are still some changes that are possible, e.g:<br>><br>> - Improving some component that doesn't behave very well.<br>> - Improving a confusing API.<br>> - Improving robustness of a component to a specific condition
<br>> - Adding a minor feature<br>> ...<br>><br>> So what's your favourite "I wish Speex could..." or "Speex sucks<br>> because..."? I won't promise I'll take everything into account, but I'll
<br>> do my best -- if not for 1.2, then maybe for 1.4. Oh, and no I will not<br>> make Speex compatible with G.729 :-)<br>><br>> Jean-Marc<br>><br>> P.S. I finally got around to posting my trivial Speex client that shows
<br>> how to use Speex with the echo canceller, preprocessor and jitter<br>> buffer. It's in svn at <a href="http://svn.xiph.org/trunk/speex/speexclient/">http://svn.xiph.org/trunk/speex/speexclient/</a><br>
> _______________________________________________<br>> Speex-dev mailing list<br>> <a href="mailto:Speex-dev@xiph.org">Speex-dev@xiph.org</a> <mailto:<a href="mailto:Speex-dev@xiph.org">Speex-dev@xiph.org
</a>><br>> <a href="http://lists.xiph.org/mailman/listinfo/speex-dev">http://lists.xiph.org/mailman/listinfo/speex-dev</a><br>><br>><br></blockquote></div><br>