HomePhabricator
Diffusion Comm 29f83b1cb4ed

[native] Replace react-native-ffmpeg with ffmpeg-kit-react-native

Description

[native] Replace react-native-ffmpeg with ffmpeg-kit-react-native

Summary:
This diff replaces our use of react-native-ffmpeg, which is now deprecated in favor of ffmpeg-kit-react-native.

It should also address the repeated failures we've seen due to the com.arthenica:mobile-ffmpeg-min-gpl:4.3.1.LTS artifact randomly going missing on occasion: ENG-4177, ENG-8959, and ENG-8989.

Test Plan:

  • Confirmed I could build and bundle the app on iOS and Android
  • On release builds of both iOS and Android, tested the four usages of ffmpeg in our codebase, all called from native/media/ffmpeg.js:
    • getVideoInfo
    • transcodeVideo
    • generateThumbnail
    • hasMultipleFrames, which actually isn't in active use in our codebase. To test it I had to use this patch to make it so we transcode GIFs if they have multiple frames. It correctly ascertained whether the GIFs had multiple frames on both iOS and Android, but transcoding failed afterwards, so I left this functionality disabled.

Working on testing the actual functionality, but I want to see if CI passes first

Reviewers: will

Reviewed By: will

Subscribers: tomek

Differential Revision: https://phab.comm.dev/D13021

Details

Provenance
ashoatAuthored on Aug 7 2024, 2:46 PM
Reviewer
will
Differential Revision
D13021: [native] Replace react-native-ffmpeg with ffmpeg-kit-react-native
Parents
rCOMMf4d3dc55b8ee: [lib] Refactor decodeRolePermissionBitmask to useā€¦
Branches
Unknown
Tags
Unknown