Skip to content

A Node.js module to split audio files into segments. This module accepts audio data buffers as input and returns an array of Buffers representing the sliced audio segments.

License

Notifications You must be signed in to change notification settings

AliAryanTech/audio-slicer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

audio-slicer

NPM

A Node.js module to split audio files into segments. This module accepts audio data buffers as input and returns an array of Buffers representing the sliced audio segments.

Installation

Before using the audio-slicer module, make sure to have ffmpeg installed on your system. You can install audio-slicer using npm or yarn:

npm install audio-slicer

or

yarn add audio-slicer

Usage:

The audio-slicer module provides two functions:

1. audioToSlice(buffer, seconds, video)

  • buffer (required): The audio data buffer you want to slice. This should be a Buffer containing the audio content you want to split.
  • seconds (required): The duration of each segment in seconds.
  • video (optional, default is false): A boolean indicating whether the media is video (true) or audio (false).

Here's an example usage:

const { audioToSlice } = require('audio-slicer')
const { readFile } = require('fs-extra')

(async () => {
  try {
    // Read the media file as a buffer (can be audio or video)
    const media = await readFile('./media.mp4')
    // Specify segment duration in seconds (e.g., 60 seconds)
    const seconds = 60
    // Specify whether it's video (true) or audio (false)
    const video = true
    // Call the mediaToSlice function
    const buffers = await audioToSlice(media, seconds, video)
    console.log(`Sliced into ${buffers.length} segments.`)
  } catch (error) {
    console.error('Error slicing media:', error.message)
  }
})()

2. audioMerge(audios)

  • audios (required): An array of audio buffers to merge.

Here's an example usage:

const { audioMerge } = require('audio-slicer')
const { readFile } = require('fs-extra')

(async () => {
  try {
    // Read multiple audio files as buffers
    const audio1 = await readFile('./audio1.mp3')
    const audio2 = await readFile('./audio2.mp3')
    const audio3 = await readFile('./audio3.mp3')

    // Create an array of audio buffers
    const audioBuffers = [audio1, audio2, audio3]

    // Call the audioMerge function
    const mergedBuffer = await audioMerge(audioBuffers)

    // Handle the merged audio buffer as needed
    console.log('Merged audio buffer:', mergedBuffer)
  } catch (error) {
    console.error('Error merging audio:', error.message)
  }
})()

Contribution

Contributions to the audio-slicer module are welcome! If you find any issues or have suggestions for improvement, please open an issue or submit a pull request on the GitHub repository.

Credits

The audio-slicer module is created and maintained by AliAryanTech.

About

A Node.js module to split audio files into segments. This module accepts audio data buffers as input and returns an array of Buffers representing the sliced audio segments.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published