All Projects → azeem → webvs

azeem / webvs

Licence: MIT License
Audio Visualization rendering library for the browser

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to webvs

Paint3D
A program allowing painting textures of different channels SIMULTANEOUSLY on a 3d model
Stars: ✭ 24 (-72.41%)
Mutual labels:  glsl
MRIcroGL
v1.2 GLSL volume rendering. Able to view NIfTI, DICOM, MGH, MHD, NRRD, AFNI format images.
Stars: ✭ 101 (+16.09%)
Mutual labels:  glsl
glip-lib
An OpenGL Image Processing Library (in C++/GLSL).
Stars: ✭ 14 (-83.91%)
Mutual labels:  glsl
Voxel
Sandbox survival game created with Light Engine (Development halted due to other projects)
Stars: ✭ 18 (-79.31%)
Mutual labels:  glsl
glazejs
A high performance 2D game engine built in Typescript
Stars: ✭ 96 (+10.34%)
Mutual labels:  glsl
inline-spirv-rs
Compile GLSL/HLSL/WGSL and inline SPIR-V right inside your crate.
Stars: ✭ 21 (-75.86%)
Mutual labels:  glsl
Nabla
OpenGL/OpenGL ES/Vulkan/CUDA/OptiX Modular Rendering Framework for PC/Linux/Android
Stars: ✭ 235 (+170.11%)
Mutual labels:  glsl
slibs
Single file libraries for C/C++
Stars: ✭ 80 (-8.05%)
Mutual labels:  glsl
Fake-Interior-Shader-for-GodotEngine
Interior Mapping shader for the Godot Game Engine 3.x that works with both GLES3 and GLES2.
Stars: ✭ 40 (-54.02%)
Mutual labels:  glsl
YALCT
Yet Another Live Coding Tool - Powered by Veldrid and elbow grease
Stars: ✭ 25 (-71.26%)
Mutual labels:  glsl
deffx
A collection of useful shader effects made ready to be used with the Defold game engine
Stars: ✭ 33 (-62.07%)
Mutual labels:  glsl
GLSLShaderShrinker
Optimizes the size of GLSL shader code.
Stars: ✭ 39 (-55.17%)
Mutual labels:  glsl
30-days-of-shade
30 days of shaders in GLSL using GLSLCanvas
Stars: ✭ 134 (+54.02%)
Mutual labels:  glsl
ios-spritekit-shader-sandbox
👾 Collection of custom effects for SpriteKit implemented using GLSL/Metal shaders.
Stars: ✭ 63 (-27.59%)
Mutual labels:  glsl
BBearEditor-2.0
My own 3D engine & editor in order to learn graphics algorithms and game engine architecture.
Stars: ✭ 32 (-63.22%)
Mutual labels:  glsl
ShaderView
ShaderView is an Android View that makes it easy to use GLSL shaders for your app. It's the modern way to use shaders for Android instead of RenderScript.
Stars: ✭ 53 (-39.08%)
Mutual labels:  glsl
ShaderBoiler
Aimed to eliminate preprocessor hell in shaders and kernels.
Stars: ✭ 30 (-65.52%)
Mutual labels:  glsl
sparklemotion
Sparkle Motion
Stars: ✭ 24 (-72.41%)
Mutual labels:  glsl
ProcessingStuff
Various pretty-ish Processing sketches by Odditica. About 50% shaders.
Stars: ✭ 164 (+88.51%)
Mutual labels:  glsl
glsl-conditionals
Functions designed to avoid conditionals ported to glslify
Stars: ✭ 53 (-39.08%)
Mutual labels:  glsl

Webvs

npm version CircleCI David David

A Winamp AVS like visualization library for the web.

Demo

Try out some examples, or test your own presets on the Webvs test page

Documentation

You can find TypeDoc generated documentation for Webvs on the website. The documentation for the Main class is a good place to start.

Installation

npm

For use with package bundlers, Webvs is available on npm as webvs. Install using

npm install webvs

and import in your code and initialize as follows

import Webvs from 'webvs';
const webvs = new Webvs.Main(....)

CDN

You can also embed webvs.js directly from unpkg CDN.

<script src="https://unpkg.com/webvs/dist/webvs.js"></script>

or for a minified version

<script src="https://unpkg.com/webvs/dist/webvs.min.js"></script>

This script exposes a Webvs global which you can use to initialize like so new Webvs.Main(...).

Usage

A typical usage involves creating an Analyser from your music source (e.g. Webvs.WebAudioAnalyser to use an audio tag or song url as a source) and initializing an instance of Webvs.Main with it. The main object serves as the primary interface or controlling the visualization. e.g.

const analyser = new Webvs.WebAudioAnalyser();
const webvs = new Webvs.Main({
    canvas: document.getElementById("canvas"),
    analyser: analyser,
    showStat: true
});
webvs.loadPreset({
  "clearFrame": true,
  "components": [
      {
          "type": "SuperScope",
          "source": "WAVEFORM",
          "code": {
              "perPoint": "x=i*2-1;y=v;"
          },
          "colors": ["#ffffff"]
      }
  ]
});
webvs.start();
analyser.load("music.ogg");
analyser.play();

Development

To develop Webvs clone the repo and install packages

npm install

For typical workflow, start a dev server with

npm run dev

and point browser to http://localhost:8080/examples/ to view webvs test page.

Contributing

Fork and submit pull requests against master branch. Look for issues with help wanted label for things that we need help with. For suggestions/bug fixes use Github/Issues. Chat with us at visbot/AVS gitter channel.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].