Skip to content

Releases: livekit/client-sdk-react-native

Release 1.1.2

12 Jun 14:14

Choose a tag to compare

1.1.2 (2023-06-12)

Features

  • add LiveKitReactNative setup methods (#75) (f0a7404)

This release adds simple setup methods to take care of the native code setup required as of v1.1.0.

Android

In your MainApplication.java file:

import com.livekit.reactnative.LiveKitReactNative;

public class MainApplication extends Application implements ReactApplication {

  @Override
  public void onCreate() {
    // Place this above any other RN related initialization
    LiveKitReactNative.setup();

    //...
  }
}

iOS

In your AppDelegate.m file:

#import "LivekitReactNative.h"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  // Place this above any other RN related initialization
  [LivekitReactNative setup];

  //...
}

Release 1.1.1

04 Jun 15:42

Choose a tag to compare

1.1.1 (2023-06-04)

Bug Fixes

Release 1.1.0

03 Jun 17:28

Choose a tag to compare

1.1.0 (2023-06-03)

Features

  • switch to @livekit/react-native-webrtc (#70) (26b4ce4)

Breaking Changes

This release switches to @livekit/react-native-webrtc, a forked version of WebRTC which is better equipped to handle simulcast. Replace react-native-webrtc in your package.json with "@livekit/react-native-webrtc": "^104.0.0".

As a part of the switch, you'll need to add code to your MainApplication.java (Android) and AppDelegate.m (iOS) files to support simulcast. New setup methods were introduced in v1.1.2 that simplify this process. Please upgrade the package and see the instructions there.

Android

In your MainApplication.java file:

import com.livekit.reactnative.video.SimulcastVideoEncoderFactoryWrapper;
import com.oney.WebRTCModule.WebRTCModuleOptions;
import com.oney.WebRTCModule.webrtcutils.H264AndSoftwareVideoDecoderFactory;

import org.webrtc.*;

public class MainApplication extends Application implements ReactApplication {

  @Override
  public void onCreate() {
    // Place this above any other RN related initialization
    WebRTCModuleOptions options = WebRTCModuleOptions.getInstance();
    options.videoEncoderFactory = new SimulcastVideoEncoderFactoryWrapper(null, true, true);
    options.videoDecoderFactory = new H264AndSoftwareVideoDecoderFactory(null);
    // ...
  }
}

iOS

In your AppDelegate.m file:

#import "WebRTCModule.h"
#import "WebRTCModuleOptions.h"

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  // Place this above any other RN related initialization
  RTCDefaultVideoEncoderFactory *videoEncoderFactory = [[RTCDefaultVideoEncoderFactory alloc] init];
  RTCVideoEncoderFactorySimulcast *simulcastVideoEncoderFactory = 
          [[RTCVideoEncoderFactorySimulcast alloc] initWithPrimary:videoEncoderFactory fallback:videoEncoderFactory];
  WebRTCModuleOptions *options = [WebRTCModuleOptions sharedInstance];
  options.videoEncoderFactory = simulcastVideoEncoderFactory;
  //...
}

Release 1.0.1

03 May 17:10

Choose a tag to compare

1.0.1 (2023-05-03)

Bug Fixes

  • add Array.prototype.at polyfill to fix error during sdp munge (#65) (acf96ff)

Release 1.0.0

18 Apr 14:36

Choose a tag to compare

1.0.0 (2023-04-18)

Bug Fixes

  • fix adaptive streaming not working with "screen" pixel density (#58) (369c69e)
  • update VideoViewElementInfo to conform to ElementInfo interface (#52) (be599d8)

Features

  • add in globals for livekit-client to get platform info (#53) (0512109)
  • support for simulcast publishing

Release 0.3.0

14 Jan 06:13

Choose a tag to compare

0.3.0 (2023-01-14)

  • Now published on NPM!
    • Due to a naming conflict, the package name has been changed to @livekit/react-native.