npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

audio-file-modifier

v1.0.3

Published

The purpose of this tool that runs in Node.js and be able to process audio files. For example this tool is able to normalize the volume of the audio files that the user wishes to process.

Downloads

10

Readme

Audio File Modifier

The purpose of this tool that runs in Node.js is to do several operations (normalize, split silences, apply a effect...) on audio files that the user wishes to process.

Install

You need to have installed Node.js and npm. Also you must have installed SoX to can apply effects. Once you have your system ready you must clone this repo on your computer:

# Clone this repository
git clone https://github.com/megabass00/audio-file-normalize.git

# Install dependencies
cd audio-file-normalize
npm i

Windows installation

If you are a Windows user you should copy libmad0.dll and libmp3lame-0.dll (both included in this repo, on libmad & libmp3lame folder) into SoX installation folder (C:\Windows\Program Files (x86)\SoX-installation-folder). If you do not copy this files when you run effects tool you will get a error becouse your system will be not able to manipulate mp3 files.

MacOS installation

If you wish run this tool on a MacOS system you must have to install a Node version minor than 12.x. For the moment is not possible run some libraries on 12.x versions.

Operations

Bellow you can see avaible operations you can do:

  • normalize: You can normalize any local sound file wich you spcify.
  • volume: You can change volume on any local file wich you specify.
  • split: You can remove the initial and final blank parts.
  • fade: You can apply fade in/out/both to any local sound file.
  • pitch: You can change pitch on any local audio file.
  • effect: You can apply an effect to an audio file between several types.
  • play: You can play any song from your local disk.
  • record: You can record mic built-in signal and save in a mp3 file. You need to have installed on your machine sox (Mac/Windows Users) or ALSA tools for Linux.

Options

You can use the tool with several options to modify behaviour:

  • inFile: input file path (you must enter a valid audio file path)
  • outFile: output file path
  • overwrite: input file will be overwritted
  • volume: output final volume
  • sampleRate: output sample rate
  • channels: output number channels
  • pitch: pitch percent to transform file (1% to 200%)
  • fade: if you specify this param the tool will create fadeIn and fadeOut with value you pass (default is false)
  • fadeIn: miliseconds to create fade in, if you do not specify fadeOut param it will not create fade out
  • fadeOut: miliseconds to create fade out, if you do not specify fadeIn param it will not create fade in
  • recTime: seconds to recording stdin(mic)
  • verbose: it will show or not logs by console (default is true)

Examples for use

# normalize volume of a local file
npm start normalize <path-to-audio-file>

# change volume to 20% more
npm start volume <path-to-audio-file> 120

# remove blank parts of a local file (begin and end)
npm start aplit <path-to-audio-file>

# create fade in/out with 5 secs to both
npm start fade <path-to-audio-file> 5

# change pitch to 20% less
npm start pitch <path-to-audio-file> 80

# record built-in mic for 30 seconds
npm start record 30

# play of a local file
npm start play <path-to-audio-file>

# apply a effect to a local file
npm start effect <path-to-audio-file> reverb|echo|chorus|flanger|distort|lowpass|highpass|bendup|benddown|reverse

Colaborations

Special thanks to :squirrel: Joan and :japanese_ogre: X-Hunter for their support.