@brashkie/media-core
v0.1.5
Published
[DEPRECATED] Migrated to @kryxjs/core. Run: npm install @kryxjs/core. See https://github.com/Brashkie/kryx-core
Maintainers
Readme
⚠️ @brashkie/media-core — DEPRECATED ⚠️
[!WARNING]
This package has been moved to
@kryxjs/coreDevelopment continues at
github.com/Brashkie/kryx-core.No new features will be added here. Only critical security fixes (if any) until end of 2026.
🚀 Migrate now
npm uninstall @brashkie/media-core
npm install @kryxjs/coreUpdate your imports:
- import { MediaBuffer, Pipeline, MediaError } from '@brashkie/media-core'
+ import { MediaBuffer, Pipeline, MediaError } from '@kryxjs/core'That's it. The public TypeScript API is identical — only the package name changes.
What's the difference?
| Aspect | @brashkie/[email protected] | @kryxjs/[email protected] |
|--------|------------------------------|----------------------|
| Status | 🔴 Deprecated | 🟢 Active development |
| Repo | Brashkie/media-core | Brashkie/kryx-core |
| Buffer types in napi | Array<number> (binding bug) | ✅ Buffer \| Uint8Array (correct) |
| TypeScript API | identical | identical |
| Future features | ❌ none | ✅ all new work happens here |
The successor package is part of the broader Kryx ecosystem — a modular alternative to FFmpeg for Node.js, organized under the @kryxjs/* scope.
What changed technically?
The only functional difference vs @brashkie/[email protected] is the Buffer type fix in the napi binding.
Before (@brashkie/[email protected]) — ugly workaround:
const buf = MediaBuffer.video([1, 2, 3] as unknown as Buffer, 0)
const data = buf.data() as unknown as number[]Now (@kryxjs/[email protected]) — natural and ergonomic:
const buf = MediaBuffer.video(Buffer.from([1, 2, 3]), 0)
const buf2 = MediaBuffer.video(new Uint8Array([1, 2, 3]), 0)
const data: Buffer = buf.data()If you were already using Buffer.from(...) (the natural way), no code change needed — just update the import.
Why the rename?
The @kryxjs/* scope groups all packages of the Kryx ecosystem together (@kryxjs/core, @kryxjs/codecs, @kryxjs/codecs-opus, etc.), making the ecosystem easier to discover and maintain.
@brashkie/media-core was the prototype name. @kryxjs/core is the production name.
What did NOT change
- Public TypeScript API (every class, function, type, signature)
MediaErrorhierarchy and all error kindsPipelinebuilder pattern and all built-in stagesTimebase/Timestampsemantics- ESM + CJS dual format
- Per-platform native binaries (7 platforms)
- Node.js ≥18 requirement
Status
@brashkie/[email protected]is this deprecation release — same code as 0.1.4 with a deprecated README and CHANGELOG note.@brashkie/[email protected]is the last functional version (now also deprecated).- Versions 0.1.0–0.1.3 were already deprecated as broken.
- No new features will land here. Only critical security fixes (if any) until end of 2026.
Need help migrating?
Open a discussion on the new repo or file an issue.
👉 Go to @kryxjs/core 👈
