Asynchronous Video Compression and Upload in React Native

My learnings on asynchronously compressing and uploading videos in react native

Configuring React Native

yarn add redux react-redux redux-thunk react-native-video react-native-image-picker react-native-video-processing @react-native-firebase/app @react-native-firebase/storage @react-native-async-storage/async-storage

Setting up the packages


<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO"/><uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Selecting, Compressing and Uploading

Selecting the video

Compressing and Uploading the video

Displaying to the User



Founder of, merging AI and dance, as well as, Feedback on demand,

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store