China Delivery with the Native SDKs

In this topic, you will learn how to use the Brightcove Native SDKs to deliver video to China from outside the country.

Introduction

Brightcove provides a solution for delivering video to China from outside the country. The solution is comprised of two parts:

  • A proxy server hosted within China
  • A connected China-specific CDN

The proxy routes non-video traffic (Playback API requests, Analytics beacons, and the web player itself) to and from viewers in China to Brightcove infrastructure located outside.

The CDN is connected to the proxy and handles the video and image content.

Requirements

The following requirements are needed for China Delivery with the Brightcove Native SDKs:

Setup

Device OS version

  • iOS 11.0 and newer

Brightcove SDK version

  • Native SDK for Android (coming soon)
  • Native SDK for iOS 6.5.0 and newer

Android Implementation

The Native SDK for Android will support China Delivery at a later date.

iOS Implementation

The BCOVGlobalConfiguration class allows you to set custom configurations for the Native SDK for iOS.

Within this class, set the chinaProxyDomain property to a custom, fully qualified domain name (FQDN) for the Playback API, metrics and analytics collection services.

@property (nonatomic, nullable) NSString *chinaProxyDomain

To use China Delivery, follow these steps

Swift

  1. Review the VideoCloudBasicPlayer sample.

  2. In the ViewController.swift file, before you create the sharedSDKManager, add a variable for chinaProxyDomain as follows:

    class ViewController: UIViewController {
        
      let setChinaProxyDomain: () = BCOVGlobalConfiguration.sharedConfig().chinaProxyDomain = "your host domain"
      let sharedSDKManager = BCOVPlayerSDKManager.shared()

Objective-C

  1. Review the VideoCloudBasicPlayer sample.

  2. In the ViewController.m file, add a variable for chinaProxyDomain as follows:

    - (instancetype)initWithCoder:(NSCoder *)coder
      {
        BCOVGlobalConfiguration.sharedConfig.chinaProxyDomain = @"your host domain";
          self = [super initWithCoder:coder];
          if (self)
          {
              [self setup];
          }
          return self;
      }

Limitations

For details about the limitations for this feature, see the Overview: China Delivery document.