[GH-ISSUE #4774] [FEAT]: Refactor collector to remove fluent-ffmpeg package #3007

Closed
opened 2026-02-22 18:32:14 -05:00 by yindo · 0 comments
Owner

Originally created by @shatfield4 on GitHub (Dec 12, 2025).
Original GitHub issue: https://github.com/Mintplex-Labs/anything-llm/issues/4774

Originally assigned to: @shatfield4 on GitHub.

What would you like to see?

In the collector we use fluent-ffmpeg - this package is deprecated and we should build our own ffmpeg wrapper for this.

  • Remove this dependency from the repo
  • Build a custom FFMPEG class that is a sub-util specifically for LocalWhisper
  • This module should look for ffmpeg cli command
  • Should work in container - which has ffmpeg installer(Linux), but also work when running unbundled on Mac, Linux, and Windows.
  • FFMPEG_PATH is the default path used by the existing library
  • We should then use execSync or spawnSync to run the ffmpeg binary wherever it might be
  • convert audio to .wav that is single channel @ 16k hz
  • Output the file to a known destination in the collector tmp so that wavefile can load it in as a buffer.
  • Add tests that are disabled in github actions (process.env.GITHUB_ACTIONS)
  • wavefile should not perform any resampling. eg:
wavFile.toBitDepth("32f");
wavFile.toSampleRate(16000);
Originally created by @shatfield4 on GitHub (Dec 12, 2025). Original GitHub issue: https://github.com/Mintplex-Labs/anything-llm/issues/4774 Originally assigned to: @shatfield4 on GitHub. ### What would you like to see? In the collector we use `fluent-ffmpeg` - this package is deprecated and we should build our own ffmpeg wrapper for this. - Remove this dependency from the repo - Build a custom FFMPEG class that is a sub-util specifically for LocalWhisper - This module should look for ffmpeg cli command - Should work in container - which has ffmpeg installer(Linux), but also work when running unbundled on Mac, Linux, and Windows. - FFMPEG_PATH is the default path used by the existing library - We should then use execSync or spawnSync to run the ffmpeg binary wherever it might be - convert audio to .wav that is single channel @ 16k hz - Output the file to a known destination in the collector tmp so that wavefile can load it in as a buffer. - Add tests that are disabled in github actions (process.env.GITHUB_ACTIONS) - wavefile should not perform any resampling. eg: ``` wavFile.toBitDepth("32f"); wavFile.toSampleRate(16000); ```
yindo added the enhancementfeature request labels 2026-02-22 18:32:14 -05:00
yindo closed this issue 2026-02-22 18:32:14 -05:00
yindo changed title from [FEAT]: Refactor collector to remove fluent-ffmpeg package to [GH-ISSUE #4774] [FEAT]: Refactor collector to remove fluent-ffmpeg package 2026-06-05 14:49:48 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Mintplex-Labs/anything-llm#3007