Skip to content

chore: remove ffmpeg dependencies from normal build - #1336

Merged
mdydek merged 6 commits into
mainfrom
chore/remove-ffmpeg-by-default
Oct 12, 2026
Merged

mdydek merged 6 commits into
mainfrom
chore/remove-ffmpeg-by-default

Conversation

@mdydek

@mdydek mdydek commented Oct 7, 2026

Copy link
Copy Markdown
Member

Closes #

⚠️ Breaking changes ⚠️

  • FFmpeg is disabled by default, which means that HLS support and byte-ranges request are not supported in normal build, they need special FFmpeg enabling

Introduced changes

  • rename entries in setting up ffmpeg. Right now it needs to be enabled explicitly rather than disabled explicitly
  • after the PR is approved, ffmpeg headers will also be removed and they will be downloaded for demand

Checklist

  • Linked relevant issue
  • Updated relevant documentation
  • Added/Conducted relevant tests
  • Performed self-review of the code
  • Updated Web Audio API coverage
  • Added support for web
  • Updated old arch android spec file

@mdydek mdydek added the chore Routine maintenance, tooling updates, or task work with no src changes label Oct 7, 2026
@github-actions

github-actions Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

WPT non-regression comparison

PASS — no regressions · 0 improved section(s) · overall 3427 → 3427 (0)

Unchanged sections (28)
Spec section Base pass Head pass Delta
Processing model 1 1 0
Other 56 56 0
AnalyserNode 138 138 0
AudioBuffer 140 140 0
AudioBufferSourceNode 220 220 0
AudioContext 58 58 0
AudioNode 261 261 0
AudioParam 680 680 0
BiquadFilterNode 275 275 0
ChannelMergerNode 30 30 0
ChannelSplitterNode 7 7 0
ConstantSourceNode 64 64 0
ConvolverNode 178 178 0
DelayNode 127 127 0
DestinationNode 0 0 0
DynamicsCompressorNode 4 4 0
GainNode 15 15 0
IIRFilterNode 87 87 0
MediaElementAudioSourceNode 0 0 0
MediaStreamAudioDestinationNode 1 1 0
MediaStreamAudioSourceNode 0 0 0
OfflineAudioContext 35 35 0
OscillatorNode 104 104 0
PannerNode 727 727 0
PeriodicWave 33 33 0
ScriptProcessorNode 0 0 0
StereoPannerNode 104 104 0
WaveShaperNode 82 82 0

Baseline: 8588c315e7d87d76780e4189f6cc5d4acd0ea582 · Candidate: ae8a1bb30663e6809cb4f7db145a729b1df28973

Workflow run · this comment is updated on every push.

@closetcaiman closetcaiman added the build Changes affecting the build system, compilers, or external dependencies label Oct 7, 2026
Comment thread packages/audiodocs/docs/other/audio-api-plugin.mdx Outdated
Comment thread packages/audiodocs/docs/other/prebuilt-libraries-support.mdx
Comment on lines +50 to +53

:::warning Migrating from 0.x
Before 1.0.0 FFmpeg was linked by default and turned off with `disableFFmpeg` (Expo), `ENV['DISABLE_AUDIOAPI_FFMPEG'] = '1'` (iOS) or `disableAudioapiFFmpeg=true` (Android). Those flags are now ignored and only print a warning during `pod install` / Gradle configuration / `expo prebuild`. Apps that stream remote audio must opt in with the flags above; apps that already disabled FFmpeg need no change beyond removing the stale flag.
:::

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that ad-hoc callouts are fine, but It would be awesome to have a migration guide section in the docs with all breaking changes. I don't know if it should be in this PR, but I'd create a section soon so that all upcoming PRs can just update the guide if they make a breaking change.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yup, thought of that and it will be made

Comment thread packages/audiodocs/docs/other/runtime-flags.mdx Outdated
Comment thread packages/react-native-audio-api/src/plugin/withAudioAPI.ts Outdated
Comment thread packages/react-native-audio-api/wpt_tests/CMakeLists.txt
@mdydek
mdydek requested a review from closetcaiman October 8, 2026 07:17
Comment thread packages/react-native-audio-api/android/build.gradle Outdated
Comment thread packages/react-native-audio-api/src/Audio/Audio.tsx
Comment thread packages/react-native-audio-api/src/plugin/withAudioAPI.ts Outdated
Comment thread packages/react-native-audio-api/android/build.gradle Outdated
Comment thread packages/react-native-audio-api/src/Audio/Audio.tsx
@mdydek
mdydek merged commit 604a55c into main Oct 12, 2026
14 checks passed
@mdydek
mdydek deleted the chore/remove-ffmpeg-by-default branch October 12, 2026 11:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build Changes affecting the build system, compilers, or external dependencies chore Routine maintenance, tooling updates, or task work with no src changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants