---
title: "Receiving a Live Stream With Amazon IVS in React Native"
description: "Discover how to integrate Amazon IVS (Interactive Video Service) into your app, powered by AWS. Learn to set up a streaming player with minimal code."
url: https://www.callstack.com/blog/receiving-live-stream-with-amazon-ivs-in-react-native
updated: 2026-10-24T08:39:36.473Z
---

# Receiving a Live Stream With Amazon IVS in React Native

Discover how to integrate Amazon IVS (Interactive Video Service) into your app, powered by AWS. Learn to set up a streaming player with minimal code.

_By Szymon Rybczak, Software Developer @ Callstack · Published 2023-10-06 · Category: TV_

I thought this would require a bunch of custom native code, custom solutions, and basically a bunch of work. But it turns out that some time ago amazon-ivs-react-native-player package got published, and it allows us to add streaming players in just a few lines of code. In this post, I will present how to use this library.

## What is Amazon IVS?

But first things first. Let’s start by explaining what Amazon IVS is. It stands for “**Interactive Video Service**,” and it is a managed live streaming solution offered **by Amazon Web Services (AWS)**. It allows developers to quickly set up live interactive video experiences in their own applications. Amazon IVS is essentially built in the same technology that powers Twitch, one of the world's leading live streaming platforms.

## Project setup

I’ll present an example of how you can set up an app and use this library. You can check out the [repo containing the whole example app](https://github.com/szymonrybczak/react-native-amazon-ivs-example) which I’ll build.

**To create a stream you will need IVS Channel details. Check how to do it in a** [**guide on getting started with Amazon IVS**](https://docs.aws.amazon.com/ivs/latest/userguide/getting-started.html)**. There’s also a broadcast stream available e.g. with this** [**Vercel Guide**](https://vercel.com/templates/next.js/amazon-ivs-broadcast-web-demo)**.**

You may also check a [sample stream](https://fcc3ddae59ed.us-west-2.playback.live-video.net/api/video/v1/us-west-2.893648527354.channel.DmumNckWFTqz.m3u8); it’s working at the time of writing this article.

For the sake of this article, I’ll create a simple app with React Native CLI:

**1.** First, we need to run npx react-native@latest init SampleApp to create an app

**2.** Then we need to run the app on Android or iOS, we can do that simply by running run-ios or run-android commands

![screenshot with welcome to React Native](https://www.callstack.com/assets/Welcome-to-React-Native-screenshots.png)

**3.** Now we need to add some UI; for this, we’ll use [react-native-paper library](https://reactnativepaper.com/) which we maintain at Callstack. I created a simple DashboardScreen with one TextInput for passing URL and Button which will navigate to StreamScreen, which I will create next.

![screenshot of DashboardScreen](https://www.callstack.com/assets/67eaca7a1dcd860a8878a76f_67cf5b3b636b9b20cc5f8ea9_67cdb24d2c226ba921959869_65201ecdfe50bb475a248fc9_Dashboard-screen.png)

__DashboardScreen__

**4.** In this step we need to implement navigation and add second screen StreamScreen, for navigation I used react-navigation library. StreamScreen will contain a stream player. You can check changes for this step in this PR: [Pull Request #1](https://github.com/szymonrybczak/react-native-amazon-ivs-example/pull/1).​

[GitHub Gist](https://gist.github.com/HannaEsCS/cde106fc685c34729c01a0d71a65e7b3)

**5.** Then if we want to run app on iOS we need to install Pods, we can do it with:

[GitHub Gist](https://gist.github.com/HannaEsCS/a818cf6838be1b0b0c839ac7657ab1ca)

**6.** And finally to use this library we need to imports IVSPlayer, and pass the url to stream as streamUrl prop

[GitHub Gist](https://gist.github.com/HannaEsCS/e8ca9f8e06c7711534d95d2e82c344cd)

Now finally we can test it, so here I’m passing a URL to the stream and IVSPlayer component correctly displays stream

![](https://www.callstack.com/assets/ezgif.com-video-to-gif-(1).gif)

Thanks to the amazon-ivs-react-native-player package, you can set up a streaming player with just a few steps without any custom native code. You can also play with the [example app](https://github.com/aws/amazon-ivs-react-native-player/tree/main/example) that is inside the repository - it contains more complex usage and all props that you can use 🎉 Give it a try!
