Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

whisper-node-anas

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

whisper-node-anas

Node bindings for OpenAI's Whisper. Optimized for CPU. (Updated with latest whisper.cpp September 2023)

  • 1.0.0
  • unpublished
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

whisper-node-anas

npm downloads npm downloads

Node.js bindings for OpenAI's Whisper.(Updated with latest whisper.cpp September 2023)

Features

  • Output transcripts to JSON (also .txt .srt .vtt)
  • Optimized for CPU (Including Apple Silicon ARM)
  • Timestamp precision to single word

Installation

  1. Add dependency to project
npm install whisper-node-anas
  1. Download whisper model of choice
npx whisper-node-anas download

Usage

import whisper from "whisper-node-anas";

const transcript = await whisper("example/sample.wav");

console.log(transcript); // output: [ {start,end,speech} ]

Output (JSON)

[
  {
    start: "00:00:14.310", // time stamp begin
    end: "00:00:16.480", // time stamp end
    speech: "howdy", // transcription
  },
];

Usage with Additional Options

import whisper from 'whisper-node-anas';

const filePath = "example/sample.wav", // required

const options = {
  modelName: "tiny.en",                   // default
  modelPath: "/custom/path/to/model.bin", // use model in a custom directory
  whisperOptions: {
    gen_file_txt: false,      // outputs .txt file
    gen_file_subtitle: false, // outputs .srt file
    gen_file_vtt: false,      // outputs .vtt file
    timestamp_size: 10,       // amount of dialogue per timestamp pair
    word_timestamps: true     // timestamp for every word
  }
}

const transcript = await whisper(filePath, options);

Made with

Roadmap

  • Support projects not using Typescript
  • Allow custom directory for storing models
  • Config files as alternative to model download cli
  • Remove path, shelljs and prompt-sync package for browser, react-native expo, and webassembly compatibility
  • fluent-ffmpeg to support more audio formats
  • Pyanote diarization for speaker names
  • Implement WhisperX as optional alternative model for diarization and higher precision timestamps (as alternative to C++ version)

Modifying whisper-node-anas

npm run dev - runs nodemon and tsc on '/src/test.ts'

npm run build - runs tsc, outputs to '/dist' and gives sh permission to 'dist/download.js'

Keywords

FAQs

Package last updated on 03 Sep 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc