Skip to main content

hoaencode

hoaencode(
@azimuth 0
@elevation 0
@distance 1
@order 1
@coordtype 'aed'
@dimension '3D'
@angleunit 0
@envtimeunit 0
) -> llll

Generates an audio process operation for panning the input buffer and encode it as a higher-order ambisonic buffer


Arguments

  • @azimuth [int/float/llll]: azimuth or X coordinate. (default: 0).
  • @elevation [int/float/llll]: elevation or y coordinate. (default: 0).
  • @distance [int/float/llll]: distance or Z coordinate. (default: 1).
  • @order [int]: ambisonics order. (default: 1).
  • @coordtype [symbol]: input coordinate type (default: 'aed').
    • 'aed': azimuth, elevation, and distance; or spherical coordinates.
    • 'xyz': cartesian coordinates.
    • 'azr': azimuth, Z, axial radius; or cylindrical coordinates.
  • @dimension [symbol]: dimensionality of ambisonics (default: '3D').
    • '2D': 2-dimensional.
    • '3D': 3-dimensional.
  • @angleunit [int]: unit for angles (default: 0).
    • 0: radians
    • 1: degrees
    • 2: turns
  • @envtimeunit [int]: unit for time values inside envelopes/bpfs. (default: 0).
    • 0: milliseconds
    • 1: samples
    • 2: duration ratio
    • 3: milliseconds difference
    • 4: samples difference

Output

higher-order ambisonics encoding operation [llll]


Usage

hoaencode is meant to be used with the process function:

$buffer = importaudio('singing.wav'); ## input buffer
$op = hoaencode(); ## processing operation
$buffer = $buffer.process($op); ## apply processing
$buffer.inspect('after hoaencode process')