Attempt at remaking Chatsounds processor in JavaScript.

Related tags

Learning resource sh
Overview

sh

A chatsound processor written in JS.

Installation

Run npm install github:NonagonNetwork/sh to install.

Browser Preface

:echo, :lfopitch and :lfovolume modifiers have been copied over from Metastruct/notagain.

notagain audio effects with Web Audio API implementation uses ScriptProcessorNode, which has multiple issues:

That being said, 3-rd party contributions (or pull requests) to this repository are welcome! To test your changes use browsertest folder.

Node.JS Preface

If you're planning to use this in Node.JS, please make sure you have ffmpeg installed and put in PATH environment variable.

Examples

Node.JS

const Sh = require('sh');

// If you have a long list, this can take a second to load,
// as it creates a tree from it.
const sh = new Sh({
  "chat sound here": [
    "http://url.to/chatsound/1.ogg",
    "http://url.to/chatsound/2.ogg",
    "http://url.to/chatsound/3.ogg",
  ],
  "more": [
    "http://url.to/more/1.ogg",
    "http://url.to/more/2.ogg",
    "http://url.to/more/3.ogg",
  ]
});

const script = sh.Parser.parse('more chat sound here more more');
const stream = sh.Audio.run(script);

Browser

(Assuming you have imported it with the <script> tag.)

const sh = new Sh({
  "chat sound here": [
    "http://url.to/chatsound/1.ogg",
    "http://url.to/chatsound/2.ogg",
    "http://url.to/chatsound/3.ogg",
  ],
  "more": [
    "http://url.to/more/1.ogg",
    "http://url.to/more/2.ogg",
    "http://url.to/more/3.ogg",
  ]
});

const script = sh.Parser.parse('more chat sound here more more');
// This plays the sounds in this version, hence does not
// return anything.
sh.Audio.run(script);
You might also like...

Ping.js is a small and simple Javascript library for the browser to "ping" response times to web servers in Javascript

Ping.js Ping.js is a small and simple Javascript library for the browser to "ping" response times to web servers in Javascript! This is useful for whe

Dec 27, 2022

MenuSlider-Javascript - How to create a menu slider with vanilla javascript

MenuSlider-Javascript How to create a menu slider with vanilla javascript Instal

Feb 8, 2022

Simple Library implemented using HTML, CSS and JavaScript. This is a simple implementation of JavaScript Modules of ES6.

Awesome-books A single page project with the porpuse of storing books' titles and authors. Built With CSS, HTML & Javascript. How to run in your local

Feb 21, 2022

This is a project that allows users to add/remove books from a list. we accomplish this by using a JavaScript object. Built with JavaScript, Html and CSS.

Awesome-book This is a project that allows users to add/remove book from a list. we accomplish this by usig javascript oject. Built With HTML5 CSS3 Ja

May 27, 2022

JavaScript project for the Leaderboard list app, using Webpack and ES6 features, notably modules. this app consume the Leaderboard API using JavaScript async and await and add some styling.

Leaderboard Project JavaScript project for the Leaderboard list app, using Webpack and ES6 features, notably modules. this app consume the Leaderboard

May 20, 2022

Custom alert box using javaScript and css. This plugin will provide the functionality to customize the default JavaScript alert box.

customAlertBoxPlugin Custom Alert Box Plugin Using JavaScript and CSS Author: Suraj Aswal Must Include CSS Code/Default Custom Alert Box Class: /* mus

Sep 10, 2022

A Powerful and Elegant "alert" library for JavaScript that replaces that boring alert style of Javascript.

A Powerful and Elegant

A Powerful , Elegant and fully customizable "alert" library using JavaScript that replaces that boring style of alert. Installation Place the below sc

Aug 10, 2021

Device.js is a JavaScript library to detect device, viewport, and browser information using plain JavaScript.

Device.js Device.js is a JavaScript library to detect device, viewport, and browser information using plain JavaScript. Compatibility Works with all m

Dec 16, 2022

It's an alert library build with JavaScript. You can replace your traditional JavaScript alert, confirm and toast with the library.

asteroid-alert It's an alert library build with JavaScript. You can replace your traditional JavaScript alert, confirm with the library. It has also e

Mar 12, 2021
Comments
  • Next (#5)

    Next (#5)

    • start working on a TypeScript rewrite

    • add parser, constants, context, make audio work using ffmpeg

    • cache: remove redundant code

    • Revert "cache: remove redundant code"

    This reverts commit cdd2c4f30333de14800ed9c7a731b4381cb8ce12.

    • add modifiers, fix source downloading, fix parser, misc. changes

    • remove redundant files, edit README.md, add sh chatsound as a constant, remove console.logs

    • edit README.md

    • add useSourcesFromGitHub, fix cutoff modifier, edit test.js

    • cache: rely on identifier generated by Chatsounds

    • fix parser bug, fix context, don't limit argument for volume

    • add onLegacyExpressionUsed function to volume, misc. changes

    • run prettier

    • fix repeat modifier not returning the proper modified duration

    • combine defaultArguments with specified if any

    • a few echo modifier fixes

    • add a postinstall script

    opened by be195 0
Owner
Litterbin Collective
Using a coffee maker to boil hotdogs since 2018.
Litterbin Collective
This is my first attempt in creating a mern stack ecommerce website. Hope you like it!!

MERN E-COMMERCE PROJECT Hi! My name is Suhrrid Banerjee, This is my first attempt in creating a MERN stack e-commerce website. Prerequisite Nil Env Va

Suhrrid Banerjee 1 Jan 8, 2022
Attempt to replicate the visuals of late 80s / early 90s flight simulators

Retro Fligh Simulator Quick and dirty attempt to replicate the visuals of late 80s / early 90s flight simulators, using as a reference MicroProse's F-

Ruben Moreno Montoliu 70 Dec 15, 2022
My terrible attempt at a promposal. Update: She said yes LMFAO Update Update: I got friendzoned right after 😭

TypeScript Next.js example This is a really simple project that shows the usage of Next.js with TypeScript. Deploy your own Deploy the example using V

John Li (Tet) 7 Oct 27, 2022
This project is an attempt at recreating the WebGL animation featured in the 2021 Linear release page.

Linear Vaporwave Three.js scene This project is an attempt at recreating the WebGL animation featured in the 2021 Linear release page. Demo Head over

Maxime Heckel 31 Dec 28, 2022
Attempt #2 at creating a game engine with Sciter.

JogoMaker Attempt #2 at creating a game engine with Sciter, with love and care. For Attempt #1, see this project, which was hastily thrown together as

null 3 Sep 5, 2022
This is my to-do list website built with html, css and JavaScript. In this project I used Webpack to bundle JavaScript and ES6 modules to write modular JavaScript.

To-Do-List App This is my to-do list website built with html, css and JavaScript. In this project I used Webpack to bundle JavaScript and ES6 modules

Samuel Mwape 18 Sep 20, 2022
Reference for How to Write an Open Source JavaScript Library - https://egghead.io/series/how-to-write-an-open-source-javascript-library

Reference for How to Write an Open Source JavaScript Library The purpose of this document is to serve as a reference for: How to Write an Open Source

Sarbbottam Bandyopadhyay 175 Dec 24, 2022
Open Source projects are a project to improve your JavaScript knowledge with JavaScript documentation, design patterns, books, playlists.

It is a project I am trying to list the repos that have received thousands of stars on Github and deemed useful by the JavaScript community. It's a gi

Cihat Salik 22 Aug 14, 2022
Javascript-testing-practical-approach-2021-course-v3 - Javascript Testing, a Practical Approach (v3)

Javascript Testing, a Practical Approach Description This is the reference repository with all the contents and the examples of the "Javascript Testin

Stefano Magni 2 Nov 14, 2022
Navigation-Menu-Javascript - A simple Navbar navigation using vanilla javascript, to change links to the active link when clicked.

Navigation-Menu-Javascript A simple Navbar navigation using vanilla javascript, to change links to the active link when clicked. Desktop view Mobile v

Ellis 2 Feb 16, 2021