AtkMatrix:
Filter:
atk-sc3/Classes (extension) | Libraries > Ambisonic Toolkit > Matrix & Kernel > Internals

AtkMatrix
ExtensionExtension

A superclass to the Atk's various matrix classes.

Description

An AtkMatrix is not typically instantiated directly, but rather through one of its subclasses: FoaEncoderMatrix, FoaDecoderMatrix, FoaXformerMatrix, HoaMatrixEncoder, HoaMatrixDecoder, and HoaMatrixXformer.

Class Methods

.new

*new should not be called directly from AtkMatrix but rather is called from the various creation methods of its subclasses: FoaEncoderMatrix, FoaDecoderMatrix, FoaXformerMatrix, HoaMatrixEncoder, HoaMatrixDecoder, or HoaMatrixXformer.

Instance Methods

Information

.info

A convenience method to post the properties of the matrix, including metadata if the matrix was loaded from a .yml file.

.order

Ambisonic order.

.op

Answers 'matrix', i.e. the type of operation used to compute the resulting signals.

.kind

Answers the kind.

.numInputs

Number of inputs.

.numOutputs

Number of outputs.

Matrix

.matrix

Returns the raw coefficient Matrix.

.asArray

Returns the matrix as a new Array of rows.

File handling

.filePath

Answers the path of the file used to create the instance, or nil if not created by loading a matrix from a file.

.fileName

Answers the name of the file used to create the instance, or nil if not created by loading a matrix from a file.

.fileParse

If the instance was created by loading a .yml file, this method returns the IdentityDictionary containing the parsed metadata. This can be useful if anything was stored in the metadata that can be subsequently used once reloaded, such as encoding directions, rotations, etc.

NOTE: For simply a quick glance at the metadata, it's recommended to use -info.

.writeToFile

Write the matrix to a file

Arguments:

fileNameOrPath

A String of the file name. The file extension determines the format:

  • .yml allows for additional user-specified metadata (recommended).
  • .txt writes the matrix coefficients only, in rows.
  • .mosl.txt creates basic matrix files compatible with the ATK for Reaper, a set of JSFX plugins for the Reaper DAW.

You may provide a full path if you would like to save the file somewhere other than the default location in the Atk extensions folder. See the Discussion below for more information.

note

A String that is a short description or bit of info about the matrix to store for future reference.

attributeDictionary

A Dictionary containing any information that's useful to store in key:value pairs. Keys that match getters in the AtkMatrix will take precedence over the defaults. See the Discussion for more details.

overwrite

A boolean specifying whether you'd like to force overwriting an existing file of the same name and extension.

Discussion:

The Guide-to-ATK-Matrix-Files offers examples and more discussion regarding writing and reading matrices and metadata, including how to generate matrices for use in Reaper.