van Bijleveld Christian (ST-CO/ENG1.3)
2013-May-13 12:57 UTC
[opus] OPUS in embedded platform
Hello, I am interested in porting OPUS to an embedded platform. The idea is that the encoder and decoder will run on different processors. In order to choose the proper platform, I need an estimate of the resources which are needed for OPUS. I read the following in the OPUS wiki: "The Opus code base is written in C89 and should run on the vast majority of recent (and not so recent) CPUs. A few of the platforms on which Opus has been tested and is known to run include x86, x86-64, ARM, Itanium, Blackfin, and SPARC." Are there, or is it known, figures regarding the resources needed for OPUS to run on an embedded platform such as DSP or microprocessor? If exact figures are not available, but if anyone can give an indication about which type of platform is required at least, I would appreciate very much. I can image that the amount of resources for the encoder and the decoder may be different. Another question: does OPUS need the support of an Operating System or Real Time Kernel (ie; threads,...)? Met vriendelijke groeten | Best Regards, Christian van Bijleveld Bosch Security Systems BV Bosch Communications Systems, BL Public Address and Conference Systems (ST-CO/ENG1.3) P.O. Box 80 002 5600 JB Eindhoven The Netherlands www.boschsecurity.com<http://www.boschsecurity.com> T. +31 (0)40 257 7076 F. +31 (0)40 257 7091 christian.vanbijleveld at nl.bosch.com<mailto:christian.vanbijleveld at nl.bosch.com> -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/opus/attachments/20130513/1e31aa21/attachment.htm
On 05/13/2013 08:57 AM, van Bijleveld Christian (ST-CO/ENG1.3) wrote:> I am interested in porting OPUS to an embedded platform. The idea is > that the encoder and decoder will run on different processors. In order > to choose the proper platform, I need an estimate of the resources which > are needed for OPUS.It's very hard to provide estimates because the complexity varies by a large amount depending on the fearures used and on the value of the complexity setting being selected.> I read the following in the OPUS wiki: > > ?The Opus code base is written in C89 and should run on the vast > majority of recent (and not so recent) CPUs. A few of the platforms on > which Opus has been tested and *is known to run include x86, x86-64, > ARM, Itanium, Blackfin, and SPARC*.? > Are there, or is it known, figures regarding the resources needed for > OPUS to run on an embedded platform such as DSP or microprocessor? If > exact figures are not available, but if anyone can give an indication > about which type of platform is required at least, I would appreciate > very much. I can image that the amount of resources for the encoder and > the decoder may be different.The only hard requirement on the platform is that the chip must at least be able to natively compute 16-bit multiplications with 32-bit accumulation. That rules out most low-power micro-controllers.> Another question: does OPUS need the support of an Operating System or > Real Time Kernel (ie; threads,?)?The Opus code is very generic C89 code. It does not require anything that isn't part of C89 and in fact, it makes it relatively easy to remove the dependency on libc (mostly just a matter of changing the malloc()/free() wrappers). Cheers, Jean-Marc> Met vriendelijke groeten | Best Regards, > *Christian van Bijleveld > > *Bosch Security Systems BV > Bosch Communications Systems, BL Public Address and Conference Systems > (ST-CO/ENG1.3) > P.O. Box 80 002 > 5600 JB Eindhoven > The Netherlands > _www.bosch__security.com_ <http://www.boschsecurity.com> > T. +31 (0)40 257 7076 > F. +31 (0)40 257 7091 > _christian.vanbijleveld at nl.bosch.com_ > <mailto:christian.vanbijleveld at nl.bosch.com> > > > > > > _______________________________________________ > opus mailing list > opus at xiph.org > http://lists.xiph.org/mailman/listinfo/opus >