AAX SDK 2.6.1
Avid Audio Extensions Development Kit
Loading...
Searching...
No Matches
AAX_IACFHostProcessor.h
Go to the documentation of this file.
1/*================================================================================================*/
2/*
3 *
4 * Copyright 2013-2017, 2023 Avid Technology, Inc.
5 * All rights reserved.
6 *
7 * CONFIDENTIAL: this document contains confidential information of Avid. Do
8 * not disclose to any third party. Use of the information contained in this
9 * document is subject to an Avid SDK license.
10 *
11 */
12
19/*================================================================================================*/
20
21
22#ifndef AAX_IACFHOSTPROCESSOR_H
23#define AAX_IACFHOSTPROCESSOR_H
24
25#include "AAX.h"
26
27#ifdef __clang__
28#pragma clang diagnostic push
29#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
30#endif
31
32#include "acfunknown.h"
33
36class AAX_IString;
37
52{
53public:
54 virtual AAX_Result Initialize(IACFUnknown* iController) = 0;
55 virtual AAX_Result Uninitialize() = 0;
56
57 virtual AAX_Result InitOutputBounds ( int64_t iSrcStart, int64_t iSrcEnd, int64_t * oDstStart, int64_t * oDstEnd ) = 0;
58 virtual AAX_Result SetLocation ( int64_t iSample ) = 0;
59
60 virtual AAX_Result RenderAudio ( const float * const inAudioIns [], int32_t inAudioInCount, float * const iAudioOuts [], int32_t iAudioOutCount, int32_t * ioWindowSize ) = 0;
61 virtual AAX_Result PreRender ( int32_t inAudioInCount, int32_t iAudioOutCount, int32_t iWindowSize ) = 0;
62 virtual AAX_Result PostRender () = 0;
63
64 virtual AAX_Result AnalyzeAudio ( const float * const inAudioIns [], int32_t inAudioInCount, int32_t * ioWindowSize ) = 0;
65 virtual AAX_Result PreAnalyze ( int32_t inAudioInCount, int32_t iWindowSize ) = 0;
66 virtual AAX_Result PostAnalyze () = 0;
67};
68
77{
78public:
79 virtual AAX_Result GetClipNameSuffix ( int32_t inMaxLength, AAX_IString* outString ) const = 0;
80};
81
82#ifdef __clang__
83#pragma clang diagnostic pop
84#endif
85
86#endif //AAX_IACFHOSTPROCESSOR_H
Various utility definitions for AAX.
int32_t AAX_Result
Definition: AAX.h:334
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:252
Versioned interface for an AAX host processing component.
Definition: AAX_IACFHostProcessor.h:52
virtual AAX_Result Initialize(IACFUnknown *iController)=0
Host Processor initialization.
virtual AAX_Result InitOutputBounds(int64_t iSrcStart, int64_t iSrcEnd, int64_t *oDstStart, int64_t *oDstEnd)=0
Sets the processing region.
virtual AAX_Result Uninitialize()=0
Host Processor teardown.
virtual AAX_Result PostAnalyze()=0
Invoked at the end of an Analysis pass.
virtual AAX_Result PreAnalyze(int32_t inAudioInCount, int32_t iWindowSize)=0
Invoked right before the start of an Analysis pass.
virtual AAX_Result AnalyzeAudio(const float *const inAudioIns[], int32_t inAudioInCount, int32_t *ioWindowSize)=0
Override this method if the plug-in needs to analyze the audio prior to a Render pass.
virtual AAX_Result RenderAudio(const float *const inAudioIns[], int32_t inAudioInCount, float *const iAudioOuts[], int32_t iAudioOutCount, int32_t *ioWindowSize)=0
Perform the signal processing.
virtual AAX_Result PreRender(int32_t inAudioInCount, int32_t iAudioOutCount, int32_t iWindowSize)=0
Invoked right before the start of a Preview or Render pass.
virtual AAX_Result SetLocation(int64_t iSample)=0
Updates the relative sample location of the current processing frame.
virtual AAX_Result PostRender()=0
Invoked at the end of a Render pass.
Supplemental interface for an AAX host processing component.
Definition: AAX_IACFHostProcessor.h:77
virtual AAX_Result GetClipNameSuffix(int32_t inMaxLength, AAX_IString *outString) const =0
Called by host application to retrieve a custom string to be appended to the clip name.
The interface for an AAX Plug-in's data model.
Definition: AAX_IEffectParameters.h:80
Versioned interface for host methods specific to offline processing.
Definition: AAX_IHostProcessorDelegate.h:38
A simple string container that can be passed across a binary boundary. This class,...
Definition: AAX_IString.h:38