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);
}

Package Sidebar

Install

npm i handbrake-static

Weekly Downloads

0

Version

1.0.5

License

GPL-3.0

Unpacked Size

113 MB

Total Files

7

Last publish

Collaborators

  • alectrocute