sound-manager
Version:
A full-service sound library.
31 lines (25 loc) • 745 B
text/typescript
import {
getVolumeLevelRenderListener,
} from '../AnalysisSuite/getVolumeLevelRenderListener';
import {
IAnalysisSuite,
} from '../AnalysisSuite/IAnalysisSuite';
import {
assert,
} from 'ts-assertions';
export const strings = {
ANALYSIS_SUITE_INVALID:
'The analysisSuite argument was not provided to ' +
'generateVolumeLevelVisualizerComponent.',
};
export function generateVolumeLevelVisualizerComponent(analysisSuite: IAnalysisSuite) {
assert(
analysisSuite,
strings.ANALYSIS_SUITE_INVALID,
);
const canvas = document.createElement('canvas');
canvas.width = 8;
canvas.height = 20;
analysisSuite.addRenderListener(getVolumeLevelRenderListener(canvas));
return canvas;
}