trtc-electron-sdk
Version:
trtc electron sdk
135 lines (111 loc) • 3.93 kB
Markdown
# TRTC SDK for Electron
Tencent Real-Time Communication (TRTC) is a set of low-latency, high-quality real-time communication services provided by Tencent Cloud, which is committed to providing stable, reliable and low-cost audio and video transmission capabilities for Tencent Cloud customers.
## ✨ Features
- 📺 [Video call](https://www.tencentcloud.com/document/product/647/35428)
- 🎵 [Audio call](https://www.tencentcloud.com/document/product/647/35428)
- 🚿 [Interactive video streaming](https://www.tencentcloud.com/document/product/647/35428)
- 💧 [Interactive audio streaming](https://www.tencentcloud.com/document/product/647/35428)
- 📼 [On-Cloud Recording](https://www.tencentcloud.com/document/product/647/45169)
- 📼 [On-Cloud MixTranscoding](https://www.tencentcloud.com/document/product/647/47858#)
- ⬆️ [Publishing to CSS CDN](https://www.tencentcloud.com/document/product/647/47858#)
## 💻 Environment Support
- 🍎 Support macOS x64 and arm64(**Electron 11+**)
- ⚙️ Support Windows ia32 and x64
- 🌈 Electron: 8.5.0 ~ 24.8.8
| macOS | Windows | Electron |
| :----------: | :---------: | :------------: |
| x64 \| arm64 | ia32 \| x64 | 8.5.0 ~ 24.8.8 |
## ⏬ Install
By default, it will install the SDK compatible with your device Operation System platform and node.js CPU architecture. If you want to install SDK for specific Operating System or CPU architecture. You can configure the `platform` and `arch` you want in `package.json` or `.npmrc` file as following code. If you configure both, the configuration in `package.json` will work and override that in `.npmrc`.
```js
// package.json
{
...
"trtc_electron" : {
"platform" : "win32",
"arch" : "ia32"
}
...
}
// .npmrc
trtc_electron_platform=win32
trtc_electron_arch=ia32 // only support windows
```
Properties detail:
- platform: darwin or win32
- arch: if not set, it will be `process.arch` of your installation node.js. **Only windows Supported.**
```bash
npm install trtc-electron-sdk
```
## ⚠️ Notice
You can build Electron application for Windows and macOS on macOS.
On Windows you can only build Electron application for Windows.Can't build Electron application for macOS, for detail:https://www.electron.build/multi-platform-build.
## 👋 Usage
```js
import TRTCCloud from 'trtc-electron-sdk';
const rtcCloud = TRTCCloud.getTRTCShareInstance();
// Obtain the SDK version
const version = rtcCloud.getSDKVersion();
```
## 📦 Build
Taking webpack and electron-builder as example.
```js
// webpack config
module.exports = {
...
module: {
rules: [
{
test: /\.node$/,
loader: "native-ext-loader",
options: {
emit: true,
rewritePath:
process.env.NODE_ENV === "production"
? process.platform === "win32"
? ".\\"
: "../"
: "node_modules/trtc-electron-sdk/build/Release",
},
},
...
],
},
...
}
// electron-builder config
{
...
"build": {
"win": {
"extraFiles": [
{
"from": "node_modules/trtc-electron-sdk/build/Release/",
"to": "./"
},
...
]
},
"mac": {
"extraFiles": [
{
"from": "node_modules/trtc-electron-sdk/build/Release/${arch}/trtc_electron_sdk.node",
"to": "./"
},
{
"from": "node_modules/trtc-electron-sdk/build/mac-framework/${arch}/",
"to": "./Frameworks"
},
...
]
}
}
...
}
```
## 🔗 Links
- [Official Site](https://trtc.io/products/rtc)
- [API Document](https://web.sdk.qcloud.com/trtc/electron/doc/en-us/trtc_electron_sdk/index.html
)
- [Online Demo](https://trtc.io/demo)
- [Github demo]( https://github.com/Tencent-RTC/TRTC_Electron)