A React Native implementation of Brightcove Player SDK.
- iOS 10 >=
- Android 5.0 >=
yarn add react-native-brightcove-player
react-native link react-native-brightcove-player
- Add
resolver
entry intometro.config.js
orrn-cli.config.js
- See example app for more details
- note: It is workaround, so you should remove when it's no longer needed
const blacklist = require('metro-config/src/defaults/blacklist');
module.exports = {
resolver: {
blacklistRE: blacklist([/node_modules\/.*\/node_modules\/react-native\/.*/])
}
};
- Make
Podfile
like below andpod install
source 'https://github.com/brightcove/BrightcoveSpecs.git'
platform :ios, '10.0'
use_frameworks!
target 'example' do
pod 'Brightcove-Player-Core'
end
- Add following lines in
android/app/build.gradle
allprojects {
repositories {
maven {
url 'http://repo.brightcove.com/releases'
}
}
}
import { BrightcovePlayer } from 'react-native-brightcove-player';
export default class App extends Component {
render() {
return (
<View style={styles.container}>
<BrightcovePlayer
style={styles.player}
accountId="3636334163001"
videoId="3666678807001"
policyKey="BCpkADawqM1W-vUOMe6RSA3pA6Vw-VWUNn5rL0lzQabvrI63-VjS93gVUugDlmBpHIxP16X8TSe5LSKM415UHeMBmxl7pqcwVY_AZ4yKFwIpZPvXE34TpXEYYcmulxJQAOvHbv2dpfq-S_cm"
/>
</View>
);
}
}
- Specifying
accountId
,policyKey
, andvideoId
orreferenceId
will load the video. - It may not work on Android simulator, in that case please run on device.
- For a more detailed example, please see example/App.js.
Prop | Type | Description | Event Object |
---|---|---|---|
accountId | string | Brightcove AccountId. Required | |
policyKey | string | Brightcove PolicyKey. Required | |
videoId | string | Brightcove VideoId. *Either videoId or referenceId is required |
|
referenceId | string | Brightcove ReferenceId. *Either videoId or referenceId is required |
|
autoPlay | boolean | Set true to play automatically |
|
play | boolean | Control playback and pause | |
fullscreen | boolean | Control full screen state | |
volume | number | Set audio volume (0.0 ~ 1.0 ) |
|
bitRate | number | Set maximum buffering bitrate. Set 0 to automatic quality |
|
playbackRate | number | Set playback speed scale. Default is 1 |
|
disableDefaultControl | boolean | Disable default player control. Set true when you implement own video controller. |
|
onReady | Function | Indicates the video can be played back | |
onPlay | Function | Indicates the video playback starts | |
onPause | Function | Indicates the video is paused | |
onEnd | Function | Indicates the video is played to the end | |
onProgress | Function | Indicates the playback head of the video advances. | { currentTime: number } |
onChangeDuration | Function | Indicates the video length is changed | { duration: number } |
onUpdateBufferProgress | Function | Indicates the video loading buffer is updated | { bufferProgress: number } |
onEnterFullscreen | Function | Indicates the player enters full screen | |
onExitFullscreen | Function | Indicates the player exit full screen |
Method | Description |
---|---|
seekTo(timeInSeconds: number) => void | Change playhead to arbitrary time |
MIT