Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/skyway/skyway-recorder-sdk
Recorder SDK for SkyWay Enterprise Edition
https://github.com/skyway/skyway-recorder-sdk
Last synced: about 1 month ago
JSON representation
Recorder SDK for SkyWay Enterprise Edition
- Host: GitHub
- URL: https://github.com/skyway/skyway-recorder-sdk
- Owner: skyway
- License: mit
- Created: 2019-09-09T06:06:11.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-31T03:40:00.000Z (almost 2 years ago)
- Last Synced: 2024-10-31T17:17:57.729Z (about 2 months ago)
- Language: JavaScript
- Homepage: https://webrtc.ecl.ntt.com/recording.html
- Size: 404 KB
- Stars: 5
- Watchers: 12
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# SkyWay Recorder
**This is the old SkyWay repository. Please consider migrating to the [new SkyWay]().**
**これは旧SkyWayのリポジトリです。[新しいSkyWay]()への移行をご検討ください。**
---
`skyway-recorder` provides audio recording API.
The recorded files will be uploaded to Google Cloud Storage(GCS).## Prerequisite
You need to enable recording feature on SkyWay Dashboard.
- Signup or login to your account.
- Create or edit your application associated with your account.
- Check `Enable recording feature` in the permission section.
- Register a GCS bucket where the recording files will be uploaded.:warning: If uploading failed even once, SkyWay recording server disable the recording feature.
You can check the current status of the recording feature on SkyWay Dashboard.## Install
```sh
npm i skyway-recorder
```CDN is also available.
```html
```
You do NOT need to install SkyWay JS-SDK alongside.
## Example
```js
import { createRecorder } from "skyway-recorder";(async () => {
const apiKey = "5bea388b-3f95-4e1e-acb5-a34efdd0c480";
const recorder = createRecorder(apiKey);// if use authentication
// const recorder = createRecorder(apiKey, { auth: { timestamp, credential } });
// if use custom ICE configuration
// const recorder = createRecorder(apiKey, { iceServers: [], iceTransportPolicy: "relay" });const track = await navigator.mediaDevices
.getUserMedia({ audio: true })
.then(s => s.getAudioTracks()[0]);const res = await recorder.start(track);
console.log(`Your recording id: ${res.id} is now recording...`);// ...
await recorder.stop();
console.log("recording has stopped!");
console.log("uploading will be started soon...");
})();
```The `id` returned by `recorder.start()` is your recording id.
You can get recorded audio file via `${API_KEY}/${RECORDING_ID}/audio.ogg` and `meta.json` in your GCS bucket.## API
See [API.md](./API.md) for more details.