Displaying 11 results from an estimated 11 matches similar to: "Global stack on Cortex-M4"
2019 Feb 17
2
Custom mode
Hi all !
If someone could give me a hint on how to proceed with the following i'd be
very happy:
I have a test setup on an nrf52832 (Cortex M4) in which I receive audio
from a PDM microphone (64 sample frame) and pass it directly to an I2S
device i.e. from ISR to ISR. With uncompressed audio this works just fine.
Now I try to insert OPUS1.3 in the path but cannot make it work. The
2012 Aug 31
1
Memory Size?
In order to determine the optimum heap size requirements for my embedded
C55xx design, I have used the following to get the encoder and decoder
memory requirements:
size = opus_encoder_get_size(config.channels);
enc = malloc(size);
error = opus_encoder_init(enc, config.Fs, config.channels,
config.application);
size = opus_decoder_get_size(config.channels);
2019 Feb 20
0
Fwd: Custom mode
---------- Forwarded message ---------
From: Peter Svensson <petersvenss85 at gmail.com>
Date: tis 19 feb. 2019 kl 20:43
Subject: Re: [opus] Custom mode
To: Emily Bowman
Hi Emily !
Thank you for responding.
I think my problem is not (yet) with OPUS itself. Encoding at complexity
0 takes 1.6ms ( 4.342ms at complexity 10 !) and decoding takes 1.9ms.
3.5ms, out of my 4.096ms budget, is
2019 Nov 13
2
Compiling libc++ using GNU Arm Embedded Toolchain for arm-cortex-m4
Hello,
lately, I have been thinking about how to resolve the problem with that the
program size increases enormously when including <iostream> when compiling
with libstdc++. In this library, in <iostream> there is a static object
__ioinit initialized like so:
...
// For construction of filebuffers for cout, cin, cerr, clog et. al.
static ios_base::Init __ioinit;
...
This
2017 Oct 18
0
Global stack on Cortex-M4
On 10/18/2017 01:40 PM, Eric wrote:
> Secondly; With the "overide" directives above no dynamic memory
> allocation is supposed to happen. However, the following call chain
> (obviously) cause a crash:
>
> opus_encode(..)->
> opus_encode_native(..)->ALLOC_STACK->opus_alloc_scratch(..)->opus_alloc(..)
NONTHREADSAFE_PSEUDOSTACK requires a working allocator.
2016 Feb 18
0
Use opus-tools on Android
Hello. I'm trying to use opus-tools on Android to encode wav data but I couldn't build it. I need to resample my raw data so opusenc does its job. Is it possible to use opus-tools on Android? OPUS is the first citizen in my app but not sure which flags I need to add to build this.
LOCAL_CFLAGS := -w -std=gnu99 -O2 -DNULL=0 -DSOCKLEN_T=socklen_t -DLOCALE_NOT_USED -D_LARGEFILE_SOURCE=1
2015 Aug 25
4
OPUS on bare metal ARM
Hi everyone,
I?m currently trying to use opus on a ST ARM (STM32F407) without any OS (bare metal).
The aim of my project is to transmit voice over CAN bus.
The main issue I have is that opus fail to allocate memory, the ALLOC macro always return a NULL pointer.
I have sure that I have enough free space to allocate buffers.
Is there anyone who already try this or have meet this issue ?
Thanks
2011 Apr 18
3
CELT grabbing 100KB of memory right off the top
Is there a particular reason why CELT grabs 100KB of stack immediately?
Is that really required or can that be trimmed down some/a lot?
-a
2012 Sep 26
5
[LLVMdev] mips16 puzzle
We already divided out our classes as you did for ARM.
The problem here is that we have a store/load byte/halfword to/from a
Frame object.
We know at that time that it's not going to be possible to store it
using SP because there is only such instructions for store/load of a word.
What we would want to do is to move SP into a Mips 16 register and then
do a indexed load/store off of that
2012 Sep 26
0
[LLVMdev] mips16 puzzle
Ok. That's a somewhat different problem, then. Devil will be in the details of what you want to do. A few options. First is to always have a standard frame pointer register available and reference off of that. Caveat: dynamic stack realignment and vararrays muck with that more than a bit. Second is what gcc is doing and reserve a register just for this in addition to the frame register.
2012 Sep 29
1
[LLVMdev] mips16 puzzle
Turned out to be a rather simple fix.
Just copied SP to a virtual register in the beginning of the function.
Then added an extra operand to the DAGs with stack reference load/store,
with the extra operand equal to this virtual register if the Parent of
the address is a LOAD/STORE of an 8 or 16 bit quantity.
It worked fine. When needed SP got copied to a mips 16 register and when
the SP alias