gemercheung 2 tahun lalu
induk
melakukan
258bc37027

+ 1 - 1
packages/core/package.json

@@ -1,6 +1,6 @@
 {
   "name": "@simaq/core",
-  "version": "1.1.4",
+  "version": "1.1.5",
   "main": "dist/index",
   "types": "dist/index",
   "files": [

+ 13 - 0
packages/core/src/lib/basicSimaqRecorder.ts

@@ -29,6 +29,7 @@ export interface InitConfigType extends MediaStreamConstraints {
     config?: PlatformConfigType;
     debug?: boolean;
     disbaledAudio?: boolean;
+    systemAudio?: boolean
 }
 export enum RecorderStatusType {
     init = 0,
@@ -66,6 +67,7 @@ export class BasicSimaqRecorder extends EventEmitter {
     private platformConfig: PlatformConfigType;
     private chromeMediaSourceId: string | null;
     private disbaledAudio = false;
+    private systemAudio = false;
     private debug = false;
     constructor(arg: InitConfigType) {
         super();
@@ -76,6 +78,8 @@ export class BasicSimaqRecorder extends EventEmitter {
         this.uploadUrl = arg.uploadUrl;
         this.disbaledAudio = arg.disbaledAudio;
         this.debug = arg.debug;
+        this.systemAudio = arg.systemAudio;
+        this.setSystemAudio();
         this.initParams(arg);
         videoConstraints.subscribe((value) => {
             this.debug && console.log('subscribe', value);
@@ -116,6 +120,15 @@ export class BasicSimaqRecorder extends EventEmitter {
                 break;
         }
     }
+    private setSystemAudio() {
+        if (this.systemAudio) {
+            this.displayMediaStreamConstraints.systemAudio = 'include'
+            this.displayMediaStreamConstraints.audio = true;
+        } else {
+            this.displayMediaStreamConstraints.systemAudio = 'exclude'
+            this.displayMediaStreamConstraints.audio = false;
+        }
+    }
 
     public async startRecord(): Promise<void> {
         try {

+ 2 - 1
play/src/App.vue

@@ -21,7 +21,8 @@ const videoRecorder = new VideoRecorder({
     // config: {
     //     canvasId: '.goldplay__screen--canvas',
     // },
-    debug: false,
+    systemAudio: false,
+    debug: true,
 });
 console.log('videoRecorder', videoRecorder);
 sound.on('end', () => {