Skip to content

Releases: livekit/client-sdk-react-native

Release 2.0.2

15 Apr 04:36
Compare
Choose a tag to compare

2.0.2 (2024-04-15)

Bug Fixes

  • force software codecs for VP9 on android (#131) (cd6bc95)
  • performance fixes for ViewPortDetector causing slowdowns (#132) (1889c5f)

Features

Release 2.0.1

05 Mar 02:16
Compare
Choose a tag to compare

2.0.1 (2024-03-05)

Breaking Changes

There are several breaking changes between v1 and v2. Please consult our migration guide when upgrading to v2.

Bug Fixes

  • fix useIOSAudioManagement calculation for track counts (#128) (6d0082f)

Features

Release 1.4.3

08 Jan 13:20
Compare
Choose a tag to compare

1.4.3 (2024-01-08)

Bug Fixes

  • fix ios RCTBridgeModule type not found error (#123) (cb0cc02)

Release 1.4.1

06 Dec 00:35
Compare
Choose a tag to compare

1.4.1 (2023-12-06)

Bug Fixes

  • also update react-native-webrtc peerDependency (c82f975)

Release 1.4.0

27 Nov 04:24
Compare
Choose a tag to compare

1.4.0 (2023-11-27)

Features

Release 1.3.0

08 Sep 18:22
Compare
Choose a tag to compare

1.3.0 (2023-09-08)

Bug Fixes

  • add text encoding polyfill (#93) (8fd60da)
  • fix earpiece not showing after disconnecting wired headset (#91) (626d169)
  • shim symbol api (#95) (f6bc0a0)

Features

  • android audio handling for non-communication audio modes (#97) (32cf80b)

Release 1.2.0

01 Aug 06:14
Compare
Choose a tag to compare

1.2.0 (2023-08-01)

Bug Fixes

  • android: upgrade webrtc sdk version (#77) (fdb2c6f)

Features

  • expose android audio and focus modes (#84) (f34d817)

Release 1.1.2

12 Jun 14:14
Compare
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
Compare
Choose a tag to compare

1.1.1 (2023-06-04)

Bug Fixes

Release 1.1.0

03 Jun 17:28
Compare
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;
  //...
}