PageSourceSearch

https://uberviz.io/viz/bbng/js/ControlsHandler.js

js uberviz.io collected 2026-10-04 21:56:50 UTC 2,979 bytes, 110 lines download raw bytes

1//UberViz ControlsHandler
2//Handles side menu controls
3
4//init controls for audio and ui folders
5
6
7var ControlsHandler = function() {
8
9
10	var gui;
11
12	var vizFolder;
13
14	var audioParams = {
15		mute:false,
16		useMic: false,
17		autoLoadMP3: false,
18		showDebug:true,
19		volSens:1.3,
20		beatHoldTime:30,
21		beatDecayRate:0.97,
22		beatThreshold: 0.15,
23		bpmMode: false,
24		bpmRate:0,
25		smoothing:0.5,
26		sampleURL: "../res/mp3/BBNG_Confessions_edit.mp3",
27		//sampleURL: "../res/mp3/Cissy_Strut_Edit.mp3",
28	};
29
30	var uiParams = {
31		fullSize: false,
32		showControls: false,
33	};
34
35	// var fxParams = {
36	// 	glow: 0.7
37	// };
38
39	function init(){
40
41		//Init DAT GUI control panel
42		gui = new dat.GUI({autoPlace: false });
43		$('#settings').append(gui.domElement);
44
45		var f2 = gui.addFolder('Audio');
46		f2.add(audioParams, 'useMic').listen().onChange(AudioHandler.onUseMic).name("Use Mic");
47		//f2.add(audioParams, 'mute').listen().onChange(AudioHandler.mute).name("Mute");
48		//f2.add(audioParams, 'useSample').listen().onChange(AudioHandler.onUseSample);
49		f2.add(audioParams, 'volSens', 0, 10).step(0.1).name("Gain");
50		f2.add(audioParams, 'beatHoldTime', 0, 100).step(1).name("Beat Hold");
51		f2.add(audioParams, 'beatThreshold', 0, 1).step(0.01).name("Beat Threshold");
52		f2.add(audioParams, 'beatDecayRate', 0.9, 1).step(0.01).name("Beat Decay");
53		f2.add(audioParams, 'smoothing', 0, 1).step(0.01).name("Smoothing").onChange(AudioHandler.setSmoothing);
54		// f2.add(audioParams, 'bpmMode').listen();
55		// f2.add(audioParams, 'bpmRate', 0, 4).step(1).listen().onChange(AudioHandler.onChangeBPMRate);
56		//f2.open();
57
58		//var f5 = gui.addFolder('Viz');
59		//f5.add(fxParams, 'Full', 0, 4).listen().onChange(AudioHandler.onUseMic);
60		// var f5 = gui.addFolder('FX');
61		// f5.add(vizParams, 'fullSize').listen().onChange(VizHandler.onResize).name("Full Size");
62		// f5.add(fxParams, 'glow', 0, 4).step(0.1);
63		// f5.open();
64
65
66		//var f3 = gui.addFolder('UI');
67		//f3.add(uiParams, 'showControls').listen().onChange(toggleControls).name("Show Controls");
68
69		vizFolder = gui.addFolder('Viz');
70		vizFolder.open();
71
72		vizFolder.add(uiParams, 'fullSize').listen().onChange(VizHandler.onResize).name("Full Size");
73
74		//var f6 = gui.addFolder('Viz');
75		//f5.open();
76
77
78		// var f6 = gui.addFolder('Bloom');
79		// for (var propertyName in bloomParams) {
80		//	f6.add(bloomParams,propertyName)
81		// }
82
83		//TODO - better way to read in values at start
84		// AudioHandler.onUseMic();
85		// AudioHandler.onUseSample();
86		// AudioHandler.onShowDebug();
87		// AudioHandler.doAutoLoad();
88		// AudioHandler.mute();
89
90		$('#controls-holder').toggle(uiParams.showControls);
91
92
93	}
94
95	function toggleControls(){
96		uiParams.showControls = !uiParams.showControls;
97		$('#controls-holder').toggle();
98		VizHandler.onResize();
99	}
100
101	return {
102		init:init,
103		audioParams: audioParams,
104		uiParams:uiParams,
105		toggleControls:toggleControls,
106		getGui:function(){return gui;},
107		vizFolder: vizFolder,
108		getVizFolder:function(){return vizFolder;},
109	};
110}();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.