fix(mobile): migrate expo-av to expo-video and expo-audio

expo-av has no SDK 56 compatible release, and its EXEventEmitter.h
interface was removed from expo-modules-core, so the iOS release
archive fails compiling Pods/EXAV. Move video playback to
expo-video's useVideoPlayer/VideoView, and audio playback and
recording to expo-audio's createAudioPlayer/AudioModule.AudioRecorder,
preserving existing controls, mute/loop/resize behavior, and the
recording audio session configuration.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
jjbruntonandClaude Fable 5 committed 2026-08-31 14:35:51 +01:00
1 parent 5e28117662
commit b8cb2addff
11 files changed
+524 -387

No files matched your search

+19 -10
View File
@@ -207,7 +207,7 @@
"expo": "^56.0.0",
"expo-apple-authentication": "~56.0.4",
"expo-asset": "~56.0.24",
"expo-av": "~16.0.8",
"expo-audio": "~56.0.13",
"expo-blur": "~56.0.4",
"expo-build-properties": "~56.0.27",
"expo-clipboard": "~56.0.4",
@@ -231,6 +231,7 @@
"expo-status-bar": "~56.0.4",
"expo-system-ui": "~56.0.5",
"expo-updates": "~56.0.26",
"expo-video": "~56.1.4",
"react": "19.2.3",
"react-dom": "19.2.3",
"react-native": "0.85.3",
@@ -13842,19 +13843,16 @@
"node": ">=10"
}
},
"node_modules/expo-av": {
"version": "16.0.8",
"node_modules/expo-audio": {
"version": "56.0.13",
"resolved": "https://registry.npmjs.org/expo-audio/-/expo-audio-56.0.13.tgz",
"integrity": "sha512-pfBmT/8OYbhrb37ECk+fC1EstLBFxMTioF4uZrAEeOj3uCgjproj1qYmkpsQLJIoEOMPSIw1iSfBEMl10v1DDA==",
"license": "MIT",
"peerDependencies": {
"expo": "*",
"expo-asset": "*",
"react": "*",
"react-native": "*",
"react-native-web": "*"
},
"peerDependenciesMeta": {
"react-native-web": {
"optional": true
}
"react-native": "*"
}
},
"node_modules/expo-blur": {
@@ -14832,6 +14830,17 @@
"node": ">=8.0"
}
},
"node_modules/expo-video": {
"version": "56.1.4",
"resolved": "https://registry.npmjs.org/expo-video/-/expo-video-56.1.4.tgz",
"integrity": "sha512-8mXZOnb7ZsWneDlcnRf0M2Ox9eb5dGnNiGiCkj9bwLPY+3jM2Pc1t5ymNUuhw8lSpT/rOnE0J0/81Y3+0k2Zcw==",
"license": "MIT",
"peerDependencies": {
"expo": "*",
"react": "*",
"react-native": "*"
}
},
"node_modules/expo/node_modules/@expo/cli": {
"version": "56.1.25",
"license": "MIT",