Skip to content

Releases: seydx/node-av

v3.0.5

Choose a tag to compare

@github-actions github-actions released this 19 Oct 21:39

node-av Release v3.0.5

📦 Updated Packages

The following platform packages have been updated to v3.0.5:

  • @seydx/node-av-darwin-arm64@v3.0.5
  • @seydx/node-av-darwin-x64@v3.0.5
  • @seydx/node-av-linux-arm64@v3.0.5
  • @seydx/node-av-linux-x64@v3.0.5
  • @seydx/node-av-win32-arm64-mingw@v3.0.5
  • @seydx/node-av-win32-x64-mingw@v3.0.5
  • @seydx/node-av-win32-arm64-msvc@v3.0.5
  • @seydx/node-av-win32-x64-msvc@v3.0.5

📋 All Changes since v3.0.4

  • chore: bump version to 3.0.5 (1a79498)
  • Enhance browser-fmp4 example (f5cd80a)
  • Add browser-fmp4 example to the documentation (8450e5c)
  • Update examples (c0fb2d9)
  • Add fMP4 streaming example with WebSocket server and HTML client (593e6b5)
  • Update dash example (ad10bb0)
  • Update deps (7e322e0)
  • Update submodule jellyfin-ffmpeg (7dc3820)
  • Enhance DASH streaming example (727d073)
  • Add VP8 and VP9 video test files (677febc)
  • Add tests for MIME type, input format, and stream access in MediaInput and MediaOutput (b72cad5)
  • Update typings (ab811dd)
  • Add codec string and MIME type functions for DASH and HLS (10dd8db)
  • Add codecTagString method to CodecParameters for FourCC representation (75541a0)
  • Update TypeScript configuration to include specific file patterns and directories (9c741d6)
  • Add jellyfin-ffmpeg include directory to build configurations (3893a45)
  • Add output format and stream management methods to MediaOutput (00ab7d9)
  • Add mimeType and getStream methods to MediaInput (ae23459)

v3.0.4

Choose a tag to compare

@github-actions github-actions released this 18 Oct 10:58

node-av Release v3.0.4

📦 Updated Packages

The following platform packages have been updated to v3.0.4:

  • @seydx/node-av-darwin-arm64@v3.0.4
  • @seydx/node-av-darwin-x64@v3.0.4
  • @seydx/node-av-linux-arm64@v3.0.4
  • @seydx/node-av-linux-x64@v3.0.4
  • @seydx/node-av-win32-arm64-mingw@v3.0.4
  • @seydx/node-av-win32-x64-mingw@v3.0.4
  • @seydx/node-av-win32-arm64-msvc@v3.0.4
  • @seydx/node-av-win32-x64-msvc@v3.0.4

📋 All Changes since v3.0.3

  • chore: bump version to 3.0.4 (5ab8980)
  • gitignore (ac954bb)
  • Update deps (1d0471e)
  • Add high-level API example for DASH (b376feb)
  • Add support for global header flag and improve timebase handling in MediaOutput (b8c6e59)
  • Allow zero denominator in Rational class for FFmpeg compatibility and add validation methods (338bb51)
  • Enhance type definitions for FFmpeg options to allow undefined and null values (cc888f0)
  • Add methods to encoder to get and set codec flags (8d62ac9)
  • Add support for custom FFmpeg format options in MediaOutput (6eef975)
  • Update Jellyfin FFmpeg link and update deps (a32267e)
  • Update dependencies (766c493)

v3.0.3

Choose a tag to compare

@github-actions github-actions released this 16 Oct 23:13

node-av Release v3.0.3

📦 Updated Packages

The following platform packages have been updated to v3.0.3:

  • @seydx/node-av-darwin-arm64@v3.0.3
  • @seydx/node-av-darwin-x64@v3.0.3
  • @seydx/node-av-linux-arm64@v3.0.3
  • @seydx/node-av-linux-x64@v3.0.3
  • @seydx/node-av-win32-arm64-mingw@v3.0.3
  • @seydx/node-av-win32-x64-mingw@v3.0.3
  • @seydx/node-av-win32-arm64-msvc@v3.0.3
  • @seydx/node-av-win32-x64-msvc@v3.0.3

📋 All Changes since v3.0.2

  • chore: bump version to 3.0.3 (3fcb426)
  • Remove Vulkan filter references and update capabilities for native alternatives (667f8ed)
  • Update hardware acceleration requirements for Intel GPUs on Linux (58e8193)
  • Update jellyfin submodule (0ca58ee)
  • Refactor Docker image references to use hardcoded repository name (97f4b8a)
  • Update CACHE_VERSION_LINUX to v29 in build workflow (436183a)
  • Remove debugging steps for libva header detection from build workflow (c44196b)
  • Refactor Docker repository references to use GITHUB_REPOSITORY environment variable (e2a78ad)
  • Add debugging steps for libva pkg-config files in build workflow (0d506ca)
  • Update CACHE_VERSION_LINUX and add debugging for libva header detection (d19f7f6)
  • Remove weak symbol declaration for vaMapBuffer2 in common.h (53f9a58)
  • Set AV_FROM_SOURCE environment variable for test runs in multiple jobs (1b5cebc)
  • Update binding.ts (330515d)
  • Update jellyfin submodule (1402ecf)
  • Debugging (9f4b54d)
  • Cleanup (c5eb4bb)
  • Update jellyfin submodule (c4bd395)
  • Fix binding file copy in Docker build step (b781d1d)
  • Refactor Docker image handling in build workflow (db3c720)
  • Update jellyfin submodule (f66ee73)
  • Remove Docker image build workflow (5b4971d)
  • Dont use alternaive encoder for d3d12va (9c729fb)
  • Update jellyfin submodule (4b28fdf)
  • Update jellyfin submodule (7cc8201)
  • Update README (5aea1a9)
  • Update jellyfin submodule (460e7dc)
  • Merge pull request #63 from seydx/dependabot/github_actions/actions/setup-node-6 (3d69d23)
  • Lint and format (a645bef)
  • Refactor FilterAPI to use segment parsing for filter descriptions (7f083de)
  • Update deps (87d8e53)
  • gitignore (7c59d44)
  • Update EncoderOptions to include default bitrate values for audio and video (b48dd56)
  • Add SegmentParse method to FilterGraph for parsing filter graph segments (b82fb62)
  • Refactor SetOwned and SetUnowned methods in FilterInOut class (94ca4c0)
  • Add filter_graph_segment.cc to build configurations (1f4a1e2)
  • Add FilterGraphSegment class and related methods for filter graph management (b9ccc39)
  • Remove Vulkan library dependency from binding-jellyfin.gyp (c71a35d)
  • Add Vulkan library dependency to binding-jellyfin.gyp (e4d2c68)
  • gitignore (a9f0bc5)
  • Add artifact upload step for FFmpeg cache in Windows MSVC build (8ea4dba)
  • Update cache upload logic to use workflow inputs (533fda3)
  • Bump actions/setup-node from 5 to 6 (b254aea)
  • Update Changelog (e4eb9cf)

v3.0.2

Choose a tag to compare

@github-actions github-actions released this 14 Oct 18:04

node-av Release v3.0.2

📦 Updated Packages

The following platform packages have been updated to v3.0.2:

  • @seydx/node-av-darwin-arm64@v3.0.2
  • @seydx/node-av-darwin-x64@v3.0.2
  • @seydx/node-av-linux-arm64@v3.0.2
  • @seydx/node-av-linux-x64@v3.0.2
  • @seydx/node-av-win32-arm64-mingw@v3.0.2
  • @seydx/node-av-win32-x64-mingw@v3.0.2
  • @seydx/node-av-win32-arm64-msvc@v3.0.2
  • @seydx/node-av-win32-x64-msvc@v3.0.2

📋 All Changes since v2.7.2

  • chore: bump version to 3.0.2 (6651471)
  • Generate FFmpeg version file and update build scripts (bab6966)
  • Add FFMPEG_VERSION constant and update references in ffmpeg modules (4df30d1)
  • Enable submodule checkout in build workflow (9da5527)
  • Update deps (776fd74)
  • Enable submodule checkout in Windows MSVC build step (c7ecd41)
  • Sync FFmpeg version in package.json from externals (1d2b6e2)
  • chore: bump version to 3.0.1 (bcc7e3a)
  • Update FFmpeg version retrieval in install script and workflow (e9b82b8)
  • Add script to synchronize FFmpeg version in package.json (d1cb1f4)
  • Update Changelog (aa3492a)
  • Update workflows (585a635)
  • chore: bump version to 3.0.0 (b213044)
  • Update Changelog (ad13f12)
  • Update jellyfin submodule (5c23055)
  • Add additional libraries for Jellyfin binding: ncrypt and crypt32 (ec75169)
  • Update jellyfin submodule (5840b0b)
  • Update jellyfin submodule (d3e449e)
  • Update jellyfin submodule (674faba)
  • Update jellyfin submodule (036ed01)
  • Update jellyfin submodule (adfc4dd)
  • Update jellyfin submodule (ad2028c)
  • Add ncrypt.lib and crypt32.lib to library references in binding-msvc.gyp (8eb0ec7)
  • Remove unnecessary library references from binding-msvc.gyp (51258f6)
  • Update library references in binding-msvc.gyp to use .lib suffix (f33c3f9)
  • Update jellyfin submodule (44c61c7)
  • Refactor library references in binding-msvc.gyp to remove 'lib' prefix (44512ba)
  • Remove libpostproc references in bindings (549fa76)
  • Update deps (79076af)
  • Update jellyfin submodule (35c8ea4)
  • Update Changelog (ff7f0b3)
  • Update tests (f9ed8ff)
  • Prepare for ffmpeg 8 (9ac3cd2)
  • Update typings and tests (706c24f)
  • Remo deprecated functions (93c3076)
  • Update bindings for ffmpeg 8 (24ac7a9)
  • Add FFmpeg patching step to generate script (ba4e820)
  • Update jellyfin submodule (05c85d0)
  • Updated generated constants (05eda99)
  • Add script to apply FFmpeg patches using quilt (f669a58)
  • Enhance enum parsing to include typedef enums and extend accepted names for SwsFlags (c97f2aa)
  • Update eslint config (26ad140)
  • Update tests (a7ae413)
  • Add methods to set and clear flags in CodecContext, FormatContext, Packet, and Stream classes (low level api) (7235e7d)
  • Update native types (c547614)
  • Add methods to set and clear flags in FormatContext, and implement interrupt handling for blocking operations (ae5f7fc)
  • Add methods to set and clear event flags in Stream class (f14bc61)
  • Add methods to set and clear packet flags in Packet class (f387533)
  • Add methods to set and clear codec flags in CodecContext (775d521)
  • Enhance MediaInput to support non-blocking input and optional IO context (9bb809f)
  • Update jellyfin (c175e5e)
  • Update deps (06ada79)
  • Update Windows package names to include mingw and msvc variants (a43f45f)

v2.7.2

Choose a tag to compare

@github-actions github-actions released this 10 Oct 04:46

node-av Release v2.7.2

📦 Updated Packages

The following platform packages have been updated to v2.7.2:

  • @seydx/node-av-darwin-arm64@v2.7.2
  • @seydx/node-av-darwin-x64@v2.7.2
  • @seydx/node-av-linux-arm64@v2.7.2
  • @seydx/node-av-linux-x64@v2.7.2
  • @seydx/node-av-win32-arm64-mingw@v2.7.2
  • @seydx/node-av-win32-x64-mingw@v2.7.2
  • @seydx/node-av-win32-arm64-msvc@v2.7.2
  • @seydx/node-av-win32-x64-msvc@v2.7.2

📋 All Changes since v2.7.1

  • Update deps (c85b10c)
  • Add -ldrm flag for linking in jellyfin bindings (8279029)
  • chore: bump version to 2.7.2 (fc9e980)
  • Update deps (8676af5)
  • gitignore (473f3ba)
  • Cleanup jellyfin bindings (6610a27)
  • Cleanup msvc bindings (1166f81)
  • Add Vulkan support with libplacebo for advanced filtering operations and update tests (56894f6)
  • Disable cache uploads in build prebuilds workflow (b5d86b2)
  • Refactor library checks and update compiler flags in jellyfin build configuration (6c6600c)
  • Add libpostproc and update compiler flags in jellyfin build configuration (b26ce25)
  • Add additional library checks to jellyfin build configuration (d6eab51)
  • Add libiconv dependency to jellyfin build configuration (6aacfcf)
  • Test linux docker build (c7cc7ab)
  • Revert mingw workflow changes (ca554e0)
  • Test linux docker build (0003f81)
  • Test linux docker build (0d6f427)
  • Test linux docker build (619e6b5)
  • Test gcc 15 and switch to latest ubuntu runner (461997a)
  • Refactor build and bindings.gyp (cef33dd)
  • Update jellyfin (8d68ff2)
  • Update deps (61f1e77)
  • Pass options to encoder (5c25477)
  • Enable video support for Vulkan on older GPUs (5ef4665)
  • Update jellyfin (f227406)

v2.7.1

Choose a tag to compare

@github-actions github-actions released this 08 Oct 00:16

node-av Release v2.7.1

📦 Updated Packages

The following platform packages have been updated to v2.7.1:

  • @seydx/node-av-darwin-arm64@v2.7.1
  • @seydx/node-av-darwin-x64@v2.7.1
  • @seydx/node-av-linux-arm64@v2.7.1
  • @seydx/node-av-linux-x64@v2.7.1
  • @seydx/node-av-win32-arm64@v2.7.1
  • @seydx/node-av-win32-x64@v2.7.1

Added

  • Automatic Hardware Decoder Selection: Decoder.create() now automatically selects hardware decoders when hardware context is provided
    • Mimics FFmpeg CLI behavior: "Selecting decoder 'hevc_qsv' because of requested hwaccel method qsv"
    • New HardwareContext.getDecoderCodec() method to find hardware-specific decoders (e.g., hevc_qsv)
    • Falls back to software decoder if no hardware decoder is available
    • Works with both async create() and sync createSync() methods

Changed

  • QSV Filter Support: FilterPresets now uses vpp_qsv filter for Intel Quick Sync Video instead of scale_qsv

📋 All Changes since v2.7.0

  • chore: bump version to 2.7.1 (60fd884)
  • Update Changelog (46ce622)
  • Update jellyfin (596064d)
  • Update deps (4b49d8c)
  • Add QSV support for scaling, cropping, flipping, and deinterlacing in FilterPreset (c3018f5)
  • Add getDecoderCodec method for hardware-specific codec retrieval (bf7220c)
  • Add hardware decoder support in Decoder.create and createSync methods (eb2328d)
  • Update jellyfin (73f4da1)

v2.7.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 13:18

node-av Release v2.7.0

📦 Updated Packages

The following platform packages have been updated to v2.7.0:

  • @seydx/node-av-darwin-arm64@v2.7.0
  • @seydx/node-av-darwin-x64@v2.7.0
  • @seydx/node-av-linux-arm64@v2.7.0
  • @seydx/node-av-linux-x64@v2.7.0
  • @seydx/node-av-win32-arm64@v2.7.0
  • @seydx/node-av-win32-x64@v2.7.0

Added

  • Hardware Frame Allocation Control: Added extraHWFrames option to DecoderOptions and FilterOptions for controlling hardware frame buffer size
    • Low-level access via codecContext.extraHWFrames and filterContext.extraHWFrames

Changed

  • High-Level API Error Handling: All high-level API methods now return null instead of throwing errors when resources are closed

    • Affected methods: decode(), encode(), process(), flush() and their sync variants
    • Generator methods (frames(), packets(), etc.) now exit gracefully when closed/isClosed flag is set
    • Improves error handling in cleanup scenarios
  • BitStreamFilterAPI Lifecycle Management:

    • Renamed dispose() method to close() for consistency with other high-level APIs
    • Added isBitstreamFilterOpen getter to check filter state
    • Symbol.dispose still supported for automatic cleanup with using statement
  • Consistent Closed State Behavior:

    • Methods check closed state and return null instead of throwing exceptions
    • Generator loops respect closed state

Fixed

  • Log Callback Event Loop: Fixed Node.js process not exiting when using Log.setCallback()

    • ThreadSafeFunction is now unref'd to prevent keeping event loop alive
    • Proper cleanup order in SetCallback() and ResetCallback()
  • VideoToolbox Patch: Fixed "Duplicated pixel format" error in hardware acceleration

    • Corrected patch 1006 to avoid duplicate AV_PIX_FMT_BGRA entries in supported_formats[]
    • Added AV_PIX_FMT_GRAY8 and AV_PIX_FMT_RGB24 to VideoToolbox format support

📋 All Changes since v2.6.5

  • chore: bump version to 2.7.0 (c78dc99)
  • Update Changelog (d35c108)
  • Add extraHWFrames option for hardware frame buffering in Decoder and FilterAPI and low level API (3993e8a)
  • Update deps (fddeaf9)
  • Update tests (1ffeb68)
  • Refactor MediaInput to use isClosed instead of closed and add isInputOpen getter (ef226ab)
  • Refactor FilterAPI to return null when closed and update error messages for initialization failures (b188c1b)
  • Refactor Encoder class to return null instead of throwing an error when closed (2d2c7d0)
  • Update Decoder class to return null instead of throwing an error when closed (5355542)
  • Refactor BitStreamFilterAPI to use isClosed instead of isDisposed and add isBitstreamFilterOpen getter (2aa47fc)
  • Add yuv420p.mp4 test data file (5fd8a8f)
  • Update jellyfin (7fe5841)
  • Update deps (ac3d20f)
  • Fix MediaInput class to properly handle closure state (aec61a6)
  • Improve callback handling in Log class (2d8d6a6)
  • npmignore (9e585c0)

v2.6.5

Choose a tag to compare

@github-actions github-actions released this 05 Oct 02:13

node-av Release v2.6.5

📦 Updated Packages

The following platform packages have been updated to v2.6.5:

  • @seydx/node-av-darwin-arm64@v2.6.5
  • @seydx/node-av-darwin-x64@v2.6.5
  • @seydx/node-av-linux-arm64@v2.6.5
  • @seydx/node-av-linux-x64@v2.6.5
  • @seydx/node-av-win32-arm64@v2.6.5
  • @seydx/node-av-win32-x64@v2.6.5

📋 All Changes since v2.6.4

  • chore: bump version to 2.6.5 (273d2d9)
  • Update deps (b524eb9)
  • Update jellyfin (a48aaae)
  • Update jellyfin (e954116)
  • Remove cross-compilation setup for x64 builds on ARM64 runner in build-prebuilds.yaml (26754a7)
  • Update jellyfin (6ea000a)
  • Update jellyfin (822b8fe)
  • Update build:tsc script to include copying API data files to distribution (2431452)
  • Update jellyfin (68b4a29)
  • Add NV12 test video file (0d73a82)
  • Add test files for H.264 and HEVC data (465a84b)
  • Update filter chain to use hardware upload in transcode test (b23cb49)
  • Enhance hardware validation tests by adding support for QSV, RKMPP, Vulkan, and OpenCL, and refactor existing tests for VideoToolbox and VAAPI (a810483)
  • Enhance HardwareContext with validation methods for encoder and decoder, add default VAAPI device, and improve codec testing (2c79fda)
  • Update deps (56ed45f)

v2.6.4

Choose a tag to compare

@github-actions github-actions released this 03 Oct 22:36

node-av Release v2.6.4

📦 Updated Packages

The following platform packages have been updated to v2.6.4:

  • @seydx/node-av-darwin-arm64@v2.6.4
  • @seydx/node-av-darwin-x64@v2.6.4
  • @seydx/node-av-linux-arm64@v2.6.4
  • @seydx/node-av-linux-x64@v2.6.4
  • @seydx/node-av-win32-arm64@v2.6.4
  • @seydx/node-av-win32-x64@v2.6.4

📋 All Changes since v2.6.3

  • Simplify scale method and add scaleFormat for GPU format conversion and update tests (1f6d1ab)
  • chore: bump version to 2.6.4 (3d5faae)
  • Add optional format parameter for GPU format conversion in scale methods (37a47ce)

v2.6.3

Choose a tag to compare

@github-actions github-actions released this 03 Oct 18:34

node-av Release v2.6.3

📦 Updated Packages

The following platform packages have been updated to v2.6.3:

  • @seydx/node-av-darwin-arm64@v2.6.3
  • @seydx/node-av-darwin-x64@v2.6.3
  • @seydx/node-av-linux-arm64@v2.6.3
  • @seydx/node-av-linux-x64@v2.6.3
  • @seydx/node-av-win32-arm64@v2.6.3
  • @seydx/node-av-win32-x64@v2.6.3

📋 All Changes since v2.6.2