handbrake-static

1.0.5 • Public • Published

🍹handbrake-static

handbrake-static provides cross-platform HandBrake CLI binaries in your Electron application.

Installation

 npm i handbrake-static --save

Usage

// points to app.asar.unpacked
const handbrakePath = require("handbrake-static").path;

// points to node_modules
const handbrakeDevPath = require("handbrake-static").devPath;

console.log(handbrakePath, handbrakeDevPath);

Then, it's very important you expose the binaries via extraFiles in your electron-builder configuration, example:

"extraFiles": {
  "from": "node_modules/handbrake-static/bin/mac/x64/HandBrakeCLI",
  "to":
  "./resources/app.asar.unpacked/handbrake-static/bin/mac/x64/HandBrakeCLI",
}

A more general example of using the HandBrake CLI binary in your project (which isn't the scope of this package) -

const handbrakePath = require("handbrake-static").path;
const util = require("util");
const cp = require("child_process");

function execHandbrake(inputPath, outputPath, done) {
  const cmd = util.format(
    '"%s" %s',
    handbrakePath,
    `-i ${inputPath}`,
    `-o ${outputPath}`,
    "-e x264",
    "--encoder-preset veryfast",
    "-q 17"
  );
  cp.exec(cmd, done);
}

/handbrake-static/

    Package Sidebar

    Install

    npm i handbrake-static

    Weekly Downloads

    10

    Version

    1.0.5

    License

    GPL-3.0

    Unpacked Size

    113 MB

    Total Files

    7

    Last publish

    Collaborators

    • alectrocute