Catalog npm
PACKAGE EXPLORERView in registry

@0biwank/screen-capture

npm

Native screen + audio capture for macOS with file-backed HLS output.

desktop-capturemacosmpegtsnapinative-addonscreen-capturehlsvideo-encoding
Versions collected5
Direct dependencies2From release 2.0.5
Last observed20 Oct, 22:05 UTC

README

Current package documentation

@0biwank/screen-capture

Native macOS screen, window, camera, microphone, and system-audio capture with file-backed HLS output.

Requirements

  • macOS 14 or newer
  • Apple silicon (arm64) or Intel (x64)
  • Node.js 18 or newer, including N-API-compatible Electron releases

The npm package includes prebuilt binaries for both supported architectures and does not compile native code during installation.

Installation

npm install @0biwank/screen-capture

Usage

const capture = require('@0biwank/screen-capture');

const display = capture.listDisplaySources()[0];
const recordingId = `capture-${Date.now()}`;

capture.setSegmentReadyCallback(fullPath => {
  console.log('HLS segment ready:', fullPath);
});

const started = capture.startCapture({
  displayId: display.id,
  width: display.width,
  height: display.height,
  fps: 30,
  gopSize: 120,
  videoBitrate: 9_000_000,
  systemAudio: true,
  microphone: false,
  outputDir: '/tmp/native-capture',
  recordingId,
  segmentTime: 4,
});

if (!started) throw new Error(capture.getLastError());

Call stopCapture() to flush the final segment and close playlist.m3u8. Pause and resume are available through pauseCapture() and resumeCapture(). See index.d.ts for the complete API and option types.

Building From Source

Release binaries are built by .github/workflows/publish.yml. Local builds use:

npm ci --ignore-scripts
brew install nasm pkg-config
NATIVE_CAPTURE_ARCH=arm64 npm run build
# or NATIVE_CAPTURE_ARCH=x64 npm run build

See SOURCE.md for pinned upstream sources, checksums, and build details.

License

The distributed binary links FFmpeg configured with GPL support and x264. The package is distributed under GPL-2.0-or-later. See LICENSE and THIRD_PARTY_NOTICES.md. Distribution in another application should be reviewed for license compliance.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 5

Collected releases
VersionPublishedDirect dependenciesOpen version
2.0.5Registry latest6 Jul 20262
2.0.42 Jul 20262
2.0.329 Jun 20262
2.0.222 Jun 20262
1.0.18 Oct 20252

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
xakep8/screencapturenapi

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:05 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:7656c185ec93a88b24073d44436a95891555e37346921f09594b59a5e0b2acbd