Skip to main content
Version: v7 Alpha

Intro

One of the most popular video playback libraries for React Native applications.

react-native-video provides a comprehensive solution for video playback in React Native, built on top of react-native-nitro-modules framework. Whether you're building a video streaming app, media player, or educational platform, react-native-video gives you the tools you need to create exceptional video experiences.

Why Choose react-native-video?

Native Performance

react-native-video is built with native video players (AVPlayer on iOS, ExoPlayer on Android) to ensure hardware-accelerated playback for smooth performance. The library includes optimized memory management and resource handling to provide the best possible user experience.

Rich Feature Set

The library offers advanced playback controls including play, pause, seek, volume control, and playback rate adjustment. It supports multiple source types including HTTP/HTTPS streams, local files, HLS, and DASH. react-native-video includes subtitle support for both built-in and external subtitle files (WebVTT, SRT), native Picture-in-Picture support on both platforms, background audio playback and native fullscreen implementation.

Developer Experience

react-native-video is TypeScript-first with full TypeScript support and comprehensive type definitions. It provides intuitive React hooks for easy integration. The library is compatible with React Native's New Architecture and works seamlessly with Expo managed and bare workflows.

Quick Start

Get started in minutes with a simple video player:

npm install react-native-video@next react-native-nitro-modules
import { VideoView, useVideoPlayer } from 'react-native-video';

export default function App() {
const player = useVideoPlayer({
uri: 'https://www.w3schools.com/html/mov_bbb.mp4',
});

return <VideoView player={player} />;
}

What's Next?

React Native Video

We are TheWidlarzGroupPremium support →