You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
CMSIS-DSP/ComputeGraph/cg/nodes/cpp/StreamingNodes
Christophe Favergeon 66ea68b096 Added a dynamic mode to the compute graph.
The compute graph hierarchy (Python and C++) has been modified.
It will break the code using the CG and the include and import will
have to be modified.

New function prepareForRunning is needed in CG nodes even if not used in
static mode. Without this function, code using compute graph won't build.
3 years ago
..
CMSIS_RTOS Added a dynamic mode to the compute graph. 3 years ago
Config Added a dynamic mode to the compute graph. 3 years ago
RingBuffer Added a dynamic mode to the compute graph. 3 years ago
VHT Added a dynamic mode to the compute graph. 3 years ago
README.md Added a dynamic mode to the compute graph. 3 years ago

README.md

Streaming Nodes

This is an example implementation to be used with Arm Virtual Hardware (AVH).

It is requiring headers and source files provided by AVH.

Those files are not needed at all to use the Compute Graph.

Those files are kept because they are used in the AVH-SystemModeling example.

But there are simpler way to interface the compute graph to an audio interrupt.

Those nodes are considered as deprecated. Don't use them.

RingBuffer

It is a way to connect the compute graph with static flow to an audio source or sink.

The node part is implemented in the AudioSource and AudioSink parts.

The main implementation is in RingBuffer.

To port it to new environments:

  • A file RingPrivate.h must be written. It is included by RingBuffer.cpp to customize some part of the implementation
  • A file managing the audio interrupts must be written an interact with the Ring buffers
  • The file RingConfig.h must be provided to size the buffers
  • Most of the time the Ring buffer will have only 2 buffers and will be a ping-pong buffer.